Invalid comparison of byte array in equals and hascode method

Change-Id: I2bf6064f897830dad8fa243295c174d0c154a0b4
diff --git a/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/NexthopIPv6addressTlv.java b/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/NexthopIPv6addressTlv.java
index 2ddb7a3..b3a138f 100644
--- a/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/NexthopIPv6addressTlv.java
+++ b/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/NexthopIPv6addressTlv.java
@@ -23,7 +23,7 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.util.Objects;
+import java.util.Arrays;
 
 /**
  * NexthopIPv6addressTlv provides Ipv6  address of next hop.
@@ -135,7 +135,7 @@
 
     @Override
     public int hashCode() {
-        return Objects.hash(rawValue);
+        return Arrays.hashCode(rawValue);
     }
 
     @Override
@@ -145,7 +145,7 @@
         }
         if (obj instanceof NexthopIPv6addressTlv) {
             NexthopIPv6addressTlv other = (NexthopIPv6addressTlv) obj;
-            return Objects.equals(this.rawValue, other.rawValue);
+            return Arrays.equals(this.rawValue, other.rawValue);
         }
         return false;
     }
diff --git a/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/NodeNameSubTlv.java b/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/NodeNameSubTlv.java
index 6ed8283..cd4e741 100644
--- a/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/NodeNameSubTlv.java
+++ b/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/NodeNameSubTlv.java
@@ -15,7 +15,7 @@
  */
 package org.onosproject.pcepio.types;
 
-import java.util.Objects;
+import java.util.Arrays;
 import org.jboss.netty.buffer.ChannelBuffer;
 import org.onosproject.pcepio.protocol.PcepVersion;
 import org.slf4j.Logger;
@@ -99,7 +99,7 @@
 
     @Override
     public int hashCode() {
-        return Objects.hash(rawValue);
+        return Arrays.hashCode(rawValue);
     }
 
     @Override
@@ -109,7 +109,7 @@
         }
         if (obj instanceof NodeNameSubTlv) {
             NodeNameSubTlv other = (NodeNameSubTlv) obj;
-            return Objects.equals(this.rawValue, other.rawValue);
+            return Arrays.equals(this.rawValue, other.rawValue);
         }
         return false;
     }
diff --git a/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/OpaqueLinkAttributeSubTlv.java b/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/OpaqueLinkAttributeSubTlv.java
index 997f4f2..1e66c06 100644
--- a/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/OpaqueLinkAttributeSubTlv.java
+++ b/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/OpaqueLinkAttributeSubTlv.java
@@ -15,7 +15,7 @@
  */
 package org.onosproject.pcepio.types;
 
-import java.util.Objects;
+import java.util.Arrays;
 import org.jboss.netty.buffer.ChannelBuffer;
 import org.onosproject.pcepio.protocol.PcepVersion;
 import org.slf4j.Logger;
@@ -100,7 +100,7 @@
 
     @Override
     public int hashCode() {
-        return Objects.hash(rawValue);
+        return Arrays.hashCode(rawValue);
     }
 
     @Override
@@ -110,7 +110,7 @@
         }
         if (obj instanceof OpaqueLinkAttributeSubTlv) {
             OpaqueLinkAttributeSubTlv other = (OpaqueLinkAttributeSubTlv) obj;
-            return Objects.equals(this.rawValue, other.rawValue);
+            return Arrays.equals(this.rawValue, other.rawValue);
         }
         return false;
     }
diff --git a/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/OpaqueNodePropertiesSubTlv.java b/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/OpaqueNodePropertiesSubTlv.java
index f8b994c..af8d81e 100644
--- a/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/OpaqueNodePropertiesSubTlv.java
+++ b/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/OpaqueNodePropertiesSubTlv.java
@@ -15,7 +15,7 @@
  */
 package org.onosproject.pcepio.types;
 
-import java.util.Objects;
+import java.util.Arrays;
 import org.jboss.netty.buffer.ChannelBuffer;
 import org.onosproject.pcepio.protocol.PcepVersion;
 import org.slf4j.Logger;
@@ -99,7 +99,7 @@
 
     @Override
     public int hashCode() {
-        return Objects.hash(rawValue);
+        return Arrays.hashCode(rawValue);
     }
 
     @Override
@@ -109,7 +109,7 @@
         }
         if (obj instanceof OpaqueNodePropertiesSubTlv) {
             OpaqueNodePropertiesSubTlv other = (OpaqueNodePropertiesSubTlv) obj;
-            return Objects.equals(this.rawValue, other.rawValue);
+            return Arrays.equals(this.rawValue, other.rawValue);
         }
         return false;
     }
diff --git a/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/PcepNaiIpv6Adjacency.java b/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/PcepNaiIpv6Adjacency.java
index 8169898..c6ea327 100644
--- a/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/PcepNaiIpv6Adjacency.java
+++ b/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/PcepNaiIpv6Adjacency.java
@@ -16,6 +16,7 @@
 
 package org.onosproject.pcepio.types;
 
+import java.util.Arrays;
 import java.util.Objects;
 
 import org.jboss.netty.buffer.ChannelBuffer;
@@ -74,7 +75,7 @@
 
     @Override
     public int hashCode() {
-        return Objects.hash(localIpv6Addr, remoteIpv6Addr);
+        return Objects.hash(Arrays.hashCode(localIpv6Addr), Arrays.hashCode(remoteIpv6Addr));
     }
 
     @Override
@@ -84,8 +85,8 @@
         }
         if (obj instanceof PcepNaiIpv6Adjacency) {
             PcepNaiIpv6Adjacency other = (PcepNaiIpv6Adjacency) obj;
-            return Objects.equals(this.localIpv6Addr, other.localIpv6Addr)
-                    && Objects.equals(this.remoteIpv6Addr, other.remoteIpv6Addr);
+            return Arrays.equals(this.localIpv6Addr, other.localIpv6Addr)
+                    && Arrays.equals(this.remoteIpv6Addr, other.remoteIpv6Addr);
         }
         return false;
     }
diff --git a/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/PcepNaiIpv6NodeId.java b/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/PcepNaiIpv6NodeId.java
index 830c634..10b5314 100644
--- a/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/PcepNaiIpv6NodeId.java
+++ b/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/PcepNaiIpv6NodeId.java
@@ -16,7 +16,7 @@
 
 package org.onosproject.pcepio.types;
 
-import java.util.Objects;
+import java.util.Arrays;
 
 import org.jboss.netty.buffer.ChannelBuffer;
 import org.onosproject.pcepio.protocol.PcepNai;
@@ -78,7 +78,7 @@
 
     @Override
     public int hashCode() {
-        return Objects.hash(ipv6NodeId);
+        return Arrays.hashCode(ipv6NodeId);
     }
 
     @Override
@@ -88,7 +88,7 @@
         }
         if (obj instanceof PcepNaiIpv6NodeId) {
             PcepNaiIpv6NodeId other = (PcepNaiIpv6NodeId) obj;
-            return Objects.equals(this.ipv6NodeId, other.ipv6NodeId);
+            return Arrays.equals(this.ipv6NodeId, other.ipv6NodeId);
         }
         return false;
     }
diff --git a/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/SymbolicPathNameTlv.java b/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/SymbolicPathNameTlv.java
index 8645a6d..97ceed2 100644
--- a/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/SymbolicPathNameTlv.java
+++ b/protocols/pcep/pcepio/src/main/java/org/onosproject/pcepio/types/SymbolicPathNameTlv.java
@@ -16,7 +16,7 @@
 
 package org.onosproject.pcepio.types;
 
-import java.util.Objects;
+import java.util.Arrays;
 
 import org.jboss.netty.buffer.ChannelBuffer;
 import org.onosproject.pcepio.protocol.PcepVersion;
@@ -113,7 +113,7 @@
 
     @Override
     public int hashCode() {
-        return Objects.hash(rawValue);
+        return Arrays.hashCode(rawValue);
     }
 
     @Override
@@ -123,7 +123,7 @@
         }
         if (obj instanceof SymbolicPathNameTlv) {
             SymbolicPathNameTlv other = (SymbolicPathNameTlv) obj;
-            return Objects.equals(this.rawValue, other.rawValue);
+            return Arrays.equals(this.rawValue, other.rawValue);
         }
         return false;
     }