From 29e2a6d17a02cf3384efca3fd8a853f9ac240cf7 Mon Sep 17 00:00:00 2001 From: Hannes Wellmann Date: Fri, 18 Oct 2024 19:15:28 +0200 Subject: [PATCH] Minor simplifications of VersionRange.hashCode()/equals() --- .../equinox/p2/metadata/VersionRange.java | 21 +++++++------------ 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/metadata/VersionRange.java b/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/metadata/VersionRange.java index 80ccbab049..599a341fb7 100644 --- a/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/metadata/VersionRange.java +++ b/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/metadata/VersionRange.java @@ -16,6 +16,7 @@ import java.io.Serializable; import java.lang.ref.SoftReference; +import java.util.Objects; import java.util.WeakHashMap; import org.eclipse.equinox.internal.p2.metadata.*; import org.eclipse.osgi.util.NLS; @@ -77,11 +78,10 @@ private static int copyEscaped(String vr, int pos, String breakChars, StringBuil */ public VersionRange(Version minVersion, boolean includeMin, Version maxVersion, boolean includeMax) { if (minVersion == null) { + minVersion = Version.emptyVersion; if (maxVersion == null) { - minVersion = Version.emptyVersion; maxVersion = Version.MAX_VERSION; - } else - minVersion = Version.emptyVersion; + } } else { if (maxVersion == null) maxVersion = Version.MAX_VERSION; @@ -419,21 +419,14 @@ public boolean isOSGiCompatible() { @Override public boolean equals(Object object) { - if (!(object instanceof VersionRange)) - return false; - VersionRange vr = (VersionRange) object; - return includeMin == vr.includeMin && includeMax == vr.includeMax && minVersion.equals(vr.getMinimum()) && maxVersion.equals(vr.getMaximum()); + return object instanceof VersionRange vr // + && includeMin == vr.includeMin && includeMax == vr.includeMax // + && minVersion.equals(vr.getMinimum()) && maxVersion.equals(vr.getMaximum()); } @Override public int hashCode() { - final int prime = 31; - int result = 1; - result = prime * result + maxVersion.hashCode(); - result = prime * result + minVersion.hashCode(); - result = prime * result + (includeMax ? 1231 : 1237); - result = prime * result + (includeMin ? 1231 : 1237); - return result; + return Objects.hash(maxVersion, minVersion, includeMax, includeMin); } @Override