- if ((PortQual.XpdrNetwork.getIntValue() == port.getPortQual().getIntValue()
- || PortQual.SwitchNetwork.getIntValue() == port.getPortQual().getIntValue())
- && port.getPortDirection().getIntValue() == Direction.Bidirectional.getIntValue()) {
- String lcp = "XPDR" + xponderNb + "-" + StringConstants.NETWORK_TOKEN + line;
- lcpMap.put(circuitPackName + '+' + port.getPortName(), lcp);
- mappingMap.put(lcp, createXpdrMappingObject(nodeId, port, circuitPackName, lcp, null, null,
- null, xponderType));
- line++;
- } else if ((PortQual.XpdrNetwork.getIntValue() == port.getPortQual().getIntValue()
- || PortQual.SwitchNetwork.getIntValue() == port.getPortQual().getIntValue())
- && port.getPortDirection().getIntValue() != Direction.Bidirectional.getIntValue()
- && port.getPartnerPort() != null
- && port.getPartnerPort().getCircuitPackName() != null
- && port.getPartnerPort().getPortName() != null) {
- if (lcpMap.containsKey(circuitPackName + '+' + port.getPortName())) {
- continue;
- }
- String lcp1 = "XPDR" + xponderNb + "-" + StringConstants.NETWORK_TOKEN + line;
-
- Optional<CircuitPacks> cpOpt = circuitPackList.stream().filter(cP -> cP.getCircuitPackName()
- .equals(port.getPartnerPort().getCircuitPackName())).findFirst();
- if (cpOpt.isPresent()) {
- Optional<Ports> poOpt = cpOpt.get().getPorts().stream().filter(p -> p.getPortName().equals(
- port.getPartnerPort().getPortName().toString())).findFirst();
- if (poOpt.isPresent()) {
- Ports port2 = poOpt.get();
- if (checkPartnerPort(circuitPackName, port, port2)) {
- String lcp2 = new StringBuilder("XPDR").append(xponderNb).append("-").append(
- StringConstants.NETWORK_TOKEN).append(line + 1).toString();
- if (!lcpMap.containsKey(lcp1) && !lcpMap.containsKey(lcp2)) {
- lcpMap.put(circuitPackName + '+' + port.getPortName(), lcp1);
- lcpMap.put(cpOpt.get().getCircuitPackName() + '+' + port2.getPortName(), lcp2);
- mappingMap.put(lcp1, createXpdrMappingObject(nodeId, port, circuitPackName,
- lcp1, lcp2, null, null, xponderType));
- mappingMap.put(lcp2, createXpdrMappingObject(nodeId, port2, cpOpt.get()
- .getCircuitPackName(), lcp2, lcp1, null, null, xponderType));
- } else {
- LOG.warn("mapping already exists for {} or {}", lcp1, lcp2);
- }
- line += 2;
- } else {
- LOG.error("port {} on {} is not a correct partner port of {} on {}", port2
- .getPortName(), cpOpt.get().getCircuitPackName(), port.getPortName(),
- circuitPackName);
- }
- } else {
+
+ switch (port.getPortQual()) {
+
+ case XpdrClient:
+ case SwitchClient:
+ String lcp0 = "XPDR" + xponderNb + "-" + StringConstants.CLIENT_TOKEN + client;
+ lcpMap.put(circuitPackName + '+' + port.getPortName(), lcp0);
+ mappingMap.put(lcp0,
+ createXpdrMappingObject(nodeId, port, circuitPackName, lcp0, null, null, null, null));
+ client++;
+ //continue;
+ break;
+
+ case XpdrNetwork:
+ case SwitchNetwork:
+ if (port.getPortDirection().getIntValue() == Direction.Bidirectional.getIntValue()) {
+ String lcp = "XPDR" + xponderNb + "-" + StringConstants.NETWORK_TOKEN + line;
+ lcpMap.put(circuitPackName + '+' + port.getPortName(), lcp);
+ mappingMap.put(lcp,
+ createXpdrMappingObject(nodeId, port, circuitPackName, lcp, null, null, null,
+ xponderType));
+ 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 {}",
+ port.getPortName(), circuitPackName, nodeId);
+ continue;
+ }
+
+ if (lcpMap.containsKey(circuitPackName + '+' + port.getPortName())) {
+ continue;
+ }
+
+ Optional<CircuitPacks> cpOpt = circuitPackList.stream()
+ .filter(
+ cP -> cP.getCircuitPackName().equals(port.getPartnerPort().getCircuitPackName()))
+ .findFirst();
+ if (!cpOpt.isPresent()) {
+ LOG.error("Error fetching circuit-pack {} for {}",
+ port.getPartnerPort().getCircuitPackName(), nodeId);
+ continue;
+ }
+
+ Optional<Ports> poOpt = cpOpt.get().nonnullPorts().values().stream()
+ .filter(p -> p.getPortName().equals(port.getPartnerPort().getPortName().toString()))
+ .findFirst();
+ if (!poOpt.isPresent()) {