[ONOS-6409] Minor modification to fix the expectation count while posting flow objectives
Change-Id: I9d882884afcacaff9179e9d8998687d13511d73a
diff --git a/apps/test/demo/src/main/java/org/onosproject/demo/DemoInstaller.java b/apps/test/demo/src/main/java/org/onosproject/demo/DemoInstaller.java
index ad29b6a..53dea1f 100644
--- a/apps/test/demo/src/main/java/org/onosproject/demo/DemoInstaller.java
+++ b/apps/test/demo/src/main/java/org/onosproject/demo/DemoInstaller.java
@@ -66,7 +66,7 @@
import org.onosproject.net.flow.FlowRuleService;
import org.onosproject.net.flow.TrafficSelector;
import org.onosproject.net.flow.TrafficTreatment;
-import org.onosproject.net.flow.criteria.Criteria;
+import org.onosproject.net.flow.criteria.Criterion;
import org.onosproject.net.flow.instructions.Instructions;
import org.onosproject.net.flowobjective.FlowObjectiveService;
import org.onosproject.net.flowobjective.DefaultFilteringObjective;
@@ -725,7 +725,7 @@
private ObjectNode installForward() {
ObjectNode node = mapper.createObjectNode();
long addStartTime = System.currentTimeMillis();
- int totalFlowObj = (flowObjPerDevice * deviceService.getDeviceCount());
+ int totalFlowObj = (flowObjPerDevice * forwardingObj.keySet().size());
CountDownLatch installationLatch = new CountDownLatch(totalFlowObj);
for (DeviceId dId : forwardingObj.keySet()) {
Set<ForwardingObjective.Builder> fObjs = forwardingObj.get(dId);
@@ -740,7 +740,7 @@
}
try {
- installationLatch.await();
+ installationLatch.await(10, TimeUnit.SECONDS);
} catch (InterruptedException e) {
Thread.interrupted();
}
@@ -769,10 +769,14 @@
for (int i = 0; i < flowObjPerDevice; i++) {
TrafficTreatment.Builder tbuilder = DefaultTrafficTreatment.builder();
tbuilder.add(Instructions.createOutput(PortNumber.portNumber(2)));
+ TrafficSelector.Builder sbuilder = DefaultTrafficSelector.builder();
+ sbuilder.matchInPort(PortNumber.portNumber(i + 3));
+ sbuilder.matchEthDst(MacAddress.valueOf("12:00:00:00:00:10"));
FilteringObjective.Builder fobBuilder = DefaultFilteringObjective.builder();
fobBuilder.fromApp(appId)
- .addCondition(Criteria.matchEthType(2))
+ .withKey(sbuilder.build().getCriterion(Criterion.Type.IN_PORT))
+ .addCondition(sbuilder.build().getCriterion(Criterion.Type.ETH_DST))
.withMeta(tbuilder.build())
.permit()
.withPriority(i + 1)
@@ -790,7 +794,7 @@
private ObjectNode installFilter() {
ObjectNode node = mapper.createObjectNode();
long addStartTime = System.currentTimeMillis();
- int totalFlowObj = (flowObjPerDevice * deviceService.getDeviceCount());
+ int totalFlowObj = (flowObjPerDevice * filteringObj.keySet().size());
CountDownLatch installationLatch = new CountDownLatch(totalFlowObj);
for (DeviceId dId : filteringObj.keySet()) {
Set<FilteringObjective.Builder> fObjs = filteringObj.get(dId);
@@ -805,7 +809,7 @@
}
try {
- installationLatch.await();
+ installationLatch.await(10, TimeUnit.SECONDS);
} catch (InterruptedException e) {
Thread.interrupted();
}