From 63d88eb8db1f7a6d5924ec2a8b7f462373d5ac9a Mon Sep 17 00:00:00 2001 From: bjculkin Date: Fri, 7 Apr 2017 10:51:31 -0400 Subject: Cleanup --- .../main/java/bjc/utils/funcdata/ExtendedMap.java | 50 ++++++++++++++++++++-- 1 file changed, 46 insertions(+), 4 deletions(-) (limited to 'BJC-Utils2/src/main/java/bjc/utils/funcdata/ExtendedMap.java') diff --git a/BJC-Utils2/src/main/java/bjc/utils/funcdata/ExtendedMap.java b/BJC-Utils2/src/main/java/bjc/utils/funcdata/ExtendedMap.java index 49382bc..caa487c 100644 --- a/BJC-Utils2/src/main/java/bjc/utils/funcdata/ExtendedMap.java +++ b/BJC-Utils2/src/main/java/bjc/utils/funcdata/ExtendedMap.java @@ -23,7 +23,8 @@ class ExtendedMap implements IMap { @Override public boolean containsKey(KeyType key) { - if(store.containsKey(key)) return true; + if (store.containsKey(key)) + return true; return delegate.containsKey(key); } @@ -56,7 +57,8 @@ class ExtendedMap implements IMap { @Override public ValueType get(KeyType key) { - if(store.containsKey(key)) return store.get(key); + if (store.containsKey(key)) + return store.get(key); return delegate.get(key); } @@ -83,8 +85,9 @@ class ExtendedMap implements IMap { @Override public ValueType remove(KeyType key) { - if(!store.containsKey(key)) return delegate.remove(key); - + if (!store.containsKey(key)) + return delegate.remove(key); + return store.remove(key); } @@ -92,4 +95,43 @@ class ExtendedMap implements IMap { public IList valueList() { return ListUtils.mergeLists(store.valueList(), delegate.valueList()); } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((delegate == null) ? 0 : delegate.hashCode()); + result = prime * result + ((store == null) ? 0 : store.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (!(obj instanceof ExtendedMap)) + return false; + + ExtendedMap other = (ExtendedMap) obj; + + if (delegate == null) { + if (other.delegate != null) + return false; + } else if (!delegate.equals(other.delegate)) + return false; + if (store == null) { + if (other.store != null) + return false; + } else if (!store.equals(other.store)) + return false; + + return true; + } + + @Override + public String toString() { + return String.format("ExtendedMap [delegate=%s, store=%s]", delegate, store); + } } -- cgit v1.2.3