X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=pce%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Fpce%2Futils%2FPceTestData.java;h=50bd0f457a8d05aaa29c8e671202aba623ca4fe1;hb=2a29f9ab006d8806f77b1a1e073b478e5351cc5f;hp=3e9325e9cd002cc706979af0736c7170ea882b77;hpb=a05bba4c09700f9e2bc0520d5de384477abd0107;p=transportpce.git diff --git a/pce/src/test/java/org/opendaylight/transportpce/pce/utils/PceTestData.java b/pce/src/test/java/org/opendaylight/transportpce/pce/utils/PceTestData.java index 3e9325e9c..50bd0f457 100644 --- a/pce/src/test/java/org/opendaylight/transportpce/pce/utils/PceTestData.java +++ b/pce/src/test/java/org/opendaylight/transportpce/pce/utils/PceTestData.java @@ -8,44 +8,56 @@ package org.opendaylight.transportpce.pce.utils; import java.util.Arrays; +import java.util.Map; import org.opendaylight.transportpce.common.ResponseCodes; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev190624.PathComputationRequestInput; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev190624.PathComputationRequestInputBuilder; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev190624.PathComputationRequestOutput; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev190624.PathComputationRequestOutputBuilder; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev190624.path.computation.request.input.ServiceAEnd; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev190624.path.computation.request.input.ServiceAEndBuilder; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev190624.path.computation.request.input.ServiceZEnd; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev190624.path.computation.request.input.ServiceZEndBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.ConnectionType; -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.configuration.response.common.ConfigurationResponseCommon; -import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.configuration.response.common.ConfigurationResponseCommonBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.sdnc.request.header.SdncRequestHeaderBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.service.port.PortBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceCreateInput; -import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceCreateInputBuilder; -import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.path.description.AToZDirection; -import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.path.description.AToZDirectionBuilder; -import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.path.description.ZToADirection; -import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.path.description.ZToADirectionBuilder; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.PathComputationRequestInput; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.PathComputationRequestInputBuilder; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.PathComputationRequestOutput; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.PathComputationRequestOutputBuilder; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.path.computation.request.input.ServiceAEnd; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.path.computation.request.input.ServiceAEndBuilder; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.path.computation.request.input.ServiceZEnd; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.path.computation.request.input.ServiceZEndBuilder; +import org.opendaylight.yang.gen.v1.http.org.openroadm.common.node.types.rev181130.NodeIdType; +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.configuration.response.common.ConfigurationResponseCommon; +import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.configuration.response.common.ConfigurationResponseCommonBuilder; +import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.sdnc.request.header.SdncRequestHeaderBuilder; +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.openroadm.service.rev190531.ServiceCreateInput; +import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.ServiceCreateInputBuilder; +import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev201210.path.description.AToZDirection; +import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev201210.path.description.AToZDirectionBuilder; +import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev201210.path.description.ZToADirection; +import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev201210.path.description.ZToADirectionBuilder; import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.RoutingConstraintsSp.PceMetric; import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.constraints.sp.co.routing.or.general.CoRoutingBuilder; import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.constraints.sp.co.routing.or.general.GeneralBuilder; import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.constraints.sp.co.routing.or.general.general.DiversityBuilder; import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.constraints.sp.co.routing.or.general.general.ExcludeBuilder; +import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.constraints.sp.co.routing.or.general.general.IncludeBuilder; +import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.constraints.sp.co.routing.or.general.general.LatencyBuilder; +import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.constraints.sp.co.routing.or.general.general.include_.OrderedHops; +import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.constraints.sp.co.routing.or.general.general.include_.OrderedHopsBuilder; import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.diversity.existing.service.contraints.sp.ExistingServiceApplicability; import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.diversity.existing.service.contraints.sp.ExistingServiceApplicabilityBuilder; +import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.ordered.constraints.sp.HopTypeBuilder; +import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.routing.constraints.sp.HardConstraints; import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.routing.constraints.sp.HardConstraintsBuilder; +import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.routing.constraints.sp.SoftConstraints; import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.routing.constraints.sp.SoftConstraintsBuilder; -import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev171016.response.parameters.sp.ResponseParameters; -import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev171016.response.parameters.sp.ResponseParametersBuilder; -import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev171016.response.parameters.sp.response.parameters.PathDescription; -import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev171016.response.parameters.sp.response.parameters.PathDescriptionBuilder; -import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev171016.service.endpoint.sp.RxDirectionBuilder; -import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev171016.service.endpoint.sp.TxDirectionBuilder; -import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev171016.service.handler.header.ServiceHandlerHeader; -import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev171016.service.handler.header.ServiceHandlerHeaderBuilder; +import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev200128.response.parameters.sp.ResponseParameters; +import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev200128.response.parameters.sp.ResponseParametersBuilder; +import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev200128.response.parameters.sp.response.parameters.PathDescription; +import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev200128.response.parameters.sp.response.parameters.PathDescriptionBuilder; +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.ServiceHandlerHeader; +import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev200128.service.handler.header.ServiceHandlerHeaderBuilder; +import org.opendaylight.yangtools.yang.common.Uint16; +import org.opendaylight.yangtools.yang.common.Uint32; + public final class PceTestData { @@ -62,13 +74,220 @@ public final class PceTestData { return input; } + public static PathComputationRequestInput getEmptyPCERequestServiceNameWithRequestId() { + ServiceHandlerHeader serviceHandlerHeader = new ServiceHandlerHeaderBuilder() + .setRequestId("request1") + .build(); + PathComputationRequestInput input = new PathComputationRequestInputBuilder() + .setServiceName("serviceName") + .setServiceHandlerHeader(serviceHandlerHeader) + .build(); + return input; + } + + public static PathComputationRequestInput getEmptyPCERequestServiceNameWithOutRequestId() { + ServiceHandlerHeader serviceHandlerHeader = new ServiceHandlerHeaderBuilder() + .build(); + PathComputationRequestInput input = new PathComputationRequestInputBuilder() + .setServiceName("serviceName") + .setServiceHandlerHeader(serviceHandlerHeader) + .build(); + return input; + } + + public static PathComputationRequestInput getPathComputationRequestInputWithCoRoutingOrGeneral2() { + ServiceHandlerHeader serviceHandlerHeader = new ServiceHandlerHeaderBuilder() + .setRequestId("request1") + .build(); + ServiceAEnd serviceAEnd = new ServiceAEndBuilder() + .setServiceFormat(ServiceFormat.ODU) + .setServiceRate(Uint32.valueOf(100)) + .setClli("clli11") + .setNodeId("XPONDER-2-2") + .setTxDirection(new TxDirectionBuilder().setPort( + new PortBuilder() + .setPortDeviceName("Some port-device-name") + .setPortType("Some port-type") + .setPortName("Some port-name") + .setPortRack("Some port-rack") + .setPortShelf("Some port-shelf") + .setPortSlot("Some port-slot") + .setPortSubSlot("Some port-sub-slot") + .build() + ).build()) + .setRxDirection(new RxDirectionBuilder().setPort( + new PortBuilder() + .setPortDeviceName("Some port-device-name") + .setPortType("Some port-type") + .setPortName("Some port-name") + .setPortRack("Some port-rack") + .setPortShelf("Some port-shelf") + .setPortSlot("Some port-slot") + .setPortSubSlot("Some port-sub-slot") + .build() + ).build()) + .build(); + ServiceZEnd serviceZEnd = new ServiceZEndBuilder() + .setServiceFormat(ServiceFormat.ODU) + .setServiceRate(Uint32.valueOf(0)) + .setClli("Some clli11") + .setNodeId("XPONDER-1-2") + .setTxDirection(new TxDirectionBuilder().setPort( + new PortBuilder() + .setPortDeviceName("Some port-device-name") + .setPortType("Some port-type") + .setPortName("Some port-name") + .setPortRack("Some port-rack") + .setPortShelf("Some port-shelf") + .setPortSlot("Some port-slot") + .setPortSubSlot("Some port-sub-slot") + .build() + ).build()) + .setRxDirection(new RxDirectionBuilder().setPort( + new PortBuilder() + .setPortDeviceName("Some port-device-name") + .setPortType("Some port-type") + .setPortName("Some port-name") + .setPortRack("Some port-rack") + .setPortShelf("Some port-shelf") + .setPortSlot("Some port-slot") + .setPortSubSlot("Some port-sub-slot") + .build() + ).build()) + .build(); + PathComputationRequestInput input = new PathComputationRequestInputBuilder() + .setServiceName("service1") + .setResourceReserve(true) + .setPceMetric(PceMetric.HopCount) + .setLocallyProtectedLinks(true) + .setServiceHandlerHeader(serviceHandlerHeader) + .setServiceAEnd(serviceAEnd) + .setServiceZEnd(serviceZEnd) + .setHardConstraints(new HardConstraintsBuilder() + .setCustomerCode(Arrays.asList("Some customer-code")) + .setCoRoutingOrGeneral(new CoRoutingBuilder() + .setCoRouting(new org.opendaylight.yang.gen.v1.http.org + .transportpce.b.c._interface.routing.constraints.rev171017 + .constraints.sp.co.routing.or.general.co.routing.CoRoutingBuilder() + .setExistingService(Arrays.asList("Some existing-service")) + + .build()) + .build()) + .build()) + .setSoftConstraints(new SoftConstraintsBuilder() + .setCustomerCode(Arrays.asList("Some customer-code")) + .setCoRoutingOrGeneral(new CoRoutingBuilder() + .setCoRouting(new org.opendaylight.yang.gen.v1.http.org + .transportpce.b.c._interface.routing.constraints.rev171017 + .constraints.sp.co.routing.or.general.co.routing.CoRoutingBuilder() + .setExistingService(Arrays.asList("Some existing-service")) + .build()) + .build()) + .build()) + .build(); + return input; + } + + public static PathComputationRequestInput getPathComputationRequestInputWithCoRoutingOrGeneral() { + ServiceHandlerHeader serviceHandlerHeader = new ServiceHandlerHeaderBuilder() + .setRequestId("request1") + .build(); + ServiceAEnd serviceAEnd = new ServiceAEndBuilder() + .setServiceFormat(ServiceFormat.Ethernet) + .setServiceRate(Uint32.valueOf(100)) + .setClli("clli11") + .setNodeId("XPONDER-2-2") + .setTxDirection(new TxDirectionBuilder().setPort( + new PortBuilder() + .setPortDeviceName("Some port-device-name") + .setPortType("Some port-type") + .setPortName("Some port-name") + .setPortRack("Some port-rack") + .setPortShelf("Some port-shelf") + .setPortSlot("Some port-slot") + .setPortSubSlot("Some port-sub-slot") + .build() + ).build()) + .setRxDirection(new RxDirectionBuilder().setPort( + new PortBuilder() + .setPortDeviceName("Some port-device-name") + .setPortType("Some port-type") + .setPortName("Some port-name") + .setPortRack("Some port-rack") + .setPortShelf("Some port-shelf") + .setPortSlot("Some port-slot") + .setPortSubSlot("Some port-sub-slot") + .build() + ).build()) + .build(); + ServiceZEnd serviceZEnd = new ServiceZEndBuilder() + .setServiceFormat(ServiceFormat.Ethernet) + .setServiceRate(Uint32.valueOf(0)) + .setClli("Some clli11") + .setNodeId("XPONDER-1-2") + .setTxDirection(new TxDirectionBuilder().setPort( + new PortBuilder() + .setPortDeviceName("Some port-device-name") + .setPortType("Some port-type") + .setPortName("Some port-name") + .setPortRack("Some port-rack") + .setPortShelf("Some port-shelf") + .setPortSlot("Some port-slot") + .setPortSubSlot("Some port-sub-slot") + .build() + ).build()) + .setRxDirection(new RxDirectionBuilder().setPort( + new PortBuilder() + .setPortDeviceName("Some port-device-name") + .setPortType("Some port-type") + .setPortName("Some port-name") + .setPortRack("Some port-rack") + .setPortShelf("Some port-shelf") + .setPortSlot("Some port-slot") + .setPortSubSlot("Some port-sub-slot") + .build() + ).build()) + .build(); + PathComputationRequestInput input = new PathComputationRequestInputBuilder() + .setServiceName("service1") + .setResourceReserve(true) + .setPceMetric(PceMetric.HopCount) + .setLocallyProtectedLinks(true) + .setServiceHandlerHeader(serviceHandlerHeader) + .setServiceAEnd(serviceAEnd) + .setServiceZEnd(serviceZEnd) + .setHardConstraints(new HardConstraintsBuilder() + .setCustomerCode(Arrays.asList("Some customer-code")) + .setCoRoutingOrGeneral(new CoRoutingBuilder() + .setCoRouting(new org.opendaylight.yang.gen.v1.http.org + .transportpce.b.c._interface.routing.constraints.rev171017 + .constraints.sp.co.routing.or.general.co.routing.CoRoutingBuilder() + .setExistingService(Arrays.asList("Some existing-service")) + + .build()) + .build()) + .build()) + .setSoftConstraints(new SoftConstraintsBuilder() + .setCustomerCode(Arrays.asList("Some customer-code")) + .setCoRoutingOrGeneral(new CoRoutingBuilder() + .setCoRouting(new org.opendaylight.yang.gen.v1.http.org + .transportpce.b.c._interface.routing.constraints.rev171017 + .constraints.sp.co.routing.or.general.co.routing.CoRoutingBuilder() + .setExistingService(Arrays.asList("Some existing-service")) + .build()) + .build()) + .build()) + .build(); + return input; + } + public static PathComputationRequestInput getPCERequest() { ServiceHandlerHeader serviceHandlerHeader = new ServiceHandlerHeaderBuilder() .setRequestId("request1") .build(); ServiceAEnd serviceAEnd = new ServiceAEndBuilder() .setServiceFormat(ServiceFormat.Ethernet) - .setServiceRate(0L) + .setServiceRate(Uint32.valueOf(100)) .setClli("clli11") .setNodeId("XPONDER-2-2") .setTxDirection(new TxDirectionBuilder().setPort( @@ -96,7 +315,7 @@ public final class PceTestData { .build(); ServiceZEnd serviceZEnd = new ServiceZEndBuilder() .setServiceFormat(ServiceFormat.Ethernet) - .setServiceRate(0L) + .setServiceRate(Uint32.valueOf(0)) .setClli("Some clli11") .setNodeId("XPONDER-1-2") .setTxDirection(new TxDirectionBuilder().setPort( @@ -123,32 +342,34 @@ public final class PceTestData { ).build()) .build(); PathComputationRequestInput input = new PathComputationRequestInputBuilder() - .setServiceName("service1") - .setResourceReserve(true) - .setPceMetric(PceMetric.HopCount) - .setLocallyProtectedLinks(true) - .setServiceHandlerHeader(serviceHandlerHeader) - .setServiceAEnd(serviceAEnd) - .setServiceZEnd(serviceZEnd) - .setHardConstraints(new HardConstraintsBuilder() - .setCustomerCode(Arrays.asList("Some customer-code")) - .setCoRoutingOrGeneral(new CoRoutingBuilder() - .setCoRouting(new org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints - .rev171017.constraints.sp.co.routing.or.general.co.routing.CoRoutingBuilder() - .setExistingService(Arrays.asList("Some existing-service")) - .build()) - .build()) - .build()) - .setSoftConstraints(new SoftConstraintsBuilder() - .setCustomerCode(Arrays.asList("Some customer-code")) - .setCoRoutingOrGeneral(new CoRoutingBuilder() - .setCoRouting(new org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints - .rev171017.constraints.sp.co.routing.or.general.co.routing.CoRoutingBuilder() - .setExistingService(Arrays.asList("Some existing-service")) - .build()) - .build()) - .build()) - .build(); + .setServiceName("service1") + .setResourceReserve(true) + .setPceMetric(PceMetric.HopCount) + .setLocallyProtectedLinks(true) + .setServiceHandlerHeader(serviceHandlerHeader) + .setServiceAEnd(serviceAEnd) + .setServiceZEnd(serviceZEnd) + .setHardConstraints(new HardConstraintsBuilder() + .setCustomerCode(Arrays.asList("Some customer-code")) + .setCoRoutingOrGeneral(new CoRoutingBuilder() + .setCoRouting(new org.opendaylight.yang.gen.v1.http.org + .transportpce.b.c._interface.routing.constraints.rev171017 + .constraints.sp.co.routing.or.general.co.routing.CoRoutingBuilder() + .setExistingService(Arrays.asList("Some existing-service")) + .build()) + .build()) + .build()) + .setSoftConstraints(new SoftConstraintsBuilder() + .setCustomerCode(Arrays.asList("Some customer-code")) + .setCoRoutingOrGeneral(new CoRoutingBuilder() + .setCoRouting(new org.opendaylight.yang.gen.v1.http.org + .transportpce.b.c._interface.routing.constraints.rev171017 + .constraints.sp.co.routing.or.general.co.routing.CoRoutingBuilder() + .setExistingService(Arrays.asList("Some existing-service")) + .build()) + .build()) + .build()) + .build(); return input; } @@ -177,23 +398,23 @@ public final class PceTestData { /** * Generate Data for Test 1 request 5-4. * { - "pce:input": { - "pce:service-name": "service 1", - "pce:resource-reserve": "true", - "pce:service-handler-header": { - "pce:request-id": "request 1" - }, - "pce:service-a-end": { - "pce:service-rate": "0", - "pce:node-id": "XPONDER-1-2" - }, - "pce:service-z-end": { - "pce:service-rate": "0", - "pce:node-id": "XPONDER-3-2" - }, - "pce:pce-metric": "hop-count" - } - } + * "pce:input": { + * "pce:service-name": "service 1", + * "pce:resource-reserve": "true", + * "pce:service-handler-header": { + * "pce:request-id": "request 1" + * }, + * "pce:service-a-end": { + * "pce:service-rate": "0", + * "pce:node-id": "XPONDER-1-2" + * }, + * "pce:service-z-end": { + * "pce:service-rate": "0", + * "pce:node-id": "XPONDER-3-2" + * }, + * "pce:pce-metric": "hop-count" + * } + * } * * @return input PathComputationRequestInput data */ @@ -202,11 +423,11 @@ public final class PceTestData { .setRequestId("request 1") .build(); ServiceAEnd serviceAEnd = new ServiceAEndBuilder() - .setServiceRate(0L) + .setServiceRate(Uint32.valueOf(0)) .setNodeId("XPONDER-1-2") .build(); ServiceZEnd serviceZEnd = new ServiceZEndBuilder() - .setServiceRate(0L) + .setServiceRate(Uint32.valueOf(0)) .setNodeId("XPONDER-3-2") .build(); PathComputationRequestInput input = new PathComputationRequestInputBuilder() @@ -222,8 +443,8 @@ public final class PceTestData { /** * Generate Data for Test 1 result 5-4. - * @param wl WaveLength * + * @param wl WaveLength * @return output PathComputationRequestOutput data */ public static PathComputationRequestOutput getPCE_test_result_54(Long wl) { @@ -238,29 +459,30 @@ public final class PceTestData { /** * Generate Data for Test 2 request 5-4. - *{ - "pce:input": { - "pce:service-name": "service 1", - "pce:resource-reserve": "true", - "pce:service-handler-header": { - "pce:request-id": "request 1" - }, - "pce:service-a-end": { - "pce:service-rate": "0", - "pce:node-id": "XPONDER-1-2" - }, - "pce:service-z-end": { - "pce:service-rate": "0", - "pce:node-id": "XPONDER-3-2" - }, - "pce:hard-constraints": { - "pce:exclude_": { - "node-id": [ "OpenROADM-2-2" ] - } - }, - "pce:pce-metric": "hop-count" - } - } + * { + * "pce:input": { + * "pce:service-name": "service 1", + * "pce:resource-reserve": "true", + * "pce:service-handler-header": { + * "pce:request-id": "request 1" + * }, + * "pce:service-a-end": { + * "pce:service-rate": "0", + * "pce:node-id": "XPONDER-1-2" + * }, + * "pce:service-z-end": { + * "pce:service-rate": "0", + * "pce:node-id": "XPONDER-3-2" + * }, + * "pce:hard-constraints": { + * "pce:exclude_": { + * "node-id": [ "OpenROADM-2-2" ] + * } + * }, + * "pce:pce-metric": "hop-count" + * } + * } + * * @return input PathComputationRequestInput data */ public static PathComputationRequestInput getPCE_test2_request_54() { @@ -268,13 +490,18 @@ public final class PceTestData { .setRequestId("request 1") .build(); ServiceAEnd serviceAEnd = new ServiceAEndBuilder() - .setServiceRate(0L) + .setServiceRate(Uint32.valueOf(0)) .setNodeId("XPONDER-1-2") .build(); ServiceZEnd serviceZEnd = new ServiceZEndBuilder() - .setServiceRate(0L) + .setServiceRate(Uint32.valueOf(0)) .setNodeId("XPONDER-3-2") .build(); + OrderedHops orderedHops = new OrderedHopsBuilder() + .setHopNumber(Uint16.valueOf(22)) + .setHopType(new HopTypeBuilder() + .setHopType(new HopTypeBuilder().getHopType()).build()) + .build(); PathComputationRequestInput input = new PathComputationRequestInputBuilder() .setServiceHandlerHeader(serviceHandlerHeader) .setServiceName("service 1") @@ -287,6 +514,10 @@ public final class PceTestData { .setExclude(new ExcludeBuilder() .setNodeId(Arrays.asList("OpenROADM-2-2")) .build()) + .setLatency(new LatencyBuilder().setMaxLatency(Uint32.valueOf(3223)).build()) + .setInclude(new IncludeBuilder() + .setOrderedHops(Map.of(orderedHops.key(),orderedHops)) + .build()) .build()) .build()) .build(); @@ -295,6 +526,7 @@ public final class PceTestData { /** * Generate Data for Test 2 result 5-4. + * * @return output PathComputationRequestOutput data */ public static PathComputationRequestOutput getPCE_test2_result_54() { @@ -309,41 +541,45 @@ public final class PceTestData { /** * Generate Data for Test 2 request 5-4. - *{ - "pce:input": { - "pce:service-name": "service 1", - "pce:resource-reserve": "true", - "pce:service-handler-header": { - "pce:request-id": "request 1" - }, - "pce:service-a-end": { - "pce:service-rate": "0", - "pce:node-id": "XPONDER-1-2" - }, - "pce:service-z-end": { - "pce:service-rate": "0", - "pce:node-id": "XPONDER-3-2" - }, - "pce:hard-constraints": { - "pce:exclude_": { - "node-id": [ "OpenROADM-2-1", "OpenROADM-2-2" ] - } - }, - "pce:pce-metric": "hop-count" - } - } + * { + * "pce:input": { + * "pce:service-name": "service 1", + * "pce:resource-reserve": "true", + * "pce:service-handler-header": { + * "pce:request-id": "request 1" + * }, + * "pce:service-a-end": { + * "pce:service-rate": "0", + * "pce:node-id": "XPONDER-1-2" + * }, + * "pce:service-z-end": { + * "pce:service-rate": "0", + * "pce:node-id": "XPONDER-3-2" + * }, + * "pce:hard-constraints": { + * "pce:exclude_": { + * "node-id": [ "OpenROADM-2-1", "OpenROADM-2-2" ] + * } + * }, + * "pce:pce-metric": "hop-count" + * } + * } + * * @return input PathComputationRequestInput data */ public static PathComputationRequestInput getPCE_test3_request_54() { ServiceHandlerHeader serviceHandlerHeader = new ServiceHandlerHeaderBuilder() .setRequestId("request 1") .build(); + ServiceAEnd serviceAEnd = new ServiceAEndBuilder() - .setServiceRate(0L) + .setServiceRate(Uint32.valueOf(100)) + .setServiceFormat(ServiceFormat.Ethernet) .setNodeId("XPONDER-1-2") .build(); ServiceZEnd serviceZEnd = new ServiceZEndBuilder() - .setServiceRate(0L) + .setServiceRate(Uint32.valueOf(0)) + .setServiceFormat(ServiceFormat.Ethernet) .setNodeId("XPONDER-3-2") .build(); PathComputationRequestInput input = new PathComputationRequestInputBuilder() @@ -366,6 +602,7 @@ public final class PceTestData { /** * Generate Data for Test 3 result 5-4. + * * @return output PathComputationRequestOutput data */ public static PathComputationRequestOutput getPCE_test3_result_54() { @@ -378,16 +615,43 @@ public final class PceTestData { return outputBuilder.build(); } + public static PathComputationRequestInput getPCE_simpletopology_test1_requestSetHardAndSoftConstrains() { + ServiceHandlerHeader serviceHandlerHeader = new ServiceHandlerHeaderBuilder() + .setRequestId("request 1") + .build(); + ServiceAEnd serviceAEnd = new ServiceAEndBuilder() + .setServiceRate(Uint32.valueOf(0)) + .setNodeId("XPONDER-1-2") + .build(); + ServiceZEnd serviceZEnd = new ServiceZEndBuilder() + .setServiceRate(Uint32.valueOf(0)) + .setNodeId("XPONDER-3-2") + .build(); + HardConstraints hardConstrains = new HardConstraintsBuilder().build(); + SoftConstraints softConstraints = new SoftConstraintsBuilder().build(); + PathComputationRequestInput input = new PathComputationRequestInputBuilder() + .setServiceHandlerHeader(serviceHandlerHeader) + .setServiceName("service 1") + .setResourceReserve(true) + .setPceMetric(PceMetric.HopCount) + .setServiceAEnd(serviceAEnd) + .setServiceZEnd(serviceZEnd) + .setHardConstraints(hardConstrains) + .setSoftConstraints(softConstraints) + .build(); + return input; + } + public static PathComputationRequestInput getPCE_simpletopology_test1_request() { ServiceHandlerHeader serviceHandlerHeader = new ServiceHandlerHeaderBuilder() .setRequestId("request 1") .build(); ServiceAEnd serviceAEnd = new ServiceAEndBuilder() - .setServiceRate(0L) + .setServiceRate(Uint32.valueOf(0)) .setNodeId("XPONDER-1-2") .build(); ServiceZEnd serviceZEnd = new ServiceZEndBuilder() - .setServiceRate(0L) + .setServiceRate(Uint32.valueOf(0)) .setNodeId("XPONDER-3-2") .build(); PathComputationRequestInput input = new PathComputationRequestInputBuilder() @@ -421,16 +685,14 @@ public final class PceTestData { } private static PathDescription createPathDescription(long azRate, long azWaveLength, long zaRate, - long zaWaveLength) { + long zaWaveLength) { AToZDirection atozDirection = new AToZDirectionBuilder() - .setRate(azRate) - .setAToZWavelengthNumber(azWaveLength) - .setAToZ(null) + .setRate(Uint32.valueOf(azRate)) + .setAToZWavelengthNumber(Uint32.valueOf(azWaveLength)) .build(); ZToADirection ztoaDirection = new ZToADirectionBuilder() - .setRate(zaRate) - .setZToAWavelengthNumber(zaWaveLength) - .setZToA(null) + .setRate(Uint32.valueOf(zaRate)) + .setZToAWavelengthNumber(Uint32.valueOf(zaWaveLength)) .build(); PathDescription pathDescription = new PathDescriptionBuilder() .setAToZDirection(atozDirection) @@ -441,34 +703,34 @@ public final class PceTestData { /** * Generate Data for Test Diversity test 1 request 5-4. - *{ - "pce:input": { - "pce:service-name": "service 1", - "pce:resource-reserve": "true", - "pce:service-handler-header": { - "pce:request-id": "request 1" - }, - "pce:service-a-end": { - "pce:service-rate": "0", - "pce:node-id": "XPONDER-1-1" - }, - "pce:service-z-end": { - "pce:service-rate": "0", - "pce:node-id": "XPONDER-3-1" - }, - "pce:hard-constraints": { - "pce:diversity": { - "existing-service": ["Path test-1-54"], - "existing-service-applicability": { - "node": "true" - } - } - }, - "pce:pce-metric": "hop-count" - } - } - * @param base Path Computation Request Input base + * { + * "pce:input": { + * "pce:service-name": "service 1", + * "pce:resource-reserve": "true", + * "pce:service-handler-header": { + * "pce:request-id": "request 1" + * }, + * "pce:service-a-end": { + * "pce:service-rate": "0", + * "pce:node-id": "XPONDER-1-1" + * }, + * "pce:service-z-end": { + * "pce:service-rate": "0", + * "pce:node-id": "XPONDER-3-1" + * }, + * "pce:hard-constraints": { + * "pce:diversity": { + * "existing-service": ["Path test-1-54"], + * "existing-service-applicability": { + * "node": "true" + * } + * } + * }, + * "pce:pce-metric": "hop-count" + * } + * } * + * @param base Path Computation Request Input base * @return input PathComputationRequestInput data */ public static PathComputationRequestInput build_diversity_from_request(PathComputationRequestInput base) { @@ -477,11 +739,11 @@ public final class PceTestData { .setNode(true).build(); ServiceAEnd serviceAEnd = new ServiceAEndBuilder() - .setServiceRate(0L) + .setServiceRate(Uint32.valueOf(0)) .setNodeId("XPONDER-1-1") .build(); ServiceZEnd serviceZEnd = new ServiceZEndBuilder() - .setServiceRate(0L) + .setServiceRate(Uint32.valueOf(0)) .setNodeId("XPONDER-3-1") .build(); @@ -491,6 +753,8 @@ public final class PceTestData { .setServiceZEnd(serviceZEnd) .setHardConstraints(new HardConstraintsBuilder() .setCoRoutingOrGeneral(new GeneralBuilder() + .setLatency(new LatencyBuilder() + .setMaxLatency(Uint32.valueOf(3223)).build()) .setDiversity(new DiversityBuilder() .setExistingService(Arrays.asList(base.getServiceName())) .setExistingServiceApplicability(nodeTrue) @@ -503,53 +767,141 @@ public final class PceTestData { public static ServiceCreateInput buildServiceCreateInput() { - ServiceCreateInputBuilder builtInput = new ServiceCreateInputBuilder(); - - org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.service.create.input.ServiceAEnd serviceAEnd = - new org.opendaylight.yang.gen.v1.http.org.openroadm.service - .rev161014.service.create.input.ServiceAEndBuilder() - .setClli("clli") - .setServiceRate((long)0) - .setNodeId("XPONDER-1-2") - .setTxDirection(new org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types - .rev161014.service.endpoint.TxDirectionBuilder() - .setPort(new PortBuilder().build()) - .build()) - .setRxDirection(new org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types - .rev161014.service.endpoint.RxDirectionBuilder() - .setPort(new PortBuilder().build()) - .build()) - .build(); - - - org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.service.create.input.ServiceZEnd serviceZEnd = - new org.opendaylight.yang.gen.v1.http.org.openroadm.service - .rev161014.service.create.input.ServiceZEndBuilder() - .setClli("clli") - .setServiceRate((long)0) - .setNodeId("XPONDER-3-2") - .setTxDirection(new org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types - .rev161014.service.endpoint.TxDirectionBuilder() - .setPort(new PortBuilder().build()) - .build()) - .setRxDirection(new org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types - .rev161014.service.endpoint.RxDirectionBuilder() - .setPort(new PortBuilder().build()) - .build()) - .build(); - - builtInput.setCommonId("commonId"); - builtInput.setConnectionType(ConnectionType.Service); - builtInput.setCustomer("Customer"); - builtInput.setServiceName("service 1"); - builtInput.setServiceAEnd(serviceAEnd); - builtInput.setServiceZEnd(serviceZEnd); - builtInput.setSdncRequestHeader(new SdncRequestHeaderBuilder() - .setRequestId("request 1") - .build()); + org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.service.create.input.ServiceAEnd serviceAEnd = + new org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531 + .service.create.input.ServiceAEndBuilder() + .setClli("clli") + .setServiceRate(Uint32.valueOf(0)) + .setNodeId(new NodeIdType("XPONDER-1-2")) + .setTxDirection(new org.opendaylight.yang.gen.v1.http.org + .openroadm.common.service.types.rev190531.service.endpoint.TxDirectionBuilder() + .setPort(new PortBuilder().build()) + .build()) + .setRxDirection(new org.opendaylight.yang.gen.v1.http.org + .openroadm.common.service.types.rev190531.service.endpoint.RxDirectionBuilder() + .setPort(new PortBuilder().build()) + .build()) + .build(); + org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.service.create.input.ServiceZEnd serviceZEnd = + new org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531 + .service.create.input.ServiceZEndBuilder() + .setClli("clli") + .setServiceRate(Uint32.valueOf(0)) + .setNodeId(new NodeIdType("XPONDER-3-2")) + .setTxDirection(new org.opendaylight.yang.gen.v1.http.org + .openroadm.common.service.types.rev190531.service.endpoint.TxDirectionBuilder() + .setPort(new PortBuilder().build()) + .build()) + .setRxDirection(new org.opendaylight.yang.gen.v1.http.org + .openroadm.common.service.types.rev190531.service.endpoint.RxDirectionBuilder() + .setPort(new PortBuilder().build()) + .build()) + .build(); + ServiceCreateInputBuilder builtInput = new ServiceCreateInputBuilder() + .setCommonId("commonId") + .setConnectionType(ConnectionType.Service) + .setCustomer("Customer") + .setServiceName("service 1") + .setServiceAEnd(serviceAEnd) + .setServiceZEnd(serviceZEnd) + .setSdncRequestHeader(new SdncRequestHeaderBuilder() + .setRequestId("request 1") + .build()); return builtInput.build(); } + + public static PathComputationRequestInput getGnpyPCERequest(String nodeA, String nodeZ) { + ServiceHandlerHeader serviceHandlerHeader = new ServiceHandlerHeaderBuilder() + .setRequestId("request1") + .build(); + ServiceAEnd serviceAEnd = new ServiceAEndBuilder() + .setServiceFormat(ServiceFormat.Ethernet) + .setServiceRate(Uint32.valueOf(100)) + .setClli("clli11") + .setNodeId(nodeA) + .setTxDirection(new TxDirectionBuilder().setPort( + new PortBuilder() + .setPortDeviceName("Some port-device-name") + .setPortType("Some port-type") + .setPortName("Some port-name") + .setPortRack("Some port-rack") + .setPortShelf("Some port-shelf") + .setPortSlot("Some port-slot") + .setPortSubSlot("Some port-sub-slot") + .build() + ).build()) + .setRxDirection(new RxDirectionBuilder().setPort( + new PortBuilder() + .setPortDeviceName("Some port-device-name") + .setPortType("Some port-type") + .setPortName("Some port-name") + .setPortRack("Some port-rack") + .setPortShelf("Some port-shelf") + .setPortSlot("Some port-slot") + .setPortSubSlot("Some port-sub-slot") + .build() + ).build()) + .build(); + ServiceZEnd serviceZEnd = new ServiceZEndBuilder() + .setServiceFormat(ServiceFormat.Ethernet) + .setServiceRate(Uint32.valueOf(0)) + .setClli("Some clli11") + .setNodeId(nodeZ) + .setTxDirection(new TxDirectionBuilder().setPort( + new PortBuilder() + .setPortDeviceName("Some port-device-name") + .setPortType("Some port-type") + .setPortName("Some port-name") + .setPortRack("Some port-rack") + .setPortShelf("Some port-shelf") + .setPortSlot("Some port-slot") + .setPortSubSlot("Some port-sub-slot") + .build() + ).build()) + .setRxDirection(new RxDirectionBuilder().setPort( + new PortBuilder() + .setPortDeviceName("Some port-device-name") + .setPortType("Some port-type") + .setPortName("Some port-name") + .setPortRack("Some port-rack") + .setPortShelf("Some port-shelf") + .setPortSlot("Some port-slot") + .setPortSubSlot("Some port-sub-slot") + .build() + ).build()) + .build(); + PathComputationRequestInput input = new PathComputationRequestInputBuilder() + .setServiceName("service1") + .setResourceReserve(true) + .setPceMetric(PceMetric.HopCount) + .setLocallyProtectedLinks(true) + .setServiceHandlerHeader(serviceHandlerHeader) + .setServiceAEnd(serviceAEnd) + .setServiceZEnd(serviceZEnd) + .setHardConstraints(new HardConstraintsBuilder() + .setCustomerCode(Arrays.asList("Some customer-code")) + .setCoRoutingOrGeneral(new CoRoutingBuilder() + .setCoRouting(new org.opendaylight.yang.gen.v1.http.org + .transportpce.b.c._interface.routing.constraints.rev171017 + .constraints.sp.co.routing.or.general.co.routing.CoRoutingBuilder() + .setExistingService(Arrays.asList("Some existing-service")) + .build()) + .build()) + .build()) + .setSoftConstraints(new SoftConstraintsBuilder() + .setCustomerCode(Arrays.asList("Some customer-code")) + .setCoRoutingOrGeneral(new CoRoutingBuilder() + .setCoRouting(new org.opendaylight.yang.gen.v1.http.org + .transportpce.b.c._interface.routing.constraints.rev171017 + .constraints.sp.co.routing.or.general.co.routing.CoRoutingBuilder() + .setExistingService(Arrays.asList("Some existing-service")) + .build()) + .build()) + .build()) + .build(); + return input; + } }