summaryrefslogtreecommitdiffstats
path: root/context/context-management/src/main
diff options
context:
space:
mode:
authorJim Hahn <jrh3@att.com>2021-02-17 15:23:38 -0500
committerJim Hahn <jrh3@att.com>2021-02-18 17:47:55 +0000
commitb6977d2f7ce64ece732ac1a1a0525dac972d7ccf (patch)
tree4966f5aa4737b0fef8241989eb216cce7fbe9294 /context/context-management/src/main
parent4e05982e36aa66b83fa0ee44b9631412442c3969 (diff)
Fix sonars in apex-pdp
Addressed the following issues: - initialize mocks before use - use parameterized queries - Random() is not secure - provide parameterized type for generics - unused imports - constructor visibility - use compute() instead of containsKey()/put() - make final fields static - rename constants to all upper case - no assert() in Thread.run() methods - nested try - nested if/else - too many break/continue - use try-with-resources - repeatable annotations - overlapping characters in reg ex - hashcode is not sufficient in compareTo() - need equals() with compareTo() - make class an interface - use parameterized test - multiple calls in assert() - log or re-throw - use different type of lambda - use parameterized logging - use StringBuilder instead of concatenation - use StandardCharsets.UTF_8 Issue-ID: POLICY-2906 Change-Id: I2cf8c885e3e22c2c6cbe6403a34906928afad022 Signed-off-by: Jim Hahn <jrh3@att.com>
Diffstat (limited to 'context/context-management/src/main')
-rw-r--r--context/context-management/src/main/java/org/onap/policy/apex/context/impl/distribution/AbstractDistributor.java3
-rw-r--r--context/context-management/src/main/java/org/onap/policy/apex/context/impl/locking/AbstractLockManager.java13
2 files changed, 8 insertions, 8 deletions
diff --git a/context/context-management/src/main/java/org/onap/policy/apex/context/impl/distribution/AbstractDistributor.java b/context/context-management/src/main/java/org/onap/policy/apex/context/impl/distribution/AbstractDistributor.java
index 1d73f58f1..3444f9342 100644
--- a/context/context-management/src/main/java/org/onap/policy/apex/context/impl/distribution/AbstractDistributor.java
+++ b/context/context-management/src/main/java/org/onap/policy/apex/context/impl/distribution/AbstractDistributor.java
@@ -2,6 +2,7 @@
* ============LICENSE_START=======================================================
* Copyright (C) 2016-2018 Ericsson. All rights reserved.
* Modifications Copyright (C) 2019 Nordix Foundation.
+ * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -74,7 +75,7 @@ public abstract class AbstractDistributor implements Distributor {
/**
* Create an instance of an abstract Context Distributor.
*/
- public AbstractDistributor() {
+ protected AbstractDistributor() {
LOGGER.entry("AbstractContextDistributor()");
LOGGER.exit("AbstractContextDistributor()");
}
diff --git a/context/context-management/src/main/java/org/onap/policy/apex/context/impl/locking/AbstractLockManager.java b/context/context-management/src/main/java/org/onap/policy/apex/context/impl/locking/AbstractLockManager.java
index a2bd45ccc..4eb878b1c 100644
--- a/context/context-management/src/main/java/org/onap/policy/apex/context/impl/locking/AbstractLockManager.java
+++ b/context/context-management/src/main/java/org/onap/policy/apex/context/impl/locking/AbstractLockManager.java
@@ -1,6 +1,7 @@
/*-
* ============LICENSE_START=======================================================
* Copyright (C) 2016-2018 Ericsson. All rights reserved.
+ * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -166,14 +167,12 @@ public abstract class AbstractLockManager implements LockManager {
*/
private ReadWriteLock getLock(final String lockTypeKey, final String lockKey, final boolean createMode)
throws ContextException {
- // Check if we have a lock type map for this lock type yet
- if (!lockMaps.containsKey(lockTypeKey)) {
- // Create a lock type map for the lock type
- lockMaps.put(lockTypeKey, Collections.synchronizedMap(new HashMap<String, ReadWriteLock>()));
- }
+ // Find or create a map for the lock type
+ Map<String, ReadWriteLock> lockTypeMap = lockMaps.computeIfAbsent(lockTypeKey,
+ unusedKey -> Collections.synchronizedMap(new HashMap<String, ReadWriteLock>()));
// Find or create a lock in the lock map
- ReadWriteLock lock = lockMaps.get(lockTypeKey).get(lockKey);
+ ReadWriteLock lock = lockTypeMap.get(lockKey);
if (lock != null) {
return lock;
}
@@ -191,7 +190,7 @@ public abstract class AbstractLockManager implements LockManager {
lock = getReentrantReadWriteLock(lockTypeKey + "_" + lockKey);
// Add the lock to the lock map
- lockMaps.get(lockTypeKey).put(lockKey, lock);
+ lockTypeMap.put(lockKey, lock);
if (LOGGER.isTraceEnabled()) {
LOGGER.trace("created lock {}_{}", lockTypeKey, lockKey);