BUG-4638: add utility check methods for base types
[yangtools.git] / yang / yang-model-util / src / main / java / org / opendaylight / yangtools / yang / model / util / RevisionAwareXPathImpl.java
index a3577ba0aec07db8b3bfecf2f406d2600ca225ac..6d407f7bb08845111f88aaf11471825bf8685cae 100644 (file)
@@ -7,11 +7,13 @@
  */
 package org.opendaylight.yangtools.yang.model.util;
 
+import java.util.Objects;
 import org.opendaylight.yangtools.yang.model.api.RevisionAwareXPath;
 
 /**
- * The <code>default</code> implementation of Instance Rewision Aware XPath interface.
- * 
+ * The <code>helper</code> implementation of Instance Rewision Aware XPath
+ * interface.
+ *
  * @see RevisionAwareXPath
  */
 public class RevisionAwareXPathImpl implements RevisionAwareXPath {
@@ -19,7 +21,10 @@ public class RevisionAwareXPathImpl implements RevisionAwareXPath {
     private final String xpath;
     private final boolean absolute;
 
-    public RevisionAwareXPathImpl(String xpath, boolean absolute) {
+    private static final int HASH_BOOLEAN_TRUE = 1231;
+    private static final int HASH_BOOLEAN_FALSE = 1237;
+
+    public RevisionAwareXPathImpl(final String xpath, final boolean absolute) {
         this.xpath = xpath;
         this.absolute = absolute;
     }
@@ -33,13 +38,13 @@ public class RevisionAwareXPathImpl implements RevisionAwareXPath {
     public int hashCode() {
         final int prime = 31;
         int result = 1;
-        result = prime * result + ((xpath == null) ? 0 : xpath.hashCode());
-        result = prime * result + (absolute ? 1231 : 1237);
+        result = prime * result + Objects.hashCode(xpath);
+        result = prime * result + (absolute ? HASH_BOOLEAN_TRUE : HASH_BOOLEAN_FALSE);
         return result;
     }
 
     @Override
-    public boolean equals(Object obj) {
+    public boolean equals(final Object obj) {
         if (this == obj) {
             return true;
         }
@@ -50,19 +55,9 @@ public class RevisionAwareXPathImpl implements RevisionAwareXPath {
             return false;
         }
         RevisionAwareXPathImpl other = (RevisionAwareXPathImpl) obj;
-        if (xpath == null) {
-            if (other.xpath != null) {
-                return false;
-            }
-        } else if (!xpath.equals(other.xpath)) {
-            return false;
-        }
-        if (absolute != other.absolute) {
-            return false;
-        }
-        return false;
+        return absolute == other.absolute && Objects.equals(xpath, other.xpath);
     }
-    
+
     @Override
     public String toString() {
         return xpath;