import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
+import java.util.HashMap;
import java.util.List;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.ServiceFormat;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.service.port.PortBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.AToZDirection;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.AToZDirectionBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.ZToADirection;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.ZToADirectionBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.atoz.direction.AToZ;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.atoz.direction.AToZBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.atoz.direction.AToZKey;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.ztoa.direction.ZToA;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.ztoa.direction.ZToABuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.ztoa.direction.ZToAKey;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.ResourceBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.resource.resource.Link;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.resource.resource.LinkBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.resource.resource.NodeBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.resource.resource.TerminationPoint;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.resource.resource.TerminationPointBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.resource.resource.link.LinkIdentifierBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.resource.resource.node.NodeIdentifierBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.resource.resource.termination.point.TerminationPointIdentifierBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev170426.service.endpoint.sp.RxDirectionBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev170426.service.endpoint.sp.TxDirectionBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev170426.service.handler.header.ServiceHandlerHeaderBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev170426.ServiceImplementationRequestInput;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev170426.ServiceImplementationRequestInputBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev170426.service.implementation.request.input.PathDescription;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev170426.service.implementation.request.input.PathDescriptionBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev170426.service.implementation.request.input.ServiceAEndBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev170426.service.implementation.request.input.ServiceZEndBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev170907.olm.renderer.input.Nodes;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev170907.olm.renderer.input.NodesBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev170907.olm.renderer.input.NodesKey;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.renderer.rev170228.RendererRollbackInput;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.renderer.rev170228.RendererRollbackInputBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.renderer.rev170228.ServicePathInput;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.renderer.rev170228.ServicePathInputBuilder;
+import java.util.Map;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev210618.RendererRollbackInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev210618.RendererRollbackInputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev210618.ServicePathInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev210618.ServicePathInputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestInputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.service.implementation.request.input.PathDescription;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.service.implementation.request.input.PathDescriptionBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.service.implementation.request.input.ServiceAEndBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.service.implementation.request.input.ServiceZEndBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.ConnectionType;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.service.port.PortBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.service.format.rev190531.ServiceFormat;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.path.description.AToZDirection;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.path.description.AToZDirectionBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.path.description.ZToADirection;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.path.description.ZToADirectionBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.path.description.atoz.direction.AToZ;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.path.description.atoz.direction.AToZBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.path.description.atoz.direction.AToZKey;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.path.description.ztoa.direction.ZToA;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.path.description.ztoa.direction.ZToABuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.path.description.ztoa.direction.ZToAKey;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.pce.resource.ResourceBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.pce.resource.resource.resource.Link;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.pce.resource.resource.resource.LinkBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.pce.resource.resource.resource.Node;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.pce.resource.resource.resource.NodeBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.pce.resource.resource.resource.TerminationPoint;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.pce.resource.resource.resource.TerminationPointBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev200128.service.endpoint.sp.RxDirectionBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev200128.service.endpoint.sp.TxDirectionBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev200128.service.handler.header.ServiceHandlerHeaderBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev210618.optical.renderer.nodes.Nodes;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev210618.optical.renderer.nodes.NodesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev210618.optical.renderer.nodes.NodesKey;
+import org.opendaylight.yangtools.yang.common.Uint32;
public final class ServiceDataUtils {
public static ServicePathInput buildServicePathInputs(List<Nodes> nodes) {
ServicePathInputBuilder servicePathInputBuilder = new ServicePathInputBuilder();
servicePathInputBuilder.setNodes(nodes);
- servicePathInputBuilder.setServiceName("Service 1").setWaveNumber(20L);
+ servicePathInputBuilder.setServiceName("Service 1").setWaveNumber(Uint32.valueOf(20));
return servicePathInputBuilder.build();
}
List<Nodes> nodes = new ArrayList<>();
nodes.add(ServiceDataUtils.createNode("node1", "src", "dst"));
servicePathInputBuilder.setNodes(nodes);
- servicePathInputBuilder.setServiceName("Service 1").setWaveNumber(20L);
+ servicePathInputBuilder.setServiceName("Service 1").setWaveNumber(Uint32.valueOf(20));
return servicePathInputBuilder.build();
}
public static RendererRollbackInput buildRendererRollbackInput() {
RendererRollbackInputBuilder rendererRollbackInputBuilder = new RendererRollbackInputBuilder();
- rendererRollbackInputBuilder.setNodeInterface(new ArrayList<>());
+ rendererRollbackInputBuilder.setNodeInterface(Map.of());
return rendererRollbackInputBuilder.build();
}
.setServiceName("service 1").setPathDescription(createPathDescriptionTerminationPointResource(tpId))
.setServiceHandlerHeader(new ServiceHandlerHeaderBuilder().setRequestId("Request 1").build())
.setServiceAEnd(getServiceAEndBuild(tpId).build())
- .setServiceZEnd(getServiceZEndBuild(tpId).build());
+ .setServiceZEnd(getServiceZEndBuild(tpId).build())
+ .setConnectionType(ConnectionType.Service);
return builder.build();
}
}*/
private static PathDescription createPathDescriptionInvalidResource() {
- List<AToZ> atoZList = new ArrayList<AToZ>();
- org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource
- .resource.resource.NodeBuilder nodesBuilder = new NodeBuilder();
- org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource
- .resource.resource.Node node1 = nodesBuilder.setNodeIdentifier(new NodeIdentifierBuilder()
- .setNodeId("XPONDER-1-2").build()).build();
- org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource
- .resource.resource.Node node2 = nodesBuilder.setNodeIdentifier(new NodeIdentifierBuilder()
- .setNodeId("XPONDER-1-2").build()).build();
+ Map<AToZKey,AToZ> atoZMap = new HashMap<>();
+ Node node = new NodeBuilder().setNodeId("XPONDER-1-2").build();
AToZ atoZ = new AToZBuilder().setId("1").withKey(new AToZKey("1")).setResource(new ResourceBuilder()
- .setResource(node1).build()).build();
- AToZ atoZ2 = new AToZBuilder().setId("1").withKey(new AToZKey("1")).setResource(new ResourceBuilder()
- .setResource(node2).build()).build();
- atoZList.add(atoZ);
- atoZList.add(atoZ2);
+ .setResource(node).build()).build();
+ atoZMap.put(atoZ.key(),atoZ);
AToZDirection atozDirection = new AToZDirectionBuilder()
- .setRate(20L)
- .setAToZWavelengthNumber(20L)
- .setAToZ(atoZList)
+ .setRate(Uint32.valueOf(20))
+ .setAToZWavelengthNumber(Uint32.valueOf(32))
+ .setAToZ(atoZMap)
.build();
- List<ZToA> ztoAList = new ArrayList<ZToA>();
+ Map<ZToAKey,ZToA> ztoAMap = new HashMap<>();
ZToA ztoA = new ZToABuilder().setId("1").withKey(new ZToAKey("1")).setResource(new ResourceBuilder()
- .setResource(node1).build()).build();
- ZToA ztoA2 = new ZToABuilder().setId("1").withKey(new ZToAKey("1")).setResource(new ResourceBuilder()
- .setResource(node2).build()).build();
- ztoAList.add(ztoA);
- ztoAList.add(ztoA2);
+ .setResource(node).build()).build();
+ ztoAMap.put(ztoA.key(),ztoA);
ZToADirection ztoaDirection = new ZToADirectionBuilder()
- .setRate(20L)
- .setZToAWavelengthNumber(20L)
- .setZToA(ztoAList)
+ .setRate(Uint32.valueOf(20))
+ .setZToAWavelengthNumber(Uint32.valueOf(20))
+ .setZToA(ztoAMap)
.build();
PathDescriptionBuilder builder = new PathDescriptionBuilder()
.setAToZDirection(atozDirection)
}
public static PathDescription createPathDescriptionTerminationPointResource(String tpId) {
- List<AToZ> atoZList = new ArrayList<AToZ>();
+ Map<AToZKey,AToZ> atoZMap = new HashMap<>();
TerminationPointBuilder terminationPointBuilder = new TerminationPointBuilder();
List<String> nodeIds = Arrays.asList("XPONDER-1-2", "XPONDER-2-3");
Integer atozId = 1;
for (String nodeId : nodeIds) {
for (String otherNodeId : nodeIds) {
TerminationPoint terminationPoint = terminationPointBuilder
- .setTerminationPointIdentifier(new TerminationPointIdentifierBuilder().setNodeId(nodeId + '-'
+ .setTpNodeId(nodeId + '-'
+ tpId)
- .setTpId(tpId).build())
- .build();
+ .setTpId(tpId).build();
AToZ atoZ = new AToZBuilder().setId(atozId.toString())
.withKey(new AToZKey(atozId.toString())).setResource(new ResourceBuilder()
.setResource(terminationPoint).build()).build();
atozId++;
- atoZList.add(atoZ);
+ atoZMap.put(atoZ.key(),atoZ);
}
}
AToZDirection atozDirection = new AToZDirectionBuilder()
- .setRate(20L)
- .setAToZWavelengthNumber(20L)
- .setAToZ(atoZList)
+ .setRate(Uint32.valueOf(20))
+ .setAToZWavelengthNumber(Uint32.valueOf(20))
+ .setAToZ(atoZMap)
.build();
Collections.reverse(nodeIds);
- List<ZToA> ztoAList = new ArrayList<ZToA>();
+ Map<ZToAKey,ZToA> ztoAMap = new HashMap<>();
Integer ztoaId = 1;
for (String nodeId : nodeIds) {
for (String otherNodeId : nodeIds) {
TerminationPoint terminationPoint = terminationPointBuilder
- .setTerminationPointIdentifier(new TerminationPointIdentifierBuilder().setNodeId(nodeId + '-'
+ .setTpNodeId(nodeId + '-'
+ tpId)
- .setTpId(tpId).build())
- .build();
+ .setTpId(tpId).build();
ZToA ztoA = new ZToABuilder().setId(ztoaId.toString())
.withKey(new ZToAKey(ztoaId.toString())).setResource(new ResourceBuilder()
.setResource(terminationPoint).build()).build();
ztoaId++;
- ztoAList.add(ztoA);
+ ztoAMap.put(ztoA.key(),ztoA);
}
}
ZToADirection ztoaDirection = new ZToADirectionBuilder()
- .setRate(20L)
- .setZToAWavelengthNumber(20L)
- .setZToA(ztoAList)
+ .setRate(Uint32.valueOf(20))
+ .setZToAWavelengthNumber(Uint32.valueOf(20))
+ .setZToA(ztoAMap)
.build();
PathDescriptionBuilder builder = new PathDescriptionBuilder()
.setAToZDirection(atozDirection)
}
private static PathDescription createPathDescriptionLinkResource() {
- List<AToZ> atoZList = new ArrayList<AToZ>();
- org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource
- .resource.resource.NodeBuilder nodesBuilder = new NodeBuilder();
- Link link1 = new LinkBuilder().setLinkIdentifier(new LinkIdentifierBuilder().setLinkId("link 1").build())
- .build();
- Link link2 = new LinkBuilder().setLinkIdentifier(new LinkIdentifierBuilder().setLinkId("link 2").build())
- .build();
+ Map<AToZKey,AToZ> atoZMap = new HashMap<>();
+ Link link1 = new LinkBuilder().setLinkId("link 1").build();
+ Link link2 = new LinkBuilder().setLinkId("link 2").build();
AToZ atoZ = new AToZBuilder().setId("1").withKey(new AToZKey("1")).setResource(new ResourceBuilder()
.setResource(link1).build()).build();
AToZ atoZ2 = new AToZBuilder().setId("1").withKey(new AToZKey("1")).setResource(new ResourceBuilder()
.setResource(link2).build()).build();
- atoZList.add(atoZ);
- atoZList.add(atoZ2);
+ atoZMap.put(atoZ.key(),atoZ);
+ atoZMap.put(atoZ2.key(),atoZ2);
AToZDirection atozDirection = new AToZDirectionBuilder()
- .setRate(20L)
- .setAToZWavelengthNumber(20L)
- .setAToZ(atoZList)
+ .setRate(Uint32.valueOf(20))
+ .setAToZWavelengthNumber(Uint32.valueOf(20))
+ .setAToZ(atoZMap)
.build();
- List<ZToA> ztoAList = new ArrayList<ZToA>();
+ Map<ZToAKey,ZToA> ztoAMap = new HashMap<>();
ZToA ztoA = new ZToABuilder().setId("1").withKey(new ZToAKey("1")).setResource(new ResourceBuilder()
.setResource(link1).build()).build();
ZToA ztoA2 = new ZToABuilder().setId("1").withKey(new ZToAKey("1")).setResource(new ResourceBuilder()
.setResource(link2).build()).build();
- ztoAList.add(ztoA);
- ztoAList.add(ztoA2);
+ ztoAMap.put(ztoA.key(),ztoA);
+ ztoAMap.put(ztoA2.key(),ztoA2);
ZToADirection ztoaDirection = new ZToADirectionBuilder()
- .setRate(20L)
- .setZToAWavelengthNumber(20L)
- .setZToA(ztoAList)
+ .setRate(Uint32.valueOf(20))
+ .setZToAWavelengthNumber(Uint32.valueOf(20))
+ .setZToA(ztoAMap)
.build();
PathDescriptionBuilder builder = new PathDescriptionBuilder()
.setAToZDirection(atozDirection)
public static ServiceAEndBuilder getServiceAEndBuild(String tpId) {
return new ServiceAEndBuilder()
- .setClli("clli").setServiceFormat(ServiceFormat.OC).setServiceRate((long) 1).setNodeId("XPONDER-1-2-"
+ .setClli("clli").setServiceFormat(ServiceFormat.OC)
+ .setServiceRate(Uint32.valueOf(1)).setNodeId("XPONDER-1-2-"
+ tpId)
.setTxDirection(
new TxDirectionBuilder()
.setPort(new PortBuilder().setPortDeviceName("device name").setPortName("port name")
.setPortRack("port rack").setPortShelf("port shelf").setPortSlot("port slot")
.setPortSubSlot("port subslot").setPortType("port type").build())
- .build());
+ .build())
+ .setServiceRate(Uint32.valueOf(100))
+ .setServiceFormat(ServiceFormat.Ethernet);
}
public static ServiceZEndBuilder getServiceZEndBuild(String tpId) {
return new ServiceZEndBuilder()
- .setClli("clli").setServiceFormat(ServiceFormat.OC).setServiceRate((long) 1).setNodeId("XPONDER-2-3-"
+ .setClli("clli").setServiceFormat(ServiceFormat.OC)
+ .setServiceRate(Uint32.valueOf(1)).setNodeId("XPONDER-2-3-"
+ tpId)
.setTxDirection(
new TxDirectionBuilder()