Sonar suggestion - Don't use a mutable collection in a public interface

Change-Id: I6f73f665cff20e558a8ec2f3cd319e4d9b00bb58
diff --git a/apps/openstacknetworking/api/src/main/java/org/onosproject/openstacknetworking/api/Constants.java b/apps/openstacknetworking/api/src/main/java/org/onosproject/openstacknetworking/api/Constants.java
index 84e1787..6635559 100644
--- a/apps/openstacknetworking/api/src/main/java/org/onosproject/openstacknetworking/api/Constants.java
+++ b/apps/openstacknetworking/api/src/main/java/org/onosproject/openstacknetworking/api/Constants.java
@@ -15,7 +15,7 @@
  */
 package org.onosproject.openstacknetworking.api;
 
-import com.google.common.collect.Maps;
+import com.google.common.collect.ImmutableMap;
 import org.onlab.packet.MacAddress;
 
 import java.util.Map;
@@ -44,12 +44,10 @@
     public static final String DIRECT = "direct";
     public static final String PCISLOT = "pci_slot";
 
-    public static final Map<String, String> PORT_NAME_PREFIX_MAP = createPortNamePrefixMap();
+    private static final Map<String, String> PORT_NAME_PREFIX_MAP = createPortNamePrefixMap();
     private static Map<String, String> createPortNamePrefixMap() {
-        Map<String, String> portNamePrefixMap = Maps.newHashMap();
         //Additional pci vendor information will be added
-        portNamePrefixMap.put(CAVIUM_PCI_VENDOR_INFO, PORT_NAME_PREFIX_CAVIUM);
-        return portNamePrefixMap;
+        return ImmutableMap.of(CAVIUM_PCI_VENDOR_INFO, PORT_NAME_PREFIX_CAVIUM);
     }
 
     public static final int PRIORITY_TUNNEL_TAG_RULE = 30000;
@@ -85,4 +83,8 @@
     public static final int FORWARDING_TABLE = 50;
     public static final int GW_COMMON_TABLE = 0;
     public static final int ERROR_TABLE = 100;
+
+    public static Map<String, String> portNamePrefixMap() {
+        return PORT_NAME_PREFIX_MAP;
+    }
 }
\ No newline at end of file
diff --git a/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackNetworkManager.java b/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackNetworkManager.java
index 359d34e..76f164f 100644
--- a/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackNetworkManager.java
+++ b/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackNetworkManager.java
@@ -71,7 +71,7 @@
 import static org.onosproject.net.AnnotationKeys.PORT_NAME;
 import static org.onosproject.openstacknetworking.api.Constants.DIRECT;
 import static org.onosproject.openstacknetworking.api.Constants.PCISLOT;
-import static org.onosproject.openstacknetworking.api.Constants.PORT_NAME_PREFIX_MAP;
+import static org.onosproject.openstacknetworking.api.Constants.portNamePrefixMap;
 import static org.onosproject.openstacknetworking.util.OpenstackNetworkingUtil.getIntfNameFromPciAddress;
 import static org.slf4j.LoggerFactory.getLogger;
 
@@ -339,7 +339,7 @@
     }
 
     private boolean isDirectPort(String portName) {
-        return PORT_NAME_PREFIX_MAP.values().stream().filter(p -> portName.startsWith(p)).findAny().isPresent();
+        return portNamePrefixMap().values().stream().filter(p -> portName.startsWith(p)).findAny().isPresent();
     }
 
     @Override
diff --git a/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackSwitchingHostProvider.java b/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackSwitchingHostProvider.java
index e7492bf..62fd2b4 100644
--- a/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackSwitchingHostProvider.java
+++ b/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackSwitchingHostProvider.java
@@ -64,7 +64,7 @@
 import static org.onlab.util.Tools.groupedThreads;
 import static org.onosproject.net.AnnotationKeys.PORT_NAME;
 import static org.onosproject.openstacknetworking.api.Constants.OPENSTACK_NETWORKING_APP_ID;
-import static org.onosproject.openstacknetworking.api.Constants.PORT_NAME_PREFIX_MAP;
+import static org.onosproject.openstacknetworking.api.Constants.portNamePrefixMap;
 import static org.onosproject.openstacknetworking.impl.HostBasedInstancePort.ANNOTATION_CREATE_TIME;
 import static org.onosproject.openstacknetworking.impl.HostBasedInstancePort.ANNOTATION_NETWORK_ID;
 import static org.onosproject.openstacknetworking.impl.HostBasedInstancePort.ANNOTATION_PORT_ID;
@@ -236,7 +236,7 @@
         }
 
         private boolean isDirectPort(String portName) {
-            return PORT_NAME_PREFIX_MAP.values().stream().filter(p -> portName.startsWith(p)).findAny().isPresent();
+            return portNamePrefixMap().values().stream().filter(p -> portName.startsWith(p)).findAny().isPresent();
         }
 
         @Override
@@ -346,7 +346,7 @@
                         processPortAdded(port);
                     });
 
-            PORT_NAME_PREFIX_MAP.values().forEach(portNamePrefix -> {
+            portNamePrefixMap().values().forEach(portNamePrefix -> {
                 deviceService.getPorts(osNode.intgBridge()).stream()
                         .filter(port -> port.annotations().value(PORT_NAME)
                                 .startsWith(portNamePrefix) &&
diff --git a/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/util/OpenstackNetworkingUtil.java b/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/util/OpenstackNetworkingUtil.java
index 58f3c33..f3c5d92 100644
--- a/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/util/OpenstackNetworkingUtil.java
+++ b/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/util/OpenstackNetworkingUtil.java
@@ -51,7 +51,7 @@
 import static com.fasterxml.jackson.databind.SerializationFeature.INDENT_OUTPUT;
 import static org.onosproject.openstacknetworking.api.Constants.PCISLOT;
 import static org.onosproject.openstacknetworking.api.Constants.PCI_VENDOR_INFO;
-import static org.onosproject.openstacknetworking.api.Constants.PORT_NAME_PREFIX_MAP;
+import static org.onosproject.openstacknetworking.api.Constants.portNamePrefixMap;
 
 /**
  * An utility that used in openstack networking app.
@@ -229,7 +229,7 @@
             log.error("Failed to retrieve the interface name because of no pci vendor information from the port");
             return null;
         }
-        String portNamePrefix = PORT_NAME_PREFIX_MAP.get(vendorInfoForPort);
+        String portNamePrefix = portNamePrefixMap().get(vendorInfoForPort);
 
         if (functionNumDecimal.equals(ZERO_FUNCTION_NUMBER)) {
             intfName = portNamePrefix + busNumDecimal + PREFIX_DEVICE_NUMBER + deviceNumDecimal;