Adding auto-layout to the access-null simulation.
Enhancing the scale test for flows and routes.

Change-Id: Ib91720b409872e44eaff4263cf229bffa2e292fc
diff --git a/providers/null/src/main/java/org/onosproject/provider/nil/NullFlowRuleProvider.java b/providers/null/src/main/java/org/onosproject/provider/nil/NullFlowRuleProvider.java
index beaeb6a..f118f09 100644
--- a/providers/null/src/main/java/org/onosproject/provider/nil/NullFlowRuleProvider.java
+++ b/providers/null/src/main/java/org/onosproject/provider/nil/NullFlowRuleProvider.java
@@ -74,12 +74,18 @@
 
     @Override
     public void applyFlowRule(FlowRule... flowRules) {
-        throw new UnsupportedOperationException("Cannot apply individual flow rules");
+        for (FlowRule rule : flowRules) {
+            flowTable.getOrDefault(rule.deviceId(), Sets.newConcurrentHashSet())
+                .add(new DefaultFlowEntry(rule));
+        }
     }
 
     @Override
     public void removeFlowRule(FlowRule... flowRules) {
-        throw new UnsupportedOperationException("Cannot remove individual flow rules");
+        for (FlowRule rule : flowRules) {
+            flowTable.getOrDefault(rule.deviceId(), Sets.newConcurrentHashSet())
+                    .remove(new DefaultFlowEntry(rule));
+        }
     }
 
     @Override