summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTaka Cho <takamune.cho@att.com>2020-06-25 12:10:00 -0400
committerTaka Cho <takamune.cho@att.com>2020-06-26 10:54:27 -0400
commit927d8e01915733baa86e0fb9842d29487265817e (patch)
treee077ac2a0764dad6a2e2655bc702a30e9c3e46e8
parent69564b4c19a8c890ef7a11344abd246f90af2506 (diff)
replace an emptyArray and computeIfAbsent instead
- some methods should return an empty array. - avoid the result of a java.util.Map.get() against null before proceeding with adding or changing the value in the map. - Declaring a variable only to immediately return or throw it is a bad practice. Issue-ID: POLICY-2616 Change-Id: I21a55c5ea716d8f64dc9155f84cabcfbcf5a22e0 Signed-off-by: Taka Cho <takamune.cho@att.com>
-rw-r--r--feature-server-pool/src/main/java/org/onap/policy/drools/serverpool/TargetLock.java37
1 files changed, 13 insertions, 24 deletions
diff --git a/feature-server-pool/src/main/java/org/onap/policy/drools/serverpool/TargetLock.java b/feature-server-pool/src/main/java/org/onap/policy/drools/serverpool/TargetLock.java
index 66ac58da..ef88abf2 100644
--- a/feature-server-pool/src/main/java/org/onap/policy/drools/serverpool/TargetLock.java
+++ b/feature-server-pool/src/main/java/org/onap/policy/drools/serverpool/TargetLock.java
@@ -147,6 +147,9 @@ public class TargetLock implements Lock, Serializable {
private static final String QP_SERVER = "server";
private static final String QP_TTL = "ttl";
+ // define a constant for empty of byte array
+ private static final byte[] EMPTY_BYTE_ARRAY = {};
+
/**
* This method triggers registration of 'eventHandler', and also extracts
* property values.
@@ -1524,7 +1527,7 @@ public class TargetLock implements Lock, Serializable {
logger.error("Couldn't forward 'lock/dumpLocksData to uuid {}",
serverUuid);
- return null;
+ return EMPTY_BYTE_ARRAY;
}
return Base64.getEncoder().encode(Util.serialize(new HostData()));
@@ -1641,11 +1644,7 @@ public class TargetLock implements Lock, Serializable {
UUID uuid = cdr.identity.uuid;
// fetch/generate 'MergeData' instance for this UUID
- MergedData md = mergedDataMap.get(uuid);
- if (md == null) {
- md = new MergedData(uuid);
- mergedDataMap.put(uuid, md);
- }
+ MergedData md = mergedDataMap.computeIfAbsent(uuid, key -> new MergedData(uuid));
// update 'MergedData.clientDataRecord'
if (md.clientDataRecord == null) {
@@ -1680,11 +1679,7 @@ public class TargetLock implements Lock, Serializable {
UUID uuid = le.currentOwnerUuid;
// fetch/generate 'MergeData' instance for this UUID
- MergedData md = mergedDataMap.get(uuid);
- if (md == null) {
- md = new MergedData(uuid);
- mergedDataMap.put(uuid, md);
- }
+ MergedData md = mergedDataMap.computeIfAbsent(uuid, key -> new MergedData(uuid));
// update 'lockEntries' table entry
if (lockEntries.get(le.key) != null) {
@@ -1728,11 +1723,7 @@ public class TargetLock implements Lock, Serializable {
UUID uuid = waiting.ownerUuid;
// fetch/generate 'MergeData' instance for this UUID
- MergedData md = mergedDataMap.get(uuid);
- if (md == null) {
- md = new MergedData(uuid);
- mergedDataMap.put(uuid, md);
- }
+ MergedData md = mergedDataMap.computeIfAbsent(uuid, key -> new MergedData(uuid));
// update 'MergedData.serverLockEntry' and
// 'MergedData.serverWaiting'
@@ -2383,7 +2374,7 @@ public class TargetLock implements Lock, Serializable {
return Base64.getEncoder().encode(Util.serialize(this));
} catch (IOException e) {
logger.error("TargetLock.AuditData.encode Exception", e);
- return null;
+ return EMPTY_BYTE_ARRAY;
}
}
@@ -2557,7 +2548,7 @@ public class TargetLock implements Lock, Serializable {
// if we reach this point, we didn't forward for some reason
logger.error("Couldn't forward 'lock/audit to uuid {}", serverUuid);
- return null;
+ return EMPTY_BYTE_ARRAY;
}
AuditData auditData = AuditData.decode(encodedData);
@@ -2565,7 +2556,7 @@ public class TargetLock implements Lock, Serializable {
AuditData auditResp = auditData.generateResponse(true);
return auditResp.encode();
}
- return null;
+ return EMPTY_BYTE_ARRAY;
}
/**
@@ -2650,9 +2641,7 @@ public class TargetLock implements Lock, Serializable {
// map 'key -> bucket number', and then 'bucket number' -> 'server'
Server server = Bucket.bucketToServer(Bucket.bucketNumber(key));
if (server != null) {
- AuditData auditData =
- auditMap.computeIfAbsent(server, sk -> new AuditData());
- return auditData;
+ return auditMap.computeIfAbsent(server, sk -> new AuditData());
}
// this happens when the bucket has not been assigned to a server yet
@@ -2712,7 +2701,7 @@ public class TargetLock implements Lock, Serializable {
// serialize
byte[] encodedData = auditData.encode();
- if (encodedData == null) {
+ if (encodedData.length == 0) {
// error has already been displayed
return;
}
@@ -2779,7 +2768,7 @@ public class TargetLock implements Lock, Serializable {
// serialize
byte[] encodedData = auditData.encode();
- if (encodedData == null) {
+ if (encodedData.length == 0) {
// error has already been displayed
return;
}