HBASE-21884 Fix box/unbox findbugs warning in secure bulk load

Signed-off-by: Peter Somogyi <psomogyi@apache.org>
This commit is contained in:
Sean Busbey 2019-02-12 20:53:14 -06:00
parent 256c3d9855
commit 6296bad9cf
1 changed files with 13 additions and 8 deletions

View File

@ -24,6 +24,7 @@ import com.google.protobuf.RpcController;
import com.google.protobuf.Service; import com.google.protobuf.Service;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.mutable.MutableInt;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import org.apache.hadoop.hbase.classification.InterfaceAudience; import org.apache.hadoop.hbase.classification.InterfaceAudience;
@ -139,7 +140,7 @@ public class SecureBulkLoadEndpoint extends SecureBulkLoadService
private Connection conn; private Connection conn;
private UserProvider userProvider; private UserProvider userProvider;
private static HashMap<UserGroupInformation, Integer> ugiReferenceCounter = new HashMap<>(); private static HashMap<UserGroupInformation, MutableInt> ugiReferenceCounter = new HashMap<>();
@Override @Override
public void start(CoprocessorEnvironment env) { public void start(CoprocessorEnvironment env) {
@ -276,26 +277,30 @@ public class SecureBulkLoadEndpoint extends SecureBulkLoadService
private void incrementUgiReference(UserGroupInformation ugi) { private void incrementUgiReference(UserGroupInformation ugi) {
synchronized (ugiReferenceCounter) { synchronized (ugiReferenceCounter) {
Integer counter = ugiReferenceCounter.get(ugi); final MutableInt counter = ugiReferenceCounter.get(ugi);
ugiReferenceCounter.put(ugi, counter == null ? 1 : ++counter); if (counter == null) {
ugiReferenceCounter.put(ugi, new MutableInt(1));
} else {
counter.increment();
}
} }
} }
private void decrementUgiReference(UserGroupInformation ugi) { private void decrementUgiReference(UserGroupInformation ugi) {
synchronized (ugiReferenceCounter) { synchronized (ugiReferenceCounter) {
Integer counter = ugiReferenceCounter.get(ugi); final MutableInt counter = ugiReferenceCounter.get(ugi);
if(counter == null || counter <= 1) { if(counter == null || counter.intValue() <= 1) {
ugiReferenceCounter.remove(ugi); ugiReferenceCounter.remove(ugi);
} else { } else {
ugiReferenceCounter.put(ugi,--counter); counter.decrement();
} }
} }
} }
private boolean isUserReferenced(UserGroupInformation ugi) { private boolean isUserReferenced(UserGroupInformation ugi) {
synchronized (ugiReferenceCounter) { synchronized (ugiReferenceCounter) {
Integer count = ugiReferenceCounter.get(ugi); final MutableInt counter = ugiReferenceCounter.get(ugi);
return count != null && count > 0; return counter != null && counter.intValue() > 0;
} }
} }