#1229 - Implement equals and hashCode on ModifyAwareMap, ModifyAwareList and ModifyAwareSet

This commit is contained in:
Rob Bygrave
2018-01-06 12:51:50 +13:00
parent db5db26fca
commit 3c7ef7d46e
6 changed files with 172 additions and 66 deletions
@@ -3,6 +3,7 @@ package io.ebeaninternal.json;
import java.util.Collection;
import java.util.LinkedHashSet;
import java.util.Map;
import java.util.Objects;
import java.util.Set;
/**
@@ -34,6 +35,19 @@ public class ModifyAwareMap<K, V> implements Map<K, V>, ModifyAwareOwner {
return map.toString();
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof ModifyAwareMap)) return false;
ModifyAwareMap<?, ?> that = (ModifyAwareMap<?, ?>) o;
return Objects.equals(map, that.map);
}
@Override
public int hashCode() {
return Objects.hash(map);
}
@Override
public boolean isMarkedDirty() {
return owner.isMarkedDirty();