aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/onos/core/api/src/main/java/org/onosproject/net/packet')
-rw-r--r--framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketPriority.java4
-rw-r--r--framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketProcessor.java14
-rw-r--r--framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketService.java20
-rw-r--r--framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketStore.java6
4 files changed, 32 insertions, 12 deletions
diff --git a/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketPriority.java b/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketPriority.java
index 68c0a838..3eab9386 100644
--- a/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketPriority.java
+++ b/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketPriority.java
@@ -34,7 +34,7 @@ public enum PacketPriority {
private final int priorityValue;
- private PacketPriority(int priorityValue) {
+ PacketPriority(int priorityValue) {
this.priorityValue = priorityValue;
}
@@ -50,4 +50,4 @@ public enum PacketPriority {
public String toString() {
return String.valueOf(priorityValue);
}
-} \ No newline at end of file
+}
diff --git a/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketProcessor.java b/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketProcessor.java
index 98886775..0eba1b4e 100644
--- a/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketProcessor.java
+++ b/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketProcessor.java
@@ -22,9 +22,9 @@ import static com.google.common.base.Preconditions.checkArgument;
*/
public interface PacketProcessor {
- static final int ADVISOR_MAX = Integer.MAX_VALUE / 3;
- static final int DIRECTOR_MAX = (Integer.MAX_VALUE / 3) * 2;
- static final int OBSERVER_MAX = Integer.MAX_VALUE;
+ int ADVISOR_MAX = Integer.MAX_VALUE / 3;
+ int DIRECTOR_MAX = (Integer.MAX_VALUE / 3) * 2;
+ int OBSERVER_MAX = Integer.MAX_VALUE;
/**
* Returns a priority in the ADVISOR range, where processors can take early action and
@@ -38,7 +38,7 @@ public interface PacketProcessor {
static int advisor(int priority) {
int overallPriority = priority + 1;
checkArgument(overallPriority > 0 && overallPriority <= ADVISOR_MAX,
- "Priority not within ADVISOR range");
+ "Priority not within ADVISOR range");
return overallPriority;
}
@@ -53,7 +53,7 @@ public interface PacketProcessor {
static int director(int priority) {
int overallPriority = ADVISOR_MAX + priority + 1;
checkArgument(overallPriority > ADVISOR_MAX && overallPriority <= DIRECTOR_MAX,
- "Priority not within DIRECTOR range");
+ "Priority not within DIRECTOR range");
return overallPriority;
}
@@ -68,8 +68,8 @@ public interface PacketProcessor {
*/
static int observer(int priority) {
int overallPriority = DIRECTOR_MAX + priority + 1;
- checkArgument(overallPriority > DIRECTOR_MAX && overallPriority <= OBSERVER_MAX,
- "Priority not within OBSERVER range");
+ checkArgument(overallPriority > DIRECTOR_MAX,
+ "Priority not within OBSERVER range");
return overallPriority;
}
diff --git a/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketService.java b/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketService.java
index 06c416ec..98f4d8e0 100644
--- a/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketService.java
+++ b/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketService.java
@@ -15,9 +15,13 @@
*/
package org.onosproject.net.packet;
+import com.google.common.annotations.Beta;
import org.onosproject.core.ApplicationId;
import org.onosproject.net.flow.TrafficSelector;
+import java.util.List;
+import java.util.Map;
+
/**
* Service for intercepting data plane packets and for emitting synthetic
* outbound packets.
@@ -48,6 +52,15 @@ public interface PacketService {
void removeProcessor(PacketProcessor processor);
/**
+ * Returns priority bindings of all registered packet processors.
+ *
+ * @return list of existing packet processors
+ */
+ @Beta
+ // TODO: Consider returning list of PacketProcessorEntry with processor, priority and stats
+ Map<Integer, PacketProcessor> getProcessors();
+
+ /**
* Requests that packets matching the given selector are punted from the
* dataplane to the controller.
*
@@ -70,6 +83,13 @@ public interface PacketService {
ApplicationId appId);
/**
+ * Returns list of all existing requests ordered by priority.
+ *
+ * @return list of existing packet requests
+ */
+ List<PacketRequest> getRequests();
+
+ /**
* Emits the specified outbound packet onto the network.
*
* @param packet outbound packet
diff --git a/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketStore.java b/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketStore.java
index ff45cc0c..97f7cb55 100644
--- a/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketStore.java
+++ b/framework/src/onos/core/api/src/main/java/org/onosproject/net/packet/PacketStore.java
@@ -17,7 +17,7 @@ package org.onosproject.net.packet;
import org.onosproject.store.Store;
-import java.util.Set;
+import java.util.List;
/**
* Manages routing of outbound packets.
@@ -52,8 +52,8 @@ public interface PacketStore extends Store<PacketEvent, PacketStoreDelegate> {
/**
* Obtains all existing requests in the system.
*
- * @return a set of packet requests
+ * @return list of packet requests in order of priority
*/
- Set<PacketRequest> existingRequests();
+ List<PacketRequest> existingRequests();
}