public interface PacketService
Modifier and Type | Method and Description |
---|---|
void |
addProcessor(PacketProcessor processor,
int priority)
Adds the specified processor to the list of packet processors.
|
void |
cancelPackets(TrafficSelector selector,
PacketPriority priority,
ApplicationId appId)
Cancels previous packet requests for packets matching the given
selector to be punted from the dataplane to the controller.
|
void |
cancelPackets(TrafficSelector selector,
PacketPriority priority,
ApplicationId appId,
java.util.Optional<DeviceId> deviceId)
Cancels previous packet requests for packets matching the given
selector to be punted from the dataplane to the controller.
|
void |
emit(OutboundPacket packet)
Emits the specified outbound packet onto the network.
|
java.util.List<PacketProcessorEntry> |
getProcessors()
Returns priority bindings of all registered packet processor entries.
|
java.util.List<PacketRequest> |
getRequests()
Returns list of all existing requests ordered by priority.
|
void |
removeProcessor(PacketProcessor processor)
Removes the specified processor from the processing pipeline.
|
void |
requestPackets(TrafficSelector selector,
PacketPriority priority,
ApplicationId appId)
Requests that packets matching the given selector are punted from the
dataplane to the controller.
|
void |
requestPackets(TrafficSelector selector,
PacketPriority priority,
ApplicationId appId,
java.util.Optional<DeviceId> deviceId)
Requests that packets matching the given selector are punted from the
dataplane to the controller.
|
void addProcessor(PacketProcessor processor, int priority)
processor
- processor to be addedpriority
- priority in the reverse natural orderjava.lang.IllegalArgumentException
- if a processor with the
given priority already existsvoid removeProcessor(PacketProcessor processor)
processor
- packet processorjava.util.List<PacketProcessorEntry> getProcessors()
void requestPackets(TrafficSelector selector, PacketPriority priority, ApplicationId appId)
selector
- the traffic selector used to match packetspriority
- the priority of the ruleappId
- the application ID of the requestervoid requestPackets(TrafficSelector selector, PacketPriority priority, ApplicationId appId, java.util.Optional<DeviceId> deviceId)
selector
- the traffic selector used to match packetspriority
- the priority of the ruleappId
- the application ID of the requesterdeviceId
- an optional deviceIdvoid cancelPackets(TrafficSelector selector, PacketPriority priority, ApplicationId appId)
selector
- the traffic selector used to match packetspriority
- the priority of the ruleappId
- the application ID of the requestervoid cancelPackets(TrafficSelector selector, PacketPriority priority, ApplicationId appId, java.util.Optional<DeviceId> deviceId)
selector
- the traffic selector used to match packetspriority
- the priority of the ruleappId
- the application ID of the requesterdeviceId
- an optional deviceIdjava.util.List<PacketRequest> getRequests()
void emit(OutboundPacket packet)
packet
- outbound packet