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;
     }
 }

Reply via email to