Implement ConstantArrayCollection.toString()
[yangtools.git] / common / util / src / main / java / org / opendaylight / yangtools / util / ConstantArrayCollection.java
index f7dbdb819b382eb7637b9f47e17a5b65ba6692f7..8c29d9e0b9949e716bd05190d3ba20260c232bd0 100644 (file)
@@ -130,4 +130,42 @@ final class ConstantArrayCollection<E> implements Collection<E>, Serializable {
     public void clear() {
         throw new UnsupportedOperationException();
     }
+
+    @Override
+    public int hashCode() {
+        int result = 1;
+        for (E e : array) {
+            result = 31 * result + e.hashCode();
+        }
+        return result;
+    }
+
+    @Override
+    public boolean equals(final Object obj) {
+        if (obj == this) {
+            return true;
+        }
+        if (obj == null) {
+            return false;
+        }
+        if (!(obj instanceof ConstantArrayCollection)) {
+            return false;
+        }
+
+        return Arrays.equals(array, ((ConstantArrayCollection<?>) obj).array);
+    }
+
+    @Override
+    public String toString() {
+        if (array.length == 0) {
+            return "[]";
+        }
+
+        StringBuilder sb = new StringBuilder("[");
+        int i = 0;
+        while (i < array.length - 1) {
+            sb.append(String.valueOf(array[i++])).append(", ");
+        }
+        return sb.append(String.valueOf(array[i])).append(']').toString();
+    }
 }