LENS-1475 : Override equals(Object obj) and hashcode() methods of 
SegmentationCandidate


Project: http://git-wip-us.apache.org/repos/asf/lens/repo
Commit: http://git-wip-us.apache.org/repos/asf/lens/commit/0f58445e
Tree: http://git-wip-us.apache.org/repos/asf/lens/tree/0f58445e
Diff: http://git-wip-us.apache.org/repos/asf/lens/diff/0f58445e

Branch: refs/heads/current-release-line
Commit: 0f58445e0e2bf4262a624f006c678786a00485d5
Parents: ae6bda3
Author: Sushil Mohanty <sushil.k.moha...@gmail.com>
Authored: Thu Sep 14 12:42:57 2017 +0530
Committer: rajub <raju.bairishe...@lazada.com>
Committed: Thu Oct 5 11:12:29 2017 +0800

----------------------------------------------------------------------
 .../lens/cube/parse/SegmentationCandidate.java  | 21 ++++++++++++++++++++
 1 file changed, 21 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lens/blob/0f58445e/lens-cube/src/main/java/org/apache/lens/cube/parse/SegmentationCandidate.java
----------------------------------------------------------------------
diff --git 
a/lens-cube/src/main/java/org/apache/lens/cube/parse/SegmentationCandidate.java 
b/lens-cube/src/main/java/org/apache/lens/cube/parse/SegmentationCandidate.java
index 055d6ef..9378009 100644
--- 
a/lens-cube/src/main/java/org/apache/lens/cube/parse/SegmentationCandidate.java
+++ 
b/lens-cube/src/main/java/org/apache/lens/cube/parse/SegmentationCandidate.java
@@ -404,4 +404,25 @@ public class SegmentationCandidate implements Candidate {
     return cubeQueryContextMap.entrySet().stream().filter(entry -> 
entry.getValue().getPickedCandidate() == null)
       .collect(toMap(Map.Entry::getKey, entry -> 
entry.getValue().getStoragePruningMsgs()));
   }
+
+  @Override
+  public boolean equals(Object obj) {
+    if (super.equals(obj)) {
+      return true;
+    }
+
+    if (obj == null || !(obj instanceof SegmentationCandidate)) {
+      return false;
+    }
+
+    SegmentationCandidate segmantationCandidate = (SegmentationCandidate) obj;
+    return 
(segmantationCandidate.segmentation.getSegments().equals(this.segmentation.getSegments())
+        && 
segmantationCandidate.segmentation.getBaseCube().equals(this.segmentation.getBaseCube()));
+  }
+
+  @Override
+  public int hashCode() {
+    return segmentation.hashCode();
+  }
+
 }

Reply via email to