Handle nullable values in Dependency dependency and prerequisite are nullable, adjust equals() and hashCode() accordingly.
Signed-off-by: Stephen Kitt <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/karaf/repo Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/0f836ace Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/0f836ace Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/0f836ace Branch: refs/heads/master Commit: 0f836ace5c992a7e2d349fc828f8329731c1d86f Parents: 2aeb00b Author: Stephen Kitt <[email protected]> Authored: Fri Oct 13 16:48:03 2017 +0200 Committer: Stephen Kitt <[email protected]> Committed: Fri Oct 13 16:53:42 2017 +0200 ---------------------------------------------------------------------- .../org/apache/karaf/features/internal/model/Dependency.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/karaf/blob/0f836ace/features/core/src/main/java/org/apache/karaf/features/internal/model/Dependency.java ---------------------------------------------------------------------- diff --git a/features/core/src/main/java/org/apache/karaf/features/internal/model/Dependency.java b/features/core/src/main/java/org/apache/karaf/features/internal/model/Dependency.java index d9b9272..f004204 100644 --- a/features/core/src/main/java/org/apache/karaf/features/internal/model/Dependency.java +++ b/features/core/src/main/java/org/apache/karaf/features/internal/model/Dependency.java @@ -142,8 +142,8 @@ public class Dependency implements org.apache.karaf.features.Dependency { Dependency that = (Dependency) o; - if (prerequisite != that.prerequisite) return false; - if (dependency != that.dependency) return false; + if (prerequisite != null ? !prerequisite.equals(that.prerequisite) : that.prerequisite != null) return false; + if (dependency != null ? !dependency.equals(that.dependency) : that.dependency != null) return false; if (name != null ? !name.equals(that.name) : that.name != null) return false; return version != null ? version.equals(that.version) : that.version == null; @@ -153,8 +153,8 @@ public class Dependency implements org.apache.karaf.features.Dependency { public int hashCode() { int result = name != null ? name.hashCode() : 0; result = 31 * result + (version != null ? version.hashCode() : 0); - result = 31 * result + (prerequisite ? 1 : 0); - result = 31 * result + (dependency ? 1 : 0); + result = 31 * result + (prerequisite != null ? prerequisite.hashCode() : 0); + result = 31 * result + (dependency != null ? dependency.hashCode() : 0); return result; } }
