X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=pce%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Fpce%2Fgraph%2FPceGraph.java;h=dbd4111b2e838f38ceaa802167f5d87ca11333ef;hb=1f526e901ac556cff9914b3c001c852db3b555e4;hp=0a2d75fc67a6f43f1fe15e68ae6fe3c88344cc79;hpb=fdc2f0f2a9e6d88925223877993981eb5ceffd99;p=transportpce.git diff --git a/pce/src/main/java/org/opendaylight/transportpce/pce/graph/PceGraph.java b/pce/src/main/java/org/opendaylight/transportpce/pce/graph/PceGraph.java index 0a2d75fc6..dbd4111b2 100644 --- a/pce/src/main/java/org/opendaylight/transportpce/pce/graph/PceGraph.java +++ b/pce/src/main/java/org/opendaylight/transportpce/pce/graph/PceGraph.java @@ -29,6 +29,7 @@ import org.opendaylight.transportpce.pce.networkanalyzer.PceLink; import org.opendaylight.transportpce.pce.networkanalyzer.PceNode; import org.opendaylight.transportpce.pce.networkanalyzer.PceResult; import org.opendaylight.transportpce.pce.networkanalyzer.PceResult.LocalCause; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev230925.PceConstraintMode; import org.opendaylight.yang.gen.v1.http.org.openroadm.common.state.types.rev191129.State; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.NodeId; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.LinkId; @@ -55,6 +56,7 @@ public class PceGraph { private Double margin = null; PceConstraints pceHardConstraints; PceConstraints pceSoftConstraints; + private PceConstraintMode pceConstraintMode; // results private PceResult pceResult = null; @@ -69,7 +71,8 @@ public class PceGraph { public PceGraph(PceNode aendNode, PceNode zendNode, Map allPceNodes, Map allPceLinks, PceConstraints pceHardConstraints, PceConstraints pceSoftConstraints, - PceResult pceResult, String serviceType, NetworkTransactionService networkTransactionService) { + PceResult pceResult, String serviceType, NetworkTransactionService networkTransactionService, + PceConstraintMode mode) { super(); this.apceNode = aendNode; this.zpceNode = zendNode; @@ -80,6 +83,7 @@ public class PceGraph { this.pceSoftConstraints = pceSoftConstraints; this.serviceType = serviceType; this.networkTransactionService = networkTransactionService; + this.pceConstraintMode = mode; LOG.info("In GraphCalculator: A and Z = {} / {} ", aendNode, zendNode); LOG.debug("In GraphCalculator: allPceNodes size {}, nodes {} ", allPceNodes.size(), allPceNodes); @@ -104,7 +108,8 @@ public class PceGraph { GraphPath path = entry.getValue(); LOG.info("validating path n° {} - {}", entry.getKey(), path.getVertexList()); PostAlgoPathValidator papv = new PostAlgoPathValidator(networkTransactionService); - pceResult = papv.checkPath(path, allPceNodes, allPceLinks, pceResult, pceHardConstraints, serviceType); + pceResult = papv.checkPath( + path, allPceNodes, allPceLinks, pceResult, pceHardConstraints, serviceType, pceConstraintMode); this.margin = papv.getTpceCalculatedMargin(); if (ResponseCodes.RESPONSE_OK.equals(pceResult.getResponseCode())) { LOG.info("Path is validated");