[ONOS-4164] todo removal
Change-Id: Iaed7a5d2960529ecd548897b546a8804bbc9da27
diff --git a/apps/pce/app/src/main/java/org/onosproject/pce/cli/PceSetupPathCommand.java b/apps/pce/app/src/main/java/org/onosproject/pce/cli/PceSetupPathCommand.java
index 497905f..a14e6e1 100644
--- a/apps/pce/app/src/main/java/org/onosproject/pce/cli/PceSetupPathCommand.java
+++ b/apps/pce/app/src/main/java/org/onosproject/pce/cli/PceSetupPathCommand.java
@@ -24,9 +24,12 @@
import org.apache.karaf.shell.commands.Command;
import org.apache.karaf.shell.commands.Option;
+import org.onlab.util.DataRateUnit;
import org.onosproject.cli.AbstractShellCommand;
import org.onosproject.net.DeviceId;
+import org.onosproject.net.intent.constraint.BandwidthConstraint;
import org.onosproject.net.intent.Constraint;
+import org.onosproject.pce.pceservice.constraint.CostConstraint;
import org.onosproject.pce.pceservice.LspType;
import org.onosproject.pce.pceservice.api.PceService;
@@ -71,21 +74,33 @@
DeviceId srcDevice = DeviceId.deviceId(src);
DeviceId dstDevice = DeviceId.deviceId(dst);
- LspType lspType = LspType.values()[type];
List<Constraint> listConstrnt = new LinkedList<>();
- // add cost
- //TODO: need to uncomment below lines once CostConstraint is ready
- //CostConstraint.Type costType = CostConstraint.Type.values()[cost];
- //listConstrnt.add(CostConstraint.of(costType));
+ // LSP type validation
+ if ((type < 0) || (type > 2)) {
+ error("The LSP type value can be PCE tunnel with signalling in network (0), " +
+ "PCE tunnel without signalling in network with segment routing (1), " +
+ "PCE tunnel without signalling in network (2).");
+ return;
+ }
+ LspType lspType = LspType.values()[type];
- // add bandwidth
+ // Add bandwidth
// bandwidth default data rate unit is in BPS
if (bandwidth != 0.0) {
- //TODO: need to uncomment below line once BandwidthConstraint is ready
- //listConstrnt.add(LocalBandwidthConstraint.of(bandwidth, DataRateUnit.valueOf("BPS")));
+ listConstrnt.add(BandwidthConstraint.of(bandwidth, DataRateUnit.valueOf("BPS")));
}
+ // Add cost
+ // Cost validation
+ if ((cost < 1) || (cost > 2)) {
+ error("The cost attribute value either IGP cost(1) or TE cost(2).");
+ return;
+ }
+ // Here 'cost - 1' indicates the index of enum
+ CostConstraint.Type costType = CostConstraint.Type.values()[cost - 1];
+ listConstrnt.add(CostConstraint.of(costType));
+
if (!service.setupPath(srcDevice, dstDevice, name, listConstrnt, lspType)) {
error("Path creation failed.");
}
diff --git a/apps/pce/app/src/main/java/org/onosproject/pce/cli/PceUpdatePathCommand.java b/apps/pce/app/src/main/java/org/onosproject/pce/cli/PceUpdatePathCommand.java
index 5ea8686..6ef5fc1 100644
--- a/apps/pce/app/src/main/java/org/onosproject/pce/cli/PceUpdatePathCommand.java
+++ b/apps/pce/app/src/main/java/org/onosproject/pce/cli/PceUpdatePathCommand.java
@@ -24,8 +24,12 @@
import org.apache.karaf.shell.commands.Command;
import org.apache.karaf.shell.commands.Option;
+import org.onlab.util.DataRateUnit;
import org.onosproject.cli.AbstractShellCommand;
+import org.onosproject.incubator.net.tunnel.TunnelId;
+import org.onosproject.net.intent.constraint.BandwidthConstraint;
import org.onosproject.net.intent.Constraint;
+import org.onosproject.pce.pceservice.constraint.CostConstraint;
import org.onosproject.pce.pceservice.api.PceService;
import org.slf4j.Logger;
@@ -56,23 +60,25 @@
PceService service = get(PceService.class);
List<Constraint> constrntList = new LinkedList<>();
- // Assign cost
- if (cost != 0) {
- //TODO: need to uncomment below lines once CostConstraint is ready
- //CostConstraint.Type costType = CostConstraint.Type.values()[Integer.valueOf(cost)];
- //constrntList.add(CostConstraint.of(costType));
- }
-
// Assign bandwidth. Data rate unit is in Bps.
if (bandwidth != 0.0) {
- //TODO: need to uncomment below line once BandwidthConstraint is ready
- //constrntList.add(LocalBandwidthConstraint.of(Double.valueOf(bandwidth), DataRateUnit.valueOf("BPS")));
+ constrntList.add(BandwidthConstraint.of(Double.valueOf(bandwidth), DataRateUnit.valueOf("BPS")));
}
- //TODO: need to uncomment below lines once updatePath method is added to PceService
- //if (null == service.updatePath(PcePathId.of(id), constrntList)) {
- // error("Path updation failed.");
- // return;
- //}
+ // Assign cost
+ if (cost != 0) {
+ // Cost validation
+ if ((cost < 1) || (cost > 2)) {
+ error("The cost attribute value is either IGP cost(1) or TE cost(2).");
+ return;
+ }
+ CostConstraint.Type costType = CostConstraint.Type.values()[cost - 1];
+ constrntList.add(CostConstraint.of(costType));
+ }
+
+ if (!service.updatePath(TunnelId.valueOf(id), constrntList)) {
+ error("Path updation failed.");
+ return;
+ }
}
}