summaryrefslogtreecommitdiffstats
path: root/gson
diff options
context:
space:
mode:
authorJim Hahn <jrh3@att.com>2020-04-03 09:44:26 -0400
committerJim Hahn <jrh3@att.com>2020-04-06 09:41:59 -0400
commita56d3929f2387252525577fb36f9e03933064b8f (patch)
tree4b671549b5f1c0513c31d77baa19821e422f41e7 /gson
parent7da3ddfa40de2f683a2d423d62b78a8d001108eb (diff)
Address sonar issues in common
Addressed the following sonar issues: - missing assertion in junit test case - disable sonars about setAccessible() as it's required for jackson emulation - sleep in junit - don't use wild-cards (e.g., "*") with java.util Pattern - use re2j instead of java.util Pattern - use String methods (e.g., startsWith()) - duplicate method bodies - duplicate code in Coder classes - string concatenation in logger calls - UTF-8 encoding - return primitive instead of boxed primitive - add assertion to tests - renamed support methods from doTestXxx to verifyXxx - cognitive complexity - use AtomicRef instead of volatile - use specific Functionals (e.g., IntConsumer) - function always returns the same value - serializable vs transient Issue-ID: POLICY-2305 Change-Id: I08eb7aa495a80bdc1d26827ba17a7946c83b9828 Signed-off-by: Jim Hahn <jrh3@att.com>
Diffstat (limited to 'gson')
-rw-r--r--gson/src/main/java/org/onap/policy/common/gson/internal/Adapter.java12
-rw-r--r--gson/src/main/java/org/onap/policy/common/gson/internal/FieldDeserializer.java12
-rw-r--r--gson/src/main/java/org/onap/policy/common/gson/internal/FieldSerializer.java7
-rw-r--r--gson/src/test/java/org/onap/policy/common/gson/MapDoubleAdapterFactoryTest.java7
4 files changed, 27 insertions, 11 deletions
diff --git a/gson/src/main/java/org/onap/policy/common/gson/internal/Adapter.java b/gson/src/main/java/org/onap/policy/common/gson/internal/Adapter.java
index 174b4912..39ec6bd0 100644
--- a/gson/src/main/java/org/onap/policy/common/gson/internal/Adapter.java
+++ b/gson/src/main/java/org/onap/policy/common/gson/internal/Adapter.java
@@ -2,7 +2,7 @@
* ============LICENSE_START=======================================================
* ONAP
* ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019-2020 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.
@@ -83,7 +83,10 @@ public class Adapter {
this.gson = gson;
this.fullName = getQualifiedName(field);
- field.setAccessible(true);
+ /*
+ * Turning off sonar, as this is required for emulation of "jackson".
+ */
+ field.setAccessible(true); // NOSONAR
}
/**
@@ -100,7 +103,10 @@ public class Adapter {
this.gson = gson;
this.fullName = getQualifiedName(accessor);
- accessor.setAccessible(true);
+ /*
+ * Turning off sonar, as this is required for emulation of "jackson".
+ */
+ accessor.setAccessible(true); // NOSONAR
}
/**
diff --git a/gson/src/main/java/org/onap/policy/common/gson/internal/FieldDeserializer.java b/gson/src/main/java/org/onap/policy/common/gson/internal/FieldDeserializer.java
index 14a432d1..123b0195 100644
--- a/gson/src/main/java/org/onap/policy/common/gson/internal/FieldDeserializer.java
+++ b/gson/src/main/java/org/onap/policy/common/gson/internal/FieldDeserializer.java
@@ -2,7 +2,7 @@
* ============LICENSE_START=======================================================
* ONAP
* ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019-2020 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.
@@ -49,7 +49,10 @@ public class FieldDeserializer extends Adapter implements Deserializer {
this.field = field;
- field.setAccessible(true);
+ /*
+ * Turning off sonar, as this is required for emulation of "jackson".
+ */
+ field.setAccessible(true); // NOSONAR
}
@Override
@@ -62,7 +65,10 @@ public class FieldDeserializer extends Adapter implements Deserializer {
Object value = fromJsonTree(jsonEl);
try {
- field.set(target, value);
+ /*
+ * Turning off sonar, as this is required for emulation of "jackson".
+ */
+ field.set(target, value); // NOSONAR
} catch (IllegalArgumentException | IllegalAccessException e) {
throw new JsonParseException(makeError(SET_ERR), e);
diff --git a/gson/src/main/java/org/onap/policy/common/gson/internal/FieldSerializer.java b/gson/src/main/java/org/onap/policy/common/gson/internal/FieldSerializer.java
index 1c9d8b37..348ef5a0 100644
--- a/gson/src/main/java/org/onap/policy/common/gson/internal/FieldSerializer.java
+++ b/gson/src/main/java/org/onap/policy/common/gson/internal/FieldSerializer.java
@@ -2,7 +2,7 @@
* ============LICENSE_START=======================================================
* ONAP
* ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019-2020 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.
@@ -50,7 +50,10 @@ public class FieldSerializer extends Adapter implements Serializer {
this.field = field;
- field.setAccessible(true);
+ /*
+ * Turning off sonar, as this is required for emulation of "jackson".
+ */
+ field.setAccessible(true); // NOSONAR
}
@Override
diff --git a/gson/src/test/java/org/onap/policy/common/gson/MapDoubleAdapterFactoryTest.java b/gson/src/test/java/org/onap/policy/common/gson/MapDoubleAdapterFactoryTest.java
index 79631c5c..30d99466 100644
--- a/gson/src/test/java/org/onap/policy/common/gson/MapDoubleAdapterFactoryTest.java
+++ b/gson/src/test/java/org/onap/policy/common/gson/MapDoubleAdapterFactoryTest.java
@@ -2,7 +2,7 @@
* ============LICENSE_START=======================================================
* ONAP
* ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019-2020 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.
@@ -21,6 +21,7 @@
package org.onap.policy.common.gson;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
@@ -104,8 +105,8 @@ public class MapDoubleAdapterFactoryTest {
map = gson.fromJson(json, MyDoubleMap.class);
// everything should still be Double - check by simply accessing
- map.data.get("plainDouble");
- map.data.get("doubleAsInt");
+ assertNotNull(map.data.get("plainDouble"));
+ assertNotNull(map.data.get("doubleAsInt"));
}
@Test