Hi all

While implementing my improvements for PicLayer, I came upon 2 issues in the 
core code.
NB: while I know other languages quite well (in particular C++ and Perl), I am 
a Java newbie. That may explains things ;-)

1) First, it's documented as a immutable class : 

/**
 * Northing, Easting of the projected coordinates.
 *
 * This class is immutable.
 *
 * @author Imi
 */
public class EastNorth extends Coordinate {


But Coordinate.setLocation(x,y) allows to modify the state of EastNorth 
instances, so in my understanding, EastNorth is mutable, and therefore the doc 
is wrong.

2) In NavigatableComponent :

    /**
     * @return Returns the center point. A copy is returned, so users cannot
     *      change the center by accessing the return value. Use zoomTo instead.
     */
    public EastNorth getCenter() {
        return center;
    }

The doc is misleading. With the statement "A copy is returned", I expect to get 
a new object each time I call this method, but it's not the case.
Either the doc should be updated, or even better IMO, the code should be 
changed to that it returns a new object upon calls. That would be the occasion 
to make EastNorth cloneable, which is not the case right now.

Please let me know your opinion on this and if I should create a track ticket.

Best regards

Olivier


_______________________________________________
josm-dev mailing list
[email protected]
http://lists.openstreetmap.org/listinfo/josm-dev

Reply via email to