HDFS-5266. Addendum for addressing Findbugs warnings for lack of hashCode method and lack of null check in equals. Contributed by Chris Nauroth.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/HDFS-4949@1527023 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Chris Nauroth 2013-09-27 18:32:18 +00:00
parent 8f17d64527
commit 89c147d46f
1 changed files with 12 additions and 0 deletions

View File

@ -18,6 +18,7 @@
package org.apache.hadoop.io; package org.apache.hadoop.io;
import com.google.common.collect.ComparisonChain; import com.google.common.collect.ComparisonChain;
import org.apache.commons.lang.builder.HashCodeBuilder;
import java.nio.ByteBuffer; import java.nio.ByteBuffer;
import java.util.Map; import java.util.Map;
@ -55,6 +56,9 @@ public final class ElasticByteBufferPool implements ByteBufferPool {
@Override @Override
public boolean equals(Object rhs) { public boolean equals(Object rhs) {
if (rhs == null) {
return false;
}
try { try {
Key o = (Key)rhs; Key o = (Key)rhs;
return (compareTo(o) == 0); return (compareTo(o) == 0);
@ -62,6 +66,14 @@ public final class ElasticByteBufferPool implements ByteBufferPool {
return false; return false;
} }
} }
@Override
public int hashCode() {
return new HashCodeBuilder().
append(capacity).
append(insertionTime).
toHashCode();
}
} }
private final TreeMap<Key, ByteBuffer> buffers = private final TreeMap<Key, ByteBuffer> buffers =