X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fsal%2Fapi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fflowprogrammer%2FIFlowProgrammerService.java;h=5cdf9d83689d752a95c491d51371198c094de76f;hp=69972d67768fdcec042ac27f646f670c513561bd;hb=e326757873804be369d20efd0b54467871094c06;hpb=a1f02e35be4dff06e523d3aeb05a7b9e1ca91a07 diff --git a/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/flowprogrammer/IFlowProgrammerService.java b/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/flowprogrammer/IFlowProgrammerService.java index 69972d6776..5cdf9d8368 100644 --- a/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/flowprogrammer/IFlowProgrammerService.java +++ b/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/flowprogrammer/IFlowProgrammerService.java @@ -17,7 +17,7 @@ import org.opendaylight.controller.sal.utils.Status; */ public interface IFlowProgrammerService { /** - * Add a flow to the network node + * Synchronously add a flow to the network node * * @param node * @param flow @@ -25,25 +25,56 @@ public interface IFlowProgrammerService { Status addFlow(Node node, Flow flow); /** - * Modify existing flow on the switch + * Synchronously modify existing flow on the switch * * @param node * @param flow */ - Status modifyFlow(Node node, Flow oldflow, Flow newFlow); + Status modifyFlow(Node node, Flow oldFlow, Flow newFlow); /** - * Remove the flow from the network node + * Synchronously remove the flow from the network node * * @param node * @param flow */ Status removeFlow(Node node, Flow flow); + /** + * Asynchronously add a flow to the network node + * + * @param node + * @param flow + */ + Status addFlowAsync(Node node, Flow flow); + + /** + * Asynchronously modify existing flow on the switch + * + * @param node + * @param flow + */ + Status modifyFlowAsync(Node node, Flow oldFlow, Flow newFlow); + + /** + * Asynchronously remove the flow from the network node + * + * @param node + * @param flow + */ + Status removeFlowAsync(Node node, Flow flow); + /** * Remove all flows present on the network node * * @param node */ Status removeAllFlows(Node node); + + /** + * Send synchronous Barrier message + * + * @param node + */ + Status sendBarrierMessage(Node node); }