import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.HashMap;
-import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Optional;
-import java.util.Set;
import java.util.concurrent.ExecutionException;
import java.util.stream.Collectors;
import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
import org.opendaylight.transportpce.common.service.ServiceTypes;
import org.opendaylight.transportpce.pce.PceComplianceCheck;
import org.opendaylight.transportpce.pce.constraints.PceConstraints;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.PathComputationRequestInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220114.mc.capabilities.McCapabilities;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529.Link1;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529.Node1;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev220615.PathComputationRequestInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.mc.capabilities.McCapabilities;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev211210.Link1;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev211210.Node1;
+//import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529.Link1;
+//import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529.Node1;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.state.types.rev191129.State;
import org.opendaylight.yang.gen.v1.http.org.openroadm.device.types.rev191129.NodeTypes;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev200529.OpenroadmLinkType;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev200529.OpenroadmNodeType;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev211210.OpenroadmLinkType;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev211210.OpenroadmNodeType;
+//import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev200529.OpenroadmLinkType;
+//import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev200529.OpenroadmNodeType;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.NetworkId;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.Networks;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.NodeId;
///////////// Intermediate data/////////////////
private List<PceLink> addLinks = new ArrayList<>();
private List<PceLink> dropLinks = new ArrayList<>();
- private HashSet<NodeId> azSrgs = new HashSet<>();
+ private List<NodeId> azSrgs = new ArrayList<>();
private PceNode aendPceNode = null;
private PceNode zendPceNode = null;
// this List serves calculation of ZtoA path description
// TODO maybe better solution is possible
private Map<LinkId, PceLink> allPceLinks = new HashMap<>();
- private Set<LinkId> linksToExclude = new HashSet<>();
+ private List<LinkId> linksToExclude = new ArrayList<>();
private PceResult returnStructure;
private PortMapping portMapping;
for (McCapabilities mcCapabitility : mcCapabilities) {
if (mcCapabitility.getMcNodeName().contains("XPDR")
&& mcCapabitility.getSlotWidthGranularity() != null) {
- return mcCapabitility.getSlotWidthGranularity().getValue();
+ return mcCapabitility.getSlotWidthGranularity().getValue().decimalValue();
}
if (mcCapabitility.getMcNodeName().contains(moduleName)
&& mcCapabitility.getSlotWidthGranularity() != null) {
- return mcCapabitility.getSlotWidthGranularity().getValue();
+ return mcCapabitility.getSlotWidthGranularity().getValue().decimalValue();
}
}
return GridConstant.SLOT_WIDTH_50;
for (McCapabilities mcCapabitility : mcCapabilities) {
if (mcCapabitility.getMcNodeName().contains("XPDR")
&& mcCapabitility.getCenterFreqGranularity() != null) {
- return mcCapabitility.getCenterFreqGranularity().getValue();
+ return mcCapabitility.getCenterFreqGranularity().getValue().decimalValue();
}
if (mcCapabitility.getMcNodeName().contains(moduleName)
&& mcCapabitility.getCenterFreqGranularity() != null) {
- return mcCapabitility.getCenterFreqGranularity().getValue();
+ return mcCapabitility.getCenterFreqGranularity().getValue().decimalValue();
}
}
return GridConstant.SLOT_WIDTH_50;