Sonar: Utility classes shouldn't have public constructor 17/31017/1
authorLorand Jakab <lojakab@cisco.com>
Tue, 8 Dec 2015 20:14:05 +0000 (22:14 +0200)
committerLorand Jakab <lojakab@cisco.com>
Tue, 8 Dec 2015 20:14:05 +0000 (22:14 +0200)
Fix 19 instances of Sonar issue "Utility classes should not have a
public constructor" labeled as Major. The rule descriptions says:
"Utility classes, which are a collection of static members, are not
meant to be instantiated. Even abstract utility classes, which can be
extended, should not have public constructors. Java adds an implicit
public constructor to every class which does not define at least one
explicitly. Hence, at least one non-public constructor should be
defined."

Change-Id: I5e17afe35bc44d02e238f5a1558dfcfb588c7f80
Signed-off-by: Lorand Jakab <lojakab@cisco.com>
19 files changed:
mappingservice/implementation/src/main/java/org/opendaylight/lispflowmapping/implementation/authentication/LispAuthenticationFactory.java
mappingservice/implementation/src/main/java/org/opendaylight/lispflowmapping/implementation/authentication/LispAuthenticationUtil.java
mappingservice/implementation/src/main/java/org/opendaylight/lispflowmapping/implementation/util/DSBEInputUtil.java
mappingservice/implementation/src/main/java/org/opendaylight/lispflowmapping/implementation/util/InstanceIdentifierUtil.java
mappingservice/implementation/src/main/java/org/opendaylight/lispflowmapping/implementation/util/LispNotificationHelper.java
mappingservice/implementation/src/main/java/org/opendaylight/lispflowmapping/implementation/util/MSNotificationInputUtil.java
mappingservice/implementation/src/main/java/org/opendaylight/lispflowmapping/implementation/util/RPCInputConvertorUtil.java
mappingservice/lisp-proto/src/main/java/org/opendaylight/lispflowmapping/lisp/serializer/address/factory/LispAddressSerializerFactory.java
mappingservice/lisp-proto/src/main/java/org/opendaylight/lispflowmapping/lisp/util/AddressTypeMap.java
mappingservice/lisp-proto/src/main/java/org/opendaylight/lispflowmapping/lisp/util/ByteUtil.java
mappingservice/lisp-proto/src/main/java/org/opendaylight/lispflowmapping/lisp/util/LispAddressUtil.java
mappingservice/lisp-proto/src/main/java/org/opendaylight/lispflowmapping/lisp/util/LispSimpleAddressStringifier.java
mappingservice/lisp-proto/src/main/java/org/opendaylight/lispflowmapping/lisp/util/MapNotifyBuilderHelper.java
mappingservice/lisp-proto/src/main/java/org/opendaylight/lispflowmapping/lisp/util/MapRequestUtil.java
mappingservice/lisp-proto/src/main/java/org/opendaylight/lispflowmapping/lisp/util/MaskUtil.java
mappingservice/lisp-proto/src/main/java/org/opendaylight/lispflowmapping/lisp/util/NumberUtil.java
mappingservice/lisp-proto/src/main/java/org/opendaylight/lispflowmapping/lisp/util/SourceDestKeyHelper.java
mappingservice/neutron/src/main/java/org/opendaylight/lispflowmapping/neutron/LispUtil.java
mappingservice/southbound/src/main/java/org/opendaylight/lispflowmapping/southbound/util/LispNotificationHelper.java

index bef5db3d9dd069fc6f16e2bff2a92e470f5e4b32..9146377598e74c37d57d03f2f24baf184c0d8a50 100644 (file)
@@ -12,10 +12,14 @@ import java.util.Map;
 
 import org.opendaylight.lispflowmapping.interfaces.lisp.ILispAuthentication;
 
-public class LispAuthenticationFactory {
+public final class LispAuthenticationFactory {
 
     private static Map<LispKeyIDEnum, ILispAuthentication> keyIDToAuthenticationMap;
 
+    // Class should not be instantiated
+    private LispAuthenticationFactory() {
+    }
+
     private static void initializeMap() {
         keyIDToAuthenticationMap = new HashMap<LispKeyIDEnum, ILispAuthentication>();
         keyIDToAuthenticationMap.put(LispKeyIDEnum.NONE, LispNoAuthentication.getInstance());
index 35df6dca51ba5d1cab11872b395fcccfd01da35e..d7244016dcee2a566ecc312f761b59a42945ebeb 100644 (file)
@@ -11,7 +11,10 @@ import org.opendaylight.lispflowmapping.interfaces.lisp.ILispAuthentication;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.MapNotify;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.MapRegister;
 
-public class LispAuthenticationUtil {
+public final class LispAuthenticationUtil {
+    // Utility class, should not be instantiated
+    private LispAuthenticationUtil() {
+    }
 
     public static boolean validate(MapRegister mapRegister, String key) {
         short keyId = 0;
index 3d86d34c91032dc6239d59f7830f1b8fba59356d..38cfdb1245caa0c7f45aa923b81c44ba7cb16bf4 100644 (file)
@@ -27,7 +27,11 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.mappingservice.rev15090
  * @author Florin Coras
  *
  */
-public class DSBEInputUtil {
+public final class DSBEInputUtil {
+    // Utility class, should not be instantiated
+    private DSBEInputUtil() {
+    }
+
     public static Mapping toMapping(MappingOrigin origin, Eid key, SiteId siteId, MappingRecord record) {
         List<SiteId> siteIds = (siteId != null) ? Arrays.asList(siteId) : null;
         return new MappingBuilder().setEidUri(new EidUri(LispAddressStringifier.getURIString(key)))
index 1c513f1e92057e494933091b5d22cbefb90bb449..f83a7da5c843848e7563cdac16a8548b1312a1a4 100644 (file)
@@ -32,7 +32,11 @@ import com.google.common.base.Preconditions;
  * @author Lorand Jakab
  *
  */
-public class InstanceIdentifierUtil {
+public final class InstanceIdentifierUtil {
+    // Utility class, should not be instantiated
+    private InstanceIdentifierUtil() {
+    }
+
     public static InstanceIdentifier<AuthenticationKey> createAuthenticationKeyIid(Eid eid) {
         Preconditions.checkNotNull(eid, "Key needs and EID entry!");
 
index 4bfe82fdc5b70269b79c0a59c655fcaa0e50d0b0..a02fd235037a9ec7148d6eb8f03e4a6b131dbd72 100644 (file)
@@ -35,7 +35,11 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.addres
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address.address.Ipv6;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address.address.KeyValueAddress;
 
-public class LispNotificationHelper {
+public final class LispNotificationHelper {
+    // Utility class, should not be instantiated
+    private LispNotificationHelper() {
+    }
+
     public static TransportAddress getTransportAddressFromRloc(Rloc rloc) {
         TransportAddressBuilder tab = new TransportAddressBuilder();
         Address address = rloc.getAddress();
index 10a853acc9f7e78630ab940a697742d6b49dd459..1bef9d8195dedffd25f4e10992dbabf190997574 100644 (file)
@@ -17,7 +17,10 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.mappingservice.rev15090
  * @author Florin Coras
  *
  */
-public class MSNotificationInputUtil {
+public final class MSNotificationInputUtil {
+    // Utility class, should not be instantiated
+    private MSNotificationInputUtil() {
+    }
 
     public static MappingChanged toMappingChanged(Mapping input, MappingChange change) {
         return new MappingChangedBuilder().setMappingRecord(input.getMappingRecord())
index 1afa8807f0c47ef5e861879a95b4dfd166e207f2..69d2a36e30085ad082a110aac5bb3d4f769e4d58 100644 (file)
@@ -31,7 +31,11 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.mappingservice.rev15090
  * @author Lorand Jakab
  *
  */
-public class RPCInputConvertorUtil {
+public final class RPCInputConvertorUtil {
+    // Utility class, should not be instantiated
+    private RPCInputConvertorUtil() {
+    }
+
     public static AuthenticationKey toAuthenticationKey(AddKeyInput input) {
         return toAuthenticationKey(input.getEid(), input.getMappingAuthkey());
     }
index 21cea96f762289055d89722b2f4673d6d404d378..4dbe11a70a875153cdfd9df657891f1918539788 100644 (file)
@@ -47,9 +47,13 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.addres
  * @author Lorand Jakab
  *
  */
-public class LispAddressSerializerFactory {
+public final class LispAddressSerializerFactory {
     private static Map<Class<? extends LispAddressFamily>, LispAddressSerializer> addressTypeToSerializerMap;
 
+    // Class should not be instantiated
+    private LispAddressSerializerFactory() {
+    }
+
     private static void initializeMap() {
         addressTypeToSerializerMap = new HashMap<Class<? extends LispAddressFamily>, LispAddressSerializer>();
         addressTypeToSerializerMap.put(NoAddressAfi.class, NoAddressSerializer.getInstance());
index dac6501fa28e91802c6dece1c604398969aefa67..fa79e45560d656d27105b53e1332964667cf44af 100644 (file)
@@ -40,6 +40,10 @@ public final class AddressTypeMap {
     private static Map<Short, Class<? extends LispAddressFamily>> afiToAddressTypeMap;
     private static Map<Short, Class<? extends LispAddressFamily>> lcafToAddressTypeMap;
 
+    // Utility class, should not be instantiated
+    private AddressTypeMap() {
+    }
+
     private static void initializeAfiMap() {
         afiToAddressTypeMap = new HashMap<Short, Class<? extends LispAddressFamily>>();
         afiToAddressTypeMap.put((short) 0, NoAddressAfi.class);
index b46c8fe372b846c14a55d31ce8c7928788f62e3f..8d22c0b790ae72fa780bfe5577f08aed0f0525d9 100644 (file)
@@ -10,10 +10,14 @@ package org.opendaylight.lispflowmapping.lisp.util;
 
 import java.nio.ByteBuffer;
 
-public class ByteUtil {
+public final class ByteUtil {
 
     final protected static char[] hexArray = "0123456789ABCDEF".toCharArray();
 
+    // Utility class, should not be instantiated
+    private ByteUtil() {
+    }
+
     public static int getUnsignedByte(byte[] inBuffer, int pos) {
         return inBuffer[pos] & 0xFF;
     }
index f7fe11b82e80317f455cb8141aabeea26e6fd3e7..29fc5b0c911fc70316d4c9e6a62c80bf4e1ad63b 100644 (file)
@@ -62,7 +62,7 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.addres
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address.address.explicit.locator.path.explicit.locator.path.Hop.LrsBits;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address.address.explicit.locator.path.explicit.locator.path.HopBuilder;
 
-public class LispAddressUtil {
+public final class LispAddressUtil {
     private static Pattern IP4_PATTERN = null;
     private static Pattern IP6_PATTERN = null;
     private static final String ip4Pattern = "(([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.){3}([01]?\\d\\d?|2[0-4]\\d|25[0-5])";
@@ -75,6 +75,10 @@ public class LispAddressUtil {
         }
       }
 
+    // Utility class, should not be instantiated
+    private LispAddressUtil() {
+    }
+
     public static Class<? extends LispAddressFamily> addressTypeFromSimpleAddress(SimpleAddress address) {
         if (address.getIpAddress() != null) {
             return addressTypeFromIpAddress(address.getIpAddress());
index fbd3c08d00e648ca6029edf1420147df915b0564..05f5563edddb7b1641be7f738a8ec811b8bd1b42 100644 (file)
@@ -25,7 +25,10 @@ import com.google.common.base.Preconditions;
  * @author Lorand Jakab
  *
  */
-public class LispSimpleAddressStringifier {
+public final class LispSimpleAddressStringifier {
+    // Utility class, should not be instantiated
+    private LispSimpleAddressStringifier() {
+    }
 
     public static String getString(SimpleAddress addr) {
         return getString(Destination.USER, addr);
index 981c4dfdf1defd1c52e625da2a34dee1f56ae976..1ae425f4804ac9ea3a6d6d90fb5c9dd8c52e6946 100644 (file)
@@ -14,7 +14,10 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.Ma
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapnotifymessage.MapNotifyBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapping.record.list.MappingRecordItem;
 
-public class MapNotifyBuilderHelper {
+public final class MapNotifyBuilderHelper {
+    // Utility class, should not be instantiated
+    private MapNotifyBuilderHelper() {
+    }
 
     public static void setFromMapRegister(MapNotifyBuilder builder, MapRegister mapRegister) {
         if (builder.getMappingRecordItem() == null) {
index 4dfba51606b3ea44604caef07a35505333a6c1fe..4a668786478daf941aee31ac20c31d0241a112d3 100644 (file)
@@ -23,7 +23,11 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.ma
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.maprequestnotification.MapRequestBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.rloc.container.Rloc;
 
-public class MapRequestUtil {
+public final class MapRequestUtil {
+    // Utility class, should not be instantiated
+    private MapRequestUtil() {
+    }
+
     public static InetAddress selectItrRloc(MapRequest request) {
         if (request.getItrRloc() == null) {
             return null;
index 3b61db8522caac0613b9a114ec49621921a8a953..1162ffa305c6c649bb39f6bd88e21376e3c3043c 100644 (file)
@@ -27,11 +27,15 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.ei
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-public class MaskUtil {
+public final class MaskUtil {
     private static final Logger LOG = LoggerFactory.getLogger(MaskUtil.class);
     private static final short IPV4_MAX_MASK = 32;
     private static final short IPV6_MAX_MASK = 128;
 
+    // Utility class, should not be instantiated
+    private MaskUtil() {
+    }
+
     public static boolean isMaskable(Address address) {
         if (address instanceof Ipv4Prefix || address instanceof Ipv6Prefix || address instanceof SourceDestKey) {
             return true;
index 610df5c7f21073c35e1dc3ddd04b891d9ab00182..13b28559db6512228189b3240157c6a9425f0bbd 100644 (file)
@@ -7,7 +7,10 @@
  */
 package org.opendaylight.lispflowmapping.lisp.util;
 
-public class NumberUtil {
+public final class NumberUtil {
+    // Utility class, should not be instantiated
+    private NumberUtil() {
+    }
 
     public static int asInt(Integer number) {
         if (number != null) {
index 8441f2d29f6900f89d5aa04628491f3134120353..186bef1781d069a7bed58fa971827724699bc523 100644 (file)
@@ -19,7 +19,11 @@ import org.slf4j.LoggerFactory;
  *
  */
 
-public class SourceDestKeyHelper {
+public final class SourceDestKeyHelper {
+    // Utility class, should not be instantiated
+    private SourceDestKeyHelper() {
+    }
+
     private final static Logger LOG = LoggerFactory.getLogger(SourceDestKeyHelper.class);
     public static Eid getSrc(Eid eid) {
         Address addr = eid.getAddress();
index d4835f324a27100a968f27c7b4b3e12d91cbd01b..e7ad650031009d63676c0d11853c8e0acfa08bae 100644 (file)
@@ -34,7 +34,10 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.mappingservice.rev15090
  */
 
 
-public class LispUtil {
+public final class LispUtil {
+    // Utility class, should not be instantiated
+    private LispUtil() {
+    }
 
   //  private static final Logger LOG = LoggerFactory.getLogger(LispUtil.class);
 
index 06afae3482d07880d7b1d3229f7ed96616381051..54438e46fad1edc847b0ab448fe59d4929329875 100644 (file)
@@ -22,7 +22,11 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.Ipv4Address;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.Ipv6Address;
 
-public class LispNotificationHelper {
+public final class LispNotificationHelper {
+    // Utility class, should not be instantiated
+    private LispNotificationHelper() {
+    }
+
     public static MapRegister convertMapRegister(
             org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.MapRegister mapRegister) {
         return new MapRegisterBuilder().setAuthenticationData(mapRegister.getAuthenticationData())