Package org.onosproject.net.behaviour
Interface PiPipelineProgrammable
-
- All Superinterfaces:
Behaviour,HandlerBehaviour
@Beta public interface PiPipelineProgrammable extends HandlerBehaviour
Behavior to program the pipeline of a device that supports protocol-independence.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Optional<PiPipeconf>getDefaultPipeconf()Returns the default pipeconf for this device, to be used when any other pipeconf is not available.CompletableFuture<Boolean>isPipeconfSet(PiPipeconf pipeconf)Probes the device to verify that the given pipeconf is the one currently configured.CompletableFuture<Boolean>setPipeconf(PiPipeconf pipeconf)Writes the given pipeconf to the device, returns a completable future with true is the operations was successful, false otherwise.-
Methods inherited from interface org.onosproject.net.driver.HandlerBehaviour
handler, setHandler
-
-
-
-
Method Detail
-
setPipeconf
CompletableFuture<Boolean> setPipeconf(PiPipeconf pipeconf)
Writes the given pipeconf to the device, returns a completable future with true is the operations was successful, false otherwise.After the future has been completed, the device is expected to process data plane packets according to the written pipeconf.
- Parameters:
pipeconf- pipeconf- Returns:
- completable future set to true if the operation was successful, false otherwise
-
isPipeconfSet
CompletableFuture<Boolean> isPipeconfSet(PiPipeconf pipeconf)
Probes the device to verify that the given pipeconf is the one currently configured.This method is expected to always return true after successfully calling
setPipeconf(PiPipeconf)with the given pipeconf.- Parameters:
pipeconf- pipeconf- Returns:
- completable future eventually true if the device has the given pipeconf set, false otherwise
-
getDefaultPipeconf
Optional<PiPipeconf> getDefaultPipeconf()
Returns the default pipeconf for this device, to be used when any other pipeconf is not available.- Returns:
- optional pipeconf
-
-