Hi Daniele, Yes you're right in this case, we can see for the superclass of DefaultInstant (Abstract class DefaultTemporalGeometricPrimitive) there is no properties, I agree with you the super.equals(object) must be removed to avoid the Object.equals(object) call. But in other cases when the superclass contains several properties we must check all properties (superclass properties + subclass properties). The super.equals() is used to factorise the code.
Regards, Mehdi Sidhoum. Daniele Romagnoli a écrit : > Hi Mehdi, > I have just noticed your committs. > I have a doubt: I guess the equals method should also return true when > different instances of a DefaultInstant class have the same identical > position. > Using the super.equals(object) will call a Object.equals(object) > checking the reference is the same (which isn't, being different > instances). Then the position check is again skipped returning false > immediatly. > > What do you think about this? > > Cheers, > Daniele > > > On Tue, Aug 26, 2008 at 5:39 PM, Mehdi Sidhoum > <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote: > > Yes Daniele you can commit your fix but I suggest you the logical > test > "if (object instanceof DefaultInstant && super.equals(object))" > instead > the only one "super.equals(object)" check, sorry it was a mistake for > the equal method in many subclasses. > > Thanks > > Regards. > > Mehdi Sidhoum > > > > Daniele Romagnoli a écrit : > > Hi list, > > I'm leveraging on the Temporal implementations available on the > > temporal unsupported module. > > Today I'm comparing some DefaultInstant calling the equals method. > > I have noticed that in case of different instances of DefaultInstant > > having anyway the same identical position, the check returns false. > > Looking at the code of the DefaultInstant, I have noticed this: > > > > public boolean equals(final Object object) { > > if (object == this) { > > return true; > > } > > if (super.equals(object)) { > > final DefaultInstant that = (DefaultInstant) object; > > > > return Utilities.equals(this.position, that.position) && > > Utilities.equals(this.begunBy, that.begunBy) && > > Utilities.equals(this.endBy, that.endBy); > > } > > return false; > > } > > > > The super.equals(object) call checks again if (object == this) which > > returns false (being 2 different instances) preventing by this > way the > > positions check. > > I guess the "super.equals(object)" check should be avoided in > favor of > > an "if (object instanceof DefaultInstant)" check. > > > > If Mehdi give me the ok I will committ the fix. > > > > Cheers, > > Daniele > > > > > > > > > > > > > > -- > > ------------------------------------------------------- > > Eng. Daniele Romagnoli > > Software Engineer > > > > GeoSolutions S.A.S. > > Via Carignoni 51 > > 55041 Camaiore (LU) > > Italy > > > > phone: +39 0584983027 > > fax: +39 0584983027 > > mob: +39 328 0559267 > > > > > > http://www.geo-solutions.it > > > > ------------------------------------------------------- > > > > > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's > challenge > Build the coolest Linux based applications with Moblin SDK & win > great prizes > Grand prize is a trip for two to an Open Source event anywhere in > the world > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > <http://moblin-contest.org/redirect.php?banner_id=100&url=/> > _______________________________________________ > Geotools-devel mailing list > Geotools-devel@lists.sourceforge.net > <mailto:Geotools-devel@lists.sourceforge.net> > https://lists.sourceforge.net/lists/listinfo/geotools-devel > > > > > -- > ------------------------------------------------------- > Eng. Daniele Romagnoli > Software Engineer > > GeoSolutions S.A.S. > Via Carignoni 51 > 55041 Camaiore (LU) > Italy > > phone: +39 0584983027 > fax: +39 0584983027 > mob: +39 328 0559267 > > > http://www.geo-solutions.it > > ------------------------------------------------------- > ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Geotools-devel mailing list Geotools-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geotools-devel