Adding emptyTreatment() and emptySelector()
Note: There was a change that adds a DROP action to
a traffic treatment if there are no other actions present.
To get a traffic treatment without the drop rule, use
emptyTreatment()
Change-Id: I1f23ed5e1fa7519eb94fcafa85facbad815d5e9c
diff --git a/core/api/src/main/java/org/onosproject/net/flow/DefaultTrafficSelector.java b/core/api/src/main/java/org/onosproject/net/flow/DefaultTrafficSelector.java
index d67e63a..5675d2e 100644
--- a/core/api/src/main/java/org/onosproject/net/flow/DefaultTrafficSelector.java
+++ b/core/api/src/main/java/org/onosproject/net/flow/DefaultTrafficSelector.java
@@ -15,23 +15,23 @@
*/
package org.onosproject.net.flow;
+import com.google.common.base.MoreObjects;
+import com.google.common.collect.ImmutableSet;
+import org.onlab.packet.Ip6Address;
+import org.onlab.packet.IpPrefix;
+import org.onlab.packet.MacAddress;
+import org.onlab.packet.MplsLabel;
+import org.onlab.packet.VlanId;
+import org.onosproject.net.PortNumber;
+import org.onosproject.net.flow.criteria.Criteria;
+import org.onosproject.net.flow.criteria.Criterion;
+
+import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
import java.util.Set;
-import org.onosproject.net.PortNumber;
-import org.onosproject.net.flow.criteria.Criteria;
-import org.onosproject.net.flow.criteria.Criterion;
-import org.onlab.packet.IpPrefix;
-import org.onlab.packet.Ip6Address;
-import org.onlab.packet.MacAddress;
-import org.onlab.packet.MplsLabel;
-import org.onlab.packet.VlanId;
-
-import com.google.common.base.MoreObjects;
-import com.google.common.collect.ImmutableSet;
-
/**
* Default traffic selector implementation.
*/
@@ -39,6 +39,9 @@
private final Set<Criterion> criteria;
+ private static final TrafficSelector EMPTY
+ = new DefaultTrafficSelector(Collections.emptySet());
+
/**
* Creates a new traffic selector with the specified criteria.
*
@@ -98,6 +101,15 @@
}
/**
+ * Returns an empty traffic selector.
+ *
+ * @return empty traffic selector
+ */
+ public static TrafficSelector emptySelector() {
+ return EMPTY;
+ }
+
+ /**
* Returns a new traffic selector builder primed to produce entities
* patterned after the supplied selector.
*