From 877dc93c690dba7b2a834e0cf585d45250eb9aa2 Mon Sep 17 00:00:00 2001 From: David Suarez Date: Sat, 14 Oct 2017 15:49:21 +0200 Subject: [PATCH] Fix some sonar/checkstyle issues - Remove unnecessary boxing - Utility classes should be final and implement a private constructor - Remove unnecessary types - Remove two duplicated entries in pom.xml Change-Id: I2f4539babf7d4ea6d4550d81b71deb4399dc1dc3 Signed-off-by: David Suarez --- .../md-sal/sal-clustering-commons/pom.xml | 8 -------- .../datastore/node/utils/QNameFactory.java | 16 +++++++-------- .../NormalizedNodeInputStreamReader.java | 12 +++++------ .../node/utils/stream/SerializationUtils.java | 3 +++ .../node/utils/stream/ValueTypes.java | 20 +++++++++---------- .../cluster/messaging/MessageSlicer.java | 6 ++---- .../persistence/LocalSnapshotStore.java | 3 +-- .../impl/RemoteSchemaProviderTest.java | 2 +- .../RemoteYangTextSourceProviderImplTest.java | 4 ++-- 9 files changed, 32 insertions(+), 42 deletions(-) diff --git a/opendaylight/md-sal/sal-clustering-commons/pom.xml b/opendaylight/md-sal/sal-clustering-commons/pom.xml index 8e70b44060..7a904b35a8 100644 --- a/opendaylight/md-sal/sal-clustering-commons/pom.xml +++ b/opendaylight/md-sal/sal-clustering-commons/pom.xml @@ -120,10 +120,6 @@ org.opendaylight.yangtools util - - org.opendaylight.yangtools - yang-common - org.opendaylight.yangtools yang-data-api @@ -140,10 +136,6 @@ org.opendaylight.yangtools yang-model-util - - org.opendaylight.controller - config-api - diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/QNameFactory.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/QNameFactory.java index 7d5379dfe0..5c7f6d1a56 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/QNameFactory.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/QNameFactory.java @@ -13,22 +13,20 @@ import com.google.common.cache.CacheLoader; import com.google.common.cache.LoadingCache; import org.opendaylight.yangtools.yang.common.QName; -public class QNameFactory { +public final class QNameFactory { private static final int MAX_QNAME_CACHE_SIZE = 10000; - private static final LoadingCache CACHE = CacheBuilder.newBuilder() - .maximumSize(MAX_QNAME_CACHE_SIZE) - .softValues() - .build( - new CacheLoader() { + private QNameFactory() { + } + + private static final LoadingCache CACHE = CacheBuilder.newBuilder().maximumSize(MAX_QNAME_CACHE_SIZE) + .softValues().build(new CacheLoader() { @Override public QName load(String key) { return QName.create(key); } - } - ); - + }); public static QName create(String name) { return CACHE.getUnchecked(name); diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/NormalizedNodeInputStreamReader.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/NormalizedNodeInputStreamReader.java index 6316bf3f04..3b912e6cb9 100755 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/NormalizedNodeInputStreamReader.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/NormalizedNodeInputStreamReader.java @@ -261,7 +261,7 @@ public class NormalizedNodeInputStreamReader implements NormalizedNodeDataInput return codedStringMap.get(input.readInt()); } else if (valueType == TokenTypes.IS_STRING_VALUE) { String value = input.readUTF().intern(); - codedStringMap.put(Integer.valueOf(codedStringMap.size()), value); + codedStringMap.put(codedStringMap.size(), value); return value; } @@ -296,22 +296,22 @@ public class NormalizedNodeInputStreamReader implements NormalizedNodeDataInput return readObjSet(); case ValueTypes.BOOL_TYPE : - return Boolean.valueOf(input.readBoolean()); + return input.readBoolean(); case ValueTypes.BYTE_TYPE : - return Byte.valueOf(input.readByte()); + return input.readByte(); case ValueTypes.INT_TYPE : - return Integer.valueOf(input.readInt()); + return input.readInt(); case ValueTypes.LONG_TYPE : - return Long.valueOf(input.readLong()); + return input.readLong(); case ValueTypes.QNAME_TYPE : return readQName(); case ValueTypes.SHORT_TYPE : - return Short.valueOf(input.readShort()); + return input.readShort(); case ValueTypes.STRING_TYPE : return input.readUTF(); diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/SerializationUtils.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/SerializationUtils.java index e4fd9363a6..3a04347a54 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/SerializationUtils.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/SerializationUtils.java @@ -27,6 +27,9 @@ public final class SerializationUtils { public static final ThreadLocal REUSABLE_WRITER_TL = new ThreadLocal<>(); public static final ThreadLocal REUSABLE_READER_TL = new ThreadLocal<>(); + private SerializationUtils() { + } + public interface Applier { void apply(T instance, YangInstanceIdentifier path, NormalizedNode node); } diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/ValueTypes.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/ValueTypes.java index dd9e102464..190f5969aa 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/ValueTypes.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/ValueTypes.java @@ -41,16 +41,16 @@ final class ValueTypes { static { final Builder, Byte> b = ImmutableMap.builder(); - b.put(String.class, Byte.valueOf(STRING_TYPE)); - b.put(Byte.class, Byte.valueOf(BYTE_TYPE)); - b.put(Integer.class, Byte.valueOf(INT_TYPE)); - b.put(Long.class, Byte.valueOf(LONG_TYPE)); - b.put(Boolean.class, Byte.valueOf(BOOL_TYPE)); - b.put(QName.class, Byte.valueOf(QNAME_TYPE)); - b.put(Short.class, Byte.valueOf(SHORT_TYPE)); - b.put(BigInteger.class, Byte.valueOf(BIG_INTEGER_TYPE)); - b.put(BigDecimal.class, Byte.valueOf(BIG_DECIMAL_TYPE)); - b.put(byte[].class, Byte.valueOf(BINARY_TYPE)); + b.put(String.class, STRING_TYPE); + b.put(Byte.class, BYTE_TYPE); + b.put(Integer.class, INT_TYPE); + b.put(Long.class, LONG_TYPE); + b.put(Boolean.class, BOOL_TYPE); + b.put(QName.class, QNAME_TYPE); + b.put(Short.class, SHORT_TYPE); + b.put(BigInteger.class, BIG_INTEGER_TYPE); + b.put(BigDecimal.class, BIG_DECIMAL_TYPE); + b.put(byte[].class, BINARY_TYPE); TYPES = b.build(); } diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/messaging/MessageSlicer.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/messaging/MessageSlicer.java index 4c3d67bdaa..fd08a95a34 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/messaging/MessageSlicer.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/messaging/MessageSlicer.java @@ -12,7 +12,6 @@ import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Preconditions; import com.google.common.cache.Cache; import com.google.common.cache.CacheBuilder; -import com.google.common.cache.RemovalListener; import com.google.common.cache.RemovalNotification; import java.io.IOException; import java.io.ObjectOutputStream; @@ -55,13 +54,12 @@ public class MessageSlicer implements AutoCloseable { id = SLICER_ID_COUNTER.getAndIncrement(); this.logContext = builder.logContext + "_slicer-id-" + id; - CacheBuilder> cacheBuilder = CacheBuilder.newBuilder().removalListener( - (RemovalListener>) notification -> stateRemoved(notification)); + CacheBuilder> cacheBuilder = + CacheBuilder.newBuilder().removalListener(notification -> stateRemoved(notification)); if (builder.expireStateAfterInactivityDuration > 0) { cacheBuilder = cacheBuilder.expireAfterAccess(builder.expireStateAfterInactivityDuration, builder.expireStateAfterInactivityUnit); } - stateCache = cacheBuilder.build(); } diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/persistence/LocalSnapshotStore.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/persistence/LocalSnapshotStore.java index c89d7ffd45..e1589ffb89 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/persistence/LocalSnapshotStore.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/persistence/LocalSnapshotStore.java @@ -22,7 +22,6 @@ import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; -import java.io.FilenameFilter; import java.io.IOException; import java.io.InputStream; import java.io.ObjectInputStream; @@ -236,7 +235,7 @@ public class LocalSnapshotStore extends SnapshotStore { private Collection getSnapshotFiles(final String persistenceId) { String encodedPersistenceId = encode(persistenceId); - File[] files = snapshotDir.listFiles((FilenameFilter) (dir, name) -> { + File[] files = snapshotDir.listFiles((dir, name) -> { int persistenceIdEndIndex = name.lastIndexOf('-', name.lastIndexOf('-') - 1); return PERSISTENCE_ID_START_INDEX + encodedPersistenceId.length() == persistenceIdEndIndex && name.startsWith(encodedPersistenceId, PERSISTENCE_ID_START_INDEX) && !name.endsWith(".tmp"); diff --git a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteSchemaProviderTest.java b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteSchemaProviderTest.java index 9b2032890e..5ce2d9ba10 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteSchemaProviderTest.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteSchemaProviderTest.java @@ -62,7 +62,7 @@ public class RemoteSchemaProviderTest { Futures.failed(new Exception("halo")); Mockito.when(mockedRemoteSchemaRepository.getYangTextSchemaSource(ID)).thenReturn( - Futures.failed( + Futures.failed( new SchemaSourceException("Source not provided"))); CheckedFuture sourceFuture = remoteSchemaProvider.getSource(ID); diff --git a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteYangTextSourceProviderImplTest.java b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteYangTextSourceProviderImplTest.java index 72170cad1b..678bad7415 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteYangTextSourceProviderImplTest.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteYangTextSourceProviderImplTest.java @@ -50,7 +50,7 @@ public class RemoteYangTextSourceProviderImplTest { YangTextSchemaSource schemaSource = YangTextSchemaSource.delegateForByteSource( ID, ByteSource.wrap(source.getBytes())); Mockito.when(mockedLocalRepository.getSchemaSource(ID, YangTextSchemaSource.class)).thenReturn( - Futures.immediateCheckedFuture(schemaSource)); + Futures.immediateCheckedFuture(schemaSource)); Future retrievedSourceFuture = remoteRepository.getYangTextSchemaSource(ID); @@ -64,7 +64,7 @@ public class RemoteYangTextSourceProviderImplTest { @Test(expected = SchemaSourceException.class) public void testGetNonExistentYangTextSchemaSource() throws Exception { Mockito.when(mockedLocalRepository.getSchemaSource(ID, YangTextSchemaSource.class)).thenReturn( - Futures.immediateFailedCheckedFuture( + Futures.immediateFailedCheckedFuture( new SchemaSourceException("Source is not provided"))); Future retrievedSourceFuture = -- 2.36.6