Add a portmapping method to create Xpdr LCP names
[transportpce.git] / common / src / main / java / org / opendaylight / transportpce / common / mapping / PortMappingVersion221.java
index 3af8fc344725e875e855c9ae47de6d2e55594851..7e58023ed528c4e0c904b81c3b2e77b30ad43ddb 100644 (file)
@@ -255,7 +255,7 @@ public class PortMappingVersion221 {
                     switch (port.getPortQual()) {
 
                         case XpdrClient:
-                            String lcp0 = "XPDR1-" + StringConstants.CLIENT_TOKEN + client;
+                            String lcp0 = createXpdrLogicalConnectionPort(1, client, StringConstants.CLIENT_TOKEN);
                             lcpMap.put(circuitPackName + '+' + port.getPortName(), lcp0);
                             mappingMap.put(lcp0,
                                 createXpdrMappingObject(nodeId, port, circuitPackName, lcp0, null, null, null, null));
@@ -265,7 +265,7 @@ public class PortMappingVersion221 {
 
                         case XpdrNetwork:
                             if (port.getPortDirection().getIntValue() == Direction.Bidirectional.getIntValue()) {
-                                String lcp = "XPDR1-" + StringConstants.NETWORK_TOKEN + line;
+                                String lcp = createXpdrLogicalConnectionPort(1, line, StringConstants.NETWORK_TOKEN);
                                 lcpMap.put(circuitPackName + '+' + port.getPortName(), lcp);
                                 mappingMap.put(lcp,
                                     createXpdrMappingObject(nodeId, port, circuitPackName, lcp, null, null, null, null)
@@ -273,8 +273,6 @@ public class PortMappingVersion221 {
                                 line++;
                                 continue;
                             }
-                            // TODO PortDirection treatment here is similar to the one in createPpPortMapping.
-                            //      Some code alignment must be considered.
 
                             if (!checkPartnerPortNotNull(port)) {
                                 LOG.warn("Error in the configuration of port {} of {} for {}",
@@ -309,11 +307,8 @@ public class PortMappingVersion221 {
                                     circuitPackName);
                                 continue;
                             }
-                            String lcp1 = "XPDR1-" + StringConstants.NETWORK_TOKEN + line;
-                            String lcp2 = new StringBuilder("XPDR1-")
-                                .append(StringConstants.NETWORK_TOKEN)
-                                .append(line + 1)
-                                .toString();
+                            String lcp1 = createXpdrLogicalConnectionPort(1, line, StringConstants.NETWORK_TOKEN);
+                            String lcp2 = createXpdrLogicalConnectionPort(1, line + 1, StringConstants.NETWORK_TOKEN);
                             if (lcpMap.containsKey(lcp1) || lcpMap.containsKey(lcp2)) {
                                 LOG.warn("mapping already exists for {} or {}", lcp1, lcp2);
                                 line += 2;
@@ -381,7 +376,8 @@ public class PortMappingVersion221 {
 
                         case XpdrClient:
                         case SwitchClient:
-                            String lcp0 = "XPDR" + xponderNb + "-" + StringConstants.CLIENT_TOKEN + client;
+                            String lcp0 =
+                                    createXpdrLogicalConnectionPort(xponderNb, client, StringConstants.CLIENT_TOKEN);
                             lcpMap.put(circuitPackName + '+' + port.getPortName(), lcp0);
                             mappingMap.put(lcp0,
                                 createXpdrMappingObject(nodeId, port, circuitPackName, lcp0, null, null, null, null));
@@ -392,7 +388,8 @@ public class PortMappingVersion221 {
                         case XpdrNetwork:
                         case SwitchNetwork:
                             if (port.getPortDirection().getIntValue() == Direction.Bidirectional.getIntValue()) {
-                                String lcp = "XPDR" + xponderNb + "-" + StringConstants.NETWORK_TOKEN + line;
+                                String lcp =
+                                    createXpdrLogicalConnectionPort(xponderNb, line, StringConstants.NETWORK_TOKEN);
                                 lcpMap.put(circuitPackName + '+' + port.getPortName(), lcp);
                                 mappingMap.put(lcp,
                                     createXpdrMappingObject(nodeId, port, circuitPackName, lcp, null, null, null,
@@ -400,8 +397,6 @@ public class PortMappingVersion221 {
                                 line++;
                                 continue;
                             }
-                            // TODO PortDirection treatment here is similar to the one in createPpPortMapping.
-                            //      Some code alignment must be considered.
 
                             if (!checkPartnerPortNotNull(port)) {
                                 LOG.warn("Error in the configuration of port {} of {} for {}",
@@ -438,13 +433,10 @@ public class PortMappingVersion221 {
                                     circuitPackName);
                                 continue;
                             }
-                            String lcp1 = "XPDR" + xponderNb + "-" + StringConstants.NETWORK_TOKEN + line;
-                            String lcp2 = new StringBuilder("XPDR")
-                                .append(xponderNb)
-                                .append("-")
-                                .append(StringConstants.NETWORK_TOKEN)
-                                .append(line + 1)
-                                .toString();
+                            String lcp1 =
+                                    createXpdrLogicalConnectionPort(xponderNb, line, StringConstants.NETWORK_TOKEN);
+                            String lcp2 =
+                                    createXpdrLogicalConnectionPort(xponderNb, line + 1, StringConstants.NETWORK_TOKEN);
                             if (lcpMap.containsKey(lcp1) || lcpMap.containsKey(lcp2)) {
                                 LOG.warn("mapping already exists for {} or {}", lcp1, lcp2);
                                 line += 2;
@@ -710,6 +702,14 @@ public class PortMappingVersion221 {
         return null;
     }
 
+    private String createXpdrLogicalConnectionPort(int xponderNb, int lcpNb, String token) {
+        return new StringBuilder("XPDR").append(xponderNb)
+                .append("-")
+                .append(token).append(lcpNb)
+                .toString();
+    }
+
+
     private Map<Integer, Degree> getDegreesMap(String deviceId, Info ordmInfo) {
         Map<Integer, Degree> degrees = new HashMap<>();