This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git
The following commit(s) were added to refs/heads/geoapi-4.0 by this push: new ae61bb0a20 Add missing `equals` and `hashCode` method on a legacy metadata property. ae61bb0a20 is described below commit ae61bb0a205c73c62074e158af6ad8061ab4ceb4 Author: Martin Desruisseaux <martin.desruisse...@geomatys.com> AuthorDate: Thu Jan 12 10:31:19 2023 +0100 Add missing `equals` and `hashCode` method on a legacy metadata property. --- .../internal/metadata/legacy/DateToTemporal.java | 25 +++++++++++++++++++++- .../internal/metadata/legacy/TemporalToDate.java | 25 +++++++++++++++++++++- .../sis/internal/metadata/legacy/package-info.java | 2 +- .../transform/TransformResultComparator.java | 2 +- 4 files changed, 50 insertions(+), 4 deletions(-) diff --git a/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/legacy/DateToTemporal.java b/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/legacy/DateToTemporal.java index 42ff27e462..60bc7f0b7b 100644 --- a/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/legacy/DateToTemporal.java +++ b/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/legacy/DateToTemporal.java @@ -29,7 +29,7 @@ import java.util.Iterator; * This adapter may be deleted after deprecated metadata methods have been removed from Apache SIS. * * @author Martin Desruisseaux (Geomatys) - * @version 1.3 + * @version 1.4 * @since 1.3 */ public final class DateToTemporal extends AbstractCollection<Temporal> { @@ -83,4 +83,27 @@ public final class DateToTemporal extends AbstractCollection<Temporal> { } }; } + + /** + * Returns a hash code value for this collection. + * The hash code is determined by the backing collection. + * + * @return a hash code value for this collection. + */ + @Override + public int hashCode() { + return source.hashCode() ^ 1137016072; + } + + /** + * Compares the specified object with this collection for equality. + * Two {@code DateToTemporal} collections are equal if their backing collection are equal. + * + * @param obj the other object to compare to. + * @return whether the two collections are equal. + */ + @Override + public boolean equals(final Object obj) { + return (obj instanceof DateToTemporal) && source.equals(((DateToTemporal) obj).source); + } } diff --git a/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/legacy/TemporalToDate.java b/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/legacy/TemporalToDate.java index b751609fa0..e494a85612 100644 --- a/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/legacy/TemporalToDate.java +++ b/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/legacy/TemporalToDate.java @@ -31,7 +31,7 @@ import java.util.Iterator; * This adapter may be deleted after deprecated metadata methods have been removed from Apache SIS. * * @author Martin Desruisseaux (Geomatys) - * @version 1.3 + * @version 1.4 * @since 1.3 */ public final class TemporalToDate extends AbstractCollection<Date> { @@ -90,4 +90,27 @@ public final class TemporalToDate extends AbstractCollection<Date> { } }; } + + /** + * Returns a hash code value for this collection. + * The hash code is determined by the backing collection. + * + * @return a hash code value for this collection. + */ + @Override + public int hashCode() { + return source.hashCode() ^ -553645611; + } + + /** + * Compares the specified object with this collection for equality. + * Two {@code TemporalToDate} collections are equal if their backing collection are equal. + * + * @param obj the other object to compare to. + * @return whether the two collections are equal. + */ + @Override + public boolean equals(final Object obj) { + return (obj instanceof TemporalToDate) && source.equals(((TemporalToDate) obj).source); + } } diff --git a/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/legacy/package-info.java b/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/legacy/package-info.java index c3c1001d3f..6354913532 100644 --- a/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/legacy/package-info.java +++ b/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/legacy/package-info.java @@ -26,7 +26,7 @@ * may change in incompatible ways in any future version without notice. * * @author Martin Desruisseaux (Geomatys) - * @version 1.0 + * @version 1.4 * @since 1.0 */ package org.apache.sis.internal.metadata.legacy; diff --git a/core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/transform/TransformResultComparator.java b/core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/transform/TransformResultComparator.java index f142b8f6ad..72818dfe63 100644 --- a/core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/transform/TransformResultComparator.java +++ b/core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/transform/TransformResultComparator.java @@ -17,6 +17,7 @@ package org.apache.sis.referencing.operation.transform; import java.util.Arrays; +import org.opengis.util.FactoryException; import org.opengis.geometry.DirectPosition; import org.opengis.geometry.MismatchedDimensionException; import org.opengis.referencing.operation.Matrix; @@ -26,7 +27,6 @@ import org.opengis.referencing.operation.TransformException; import org.opengis.referencing.operation.NoninvertibleTransformException; import static org.opengis.test.Assert.*; -import org.opengis.util.FactoryException; /**