- nodeUuid = this.uuidMap.get(this.ietfNodeId + "+OTSi");
- // iNep creation on otsi node
- for (int i = 0; i < oorNetworkPortList.size(); i++) {
- Uuid nepUuid1 = new Uuid(UUID.randomUUID().toString());
- this.uuidMap.put("iOTSi+" + oorNetworkPortList.get(i).getTpId().getValue(), nepUuid1);
- List<Name> onedNames = Arrays.asList(new NameBuilder().setValueName(new StringBuilder("iNodeEdgePoint_")
- .append(i + 1).toString()).setValue(oorNetworkPortList.get(i).getTpId().getValue()).build());
- OwnedNodeEdgePoint onep = createNep(oorNetworkPortList.get(i), onedNames,
- LayerProtocolName.PHOTONICMEDIA, LayerProtocolName.PHOTONICMEDIA, true, "iOTSi+");
- onepl.add(onep);
- }
- // eNep creation on otsi node
- for (int i = 0; i < oorNetworkPortList.size(); i++) {
- Uuid nepUuid2 = new Uuid(UUID.randomUUID().toString());
- this.uuidMap.put("eOTSi+" + oorNetworkPortList.get(i).getTpId().getValue(), nepUuid2);
- List<Name> onedNames = Arrays.asList(new NameBuilder().setValueName(new StringBuilder("eNodeEdgePoint_")
- .append(i + 1).toString()).setValue(oorNetworkPortList.get(i).getTpId().getValue()).build());
- OwnedNodeEdgePoint onep = createNep(oorNetworkPortList.get(i), onedNames,
- LayerProtocolName.PHOTONICMEDIA, LayerProtocolName.PHOTONICMEDIA, true, "eOTSi+");
- onepl.add(onep);
- }
- // create NodeRuleGroup
- for (TerminationPoint tp : this.oorNetworkPortList) {
- List<org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.topology.rev181210.node.rule.group
- .NodeEdgePoint> nepList = new ArrayList<>();
- org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.topology.rev181210.node.rule.group
- .NodeEdgePoint inep = new org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.topology.rev181210
- .node.rule.group.NodeEdgePointBuilder()
- .setTopologyUuid(tapiTopoUuid)
- .setNodeUuid(this.uuidMap.get(this.ietfNodeId + "+OTSi"))
- .setNodeEdgePointUuid(this.uuidMap.get("iOTSi+" + tp.getTpId().getValue()))
- .build();
+ nodeUuid = getNodeUuid4Phonic(onepl, nodeRuleGroupList, ruleList);
+ } else {
+ LOG.error("Undefined LayerProtocolName for {} node {}", nodeNames.get(0).getValueName(),
+ nodeNames.get(0).getValue());
+ }
+
+ // create tapi node
+
+ return new NodeBuilder()
+ .setUuid(nodeUuid)
+ .setName(nodeNames)
+ .setLayerProtocolName(layerProtocols)
+ .setAdministrativeState(AdministrativeState.UNLOCKED)
+ .setOperationalState(OperationalState.ENABLED)
+ .setLifecycleState(LifecycleState.INSTALLED)
+ .setOwnedNodeEdgePoint(onepl)
+ .setNodeRuleGroup(nodeRuleGroupList)
+ .build();
+ }
+
+ private Uuid getNodeUuid4Phonic(List<OwnedNodeEdgePoint> onepl, List<NodeRuleGroup> nodeRuleGroupList,
+ List<Rule> ruleList) {
+ Uuid nodeUuid;
+ nodeUuid = this.uuidMap.get(this.ietfNodeId + OT_SI);
+ // iNep creation on otsi node
+ for (int i = 0; i < oorNetworkPortList.size(); i++) {
+ Uuid nepUuid1 = new Uuid(UUID.randomUUID().toString());
+ this.uuidMap.put(I_OT_SI + oorNetworkPortList.get(i).getTpId().getValue(), nepUuid1);
+ List<Name> onedNames = Arrays.asList(
+ new NameBuilder()
+ .setValueName(new StringBuilder("iNodeEdgePoint_").append(i + 1).toString())
+ .setValue(oorNetworkPortList.get(i).getTpId().getValue())
+ .build());
+
+ OwnedNodeEdgePoint onep = createNep(oorNetworkPortList.get(i), onedNames,
+ LayerProtocolName.PHOTONICMEDIA, LayerProtocolName.PHOTONICMEDIA, true, I_OT_SI);
+ onepl.add(onep);
+ }
+ // eNep creation on otsi node
+ for (int i = 0; i < oorNetworkPortList.size(); i++) {
+ Uuid nepUuid2 = new Uuid(UUID.randomUUID().toString());
+ this.uuidMap.put(E_OT_SI + oorNetworkPortList.get(i).getTpId().getValue(), nepUuid2);
+ List<Name> onedNames = Arrays.asList(
+ new NameBuilder()
+ .setValueName(new StringBuilder("eNodeEdgePoint_").append(i + 1).toString())
+ .setValue(oorNetworkPortList.get(i).getTpId().getValue())
+ .build());
+
+ OwnedNodeEdgePoint onep = createNep(oorNetworkPortList.get(i), onedNames,
+ LayerProtocolName.PHOTONICMEDIA, LayerProtocolName.PHOTONICMEDIA, true, E_OT_SI);
+ onepl.add(onep);
+ }
+ // create NodeRuleGroup
+ for (TerminationPoint tp : this.oorNetworkPortList) {
+ List<org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.topology.rev181210.node.rule.group
+ .NodeEdgePoint> nepList = new ArrayList<>();
+ org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.topology.rev181210.node.rule.group
+ .NodeEdgePoint inep = new org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.topology.rev181210
+ .node.rule.group.NodeEdgePointBuilder()
+ .setTopologyUuid(tapiTopoUuid)
+ .setNodeUuid(this.uuidMap.get(this.ietfNodeId + OT_SI))
+ .setNodeEdgePointUuid(this.uuidMap.get(I_OT_SI + tp.getTpId().getValue()))
+ .build();
+ org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.topology.rev181210.node.rule.group
+ .NodeEdgePoint enep = new org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.topology.rev181210
+ .node.rule.group.NodeEdgePointBuilder()
+ .setTopologyUuid(tapiTopoUuid)
+ .setNodeUuid(this.uuidMap.get(this.ietfNodeId + OT_SI))
+ .setNodeEdgePointUuid(this.uuidMap.get(E_OT_SI + tp.getTpId().getValue()))
+ .build();
+ nepList.add(inep);
+ nepList.add(enep);
+ NodeRuleGroup nodeRuleGroup = new NodeRuleGroupBuilder()
+ .setUuid(new Uuid(UUID.randomUUID().toString()))
+ .setRule(ruleList)
+ .setNodeEdgePoint(nepList)
+ .build();
+ nodeRuleGroupList.add(nodeRuleGroup);
+ }
+ return nodeUuid;
+ }
+
+ private Uuid getNodeUuid4Dsr(List<OwnedNodeEdgePoint> onepl, List<NodeRuleGroup> nodeRuleGroupList,
+ List<Rule> ruleList) {
+ Uuid nodeUuid;
+ nodeUuid = this.uuidMap.get(this.ietfNodeId + PLUS_DSR);
+ // client nep creation on DSR/ODU node
+ for (int i = 0; i < oorClientPortList.size(); i++) {
+ Uuid nepUuid = new Uuid(UUID.randomUUID().toString());
+ this.uuidMap.put(DSR_PLUS + oorClientPortList.get(i).getTpId().getValue(), nepUuid);
+ List<Name> onedNames = Arrays.asList(
+ new NameBuilder()
+ .setValueName(new StringBuilder("NodeEdgePoint_C").append(i + 1).toString())
+ .setValue(oorClientPortList.get(i).getTpId().getValue())
+ .build());
+
+ OwnedNodeEdgePoint onep = createNep(oorClientPortList.get(i), onedNames, LayerProtocolName.ETH,
+ LayerProtocolName.DSR, true, DSR_PLUS);
+ onepl.add(onep);
+ }
+ // network nep creation on DSR/ODU node
+ for (int i = 0; i < oorNetworkPortList.size(); i++) {
+ Uuid nepUuid = new Uuid(UUID.randomUUID().toString());
+ this.uuidMap.put(DSR_PLUS + oorNetworkPortList.get(i).getTpId().getValue(), nepUuid);
+ List<Name> onedNames = Arrays.asList(
+ new NameBuilder()
+ .setValueName(new StringBuilder("NodeEdgePoint_N").append(i + 1).toString())
+ .setValue(oorNetworkPortList.get(i).getTpId().getValue())
+ .build());
+
+ OwnedNodeEdgePoint onep = createNep(oorNetworkPortList.get(i), onedNames, LayerProtocolName.ODU,
+ LayerProtocolName.DSR, true, DSR_PLUS);
+ onepl.add(onep);
+ }
+ // create NodeRuleGroup
+ for (NonBlockingList nbl : this.oorOduSwitchingPool.getNonBlockingList()) {
+ List<org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.topology.rev181210.node.rule.group
+ .NodeEdgePoint> nepList = new ArrayList<>();
+ for (TpId tp : nbl.getTpList()) {