Repository: reef
Updated Branches:
  refs/heads/master 6983326aa -> 7f00d994e


[REEF-1047] ConstructorDefImpl.hashCode function should consider `className`

This issue fixes the `hashCode` function of `ConstructorDefImpl` class
to consider `className` and `args` together.

JIRA:
  [REEF-1047](https://issues.apache.org/jira/browse/REEF-1047)

Pull Request:
  This closes #712


Project: http://git-wip-us.apache.org/repos/asf/reef/repo
Commit: http://git-wip-us.apache.org/repos/asf/reef/commit/7f00d994
Tree: http://git-wip-us.apache.org/repos/asf/reef/tree/7f00d994
Diff: http://git-wip-us.apache.org/repos/asf/reef/diff/7f00d994

Branch: refs/heads/master
Commit: 7f00d994e6952bfaeef2264203718985d241ee88
Parents: 6983326
Author: Dongjoon Hyun <[email protected]>
Authored: Tue Dec 8 00:58:44 2015 +0900
Committer: Andrew Chung <[email protected]>
Committed: Mon Dec 7 08:50:32 2015 -0800

----------------------------------------------------------------------
 .../reef/tang/implementation/types/ConstructorDefImpl.java       | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/reef/blob/7f00d994/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/implementation/types/ConstructorDefImpl.java
----------------------------------------------------------------------
diff --git 
a/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/implementation/types/ConstructorDefImpl.java
 
b/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/implementation/types/ConstructorDefImpl.java
index 115c51d..c774947 100644
--- 
a/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/implementation/types/ConstructorDefImpl.java
+++ 
b/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/implementation/types/ConstructorDefImpl.java
@@ -161,6 +161,8 @@ public class ConstructorDefImpl<T> implements 
ConstructorDef<T> {
   public int hashCode() {
     final ConstructorArg[] argsSort = getArgs().clone();
     Arrays.sort(argsSort);
-    return Arrays.hashCode(argsSort);
+    int result = Arrays.hashCode(argsSort);
+    result = 31 * result + (this.className == null ? 0 : 
this.className.hashCode());
+    return result;
   }
 }

Reply via email to