Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [platform-vcm-dev] Re: Move Delete Hooks problem

I agree that the naming of a package (hierarchical or otherwise) has
no semantic meaning for Java, but I don't see how that is relevant
here.

The point is that when you rename/move a node in a naming hierarchy,
it is very strange/unexpected for that to not result in a rename/move
of all of the children of that node as well.  For example, suppose
that a company named "rational" were acquired by a company named "ibm"
(just a random example :-).  If I move com.rational to
com.ibm.rational, I expect all of the packages under com.rational to
go along with it, and don't want to be forced to go and rename every
subpackage one by one.

And if I did want to just move the classes in com.rational (and not
the package itself) then I would have asked for that (i.e. move the
classes, and not the package itself).

A supporting argument for this interpretation is that it eliminates
all the current special cases identified in the response to bug
id=22458, e.g. keeping the package around if it currently has
child packages, but deleting it otherwise.

Cheers,
Geoff

-----Original Message-----
From: Boris Pruessmann
[mailto:boris+mailinglists.platform-vcm-dev@xxxxxxxxxxxxxx]
Sent: Tuesday, March 18, 2003 1:31 PM
To: platform-vcm-dev@xxxxxxxxxxx
Subject: RE: [platform-vcm-dev] Re: Move Delete Hooks problem


On Tue, 18 Mar 2003, Clemm, Geoff wrote:

> I looked at bud id=22458, and the thread seems to
> assume that renaming package "x" to be "xnew" should
> not also rename "x.y" to be "xnew.y" and "x.y.z" to
> be "xnew.y.z", but instead should just leave "x" in
> place and move the classes defined in "x" to the
> new package.
> 
> I'm interested in what is the basis for this opinion?

I would think the Java Language Specification, saying e.g. "The hierarchical

naming structure for packages is intended to be convenient for organizing 
related packages in a conventional manner, but has no significance in 
itself..."

This means that although the packages "x.y" and "x.y.z" share some part 
of their names ("x.y"), there is no direct relation between them (other 
than convention). So the packages are independent of each other and as 
such, renaming should work independetly on those packages.


Back to the top