com.h3c.sdn.flowmgr

## Interface FlowService

- Deprecated.

      @Deprecated
      public interface FlowService

  Provides flow related services to external applications. The implementation is expected to utilize the ControllerService to:
  - list or send flows
  - register a FlowListener to receive flow-related notifications
  - maintain a cache of flows sent for correlation of notifications received by the FlowListener

  The services provided allow the consumer to:

  - list flows and send flow mods
  - list groups and send group mods
  - list meters and send meter mods

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `List<FlowRule>` | `getFlows(DataPathId dpid)` Deprecated. Returns the list of flow rules for the specified datapath.
    `List<FlowRule>` | `getFlows(DataPathId dpid, Match match)` Deprecated. Returns the list of flow rules for the given match, and the specified datapath.
    `List<FlowRule>` | `getFlows(DataPathId dpid, Packet pkt)` Deprecated. Returns the list of flow rules that the given packet would hit, for the specified datapath.
    `void` | `sendFlow(OfmFlowMod flowMod, DataPathId dpid)` Deprecated. Sends the OpenFlow FLOW_MOD message to the given datapath.
    `void` | `sendFlows(List<OfmFlowMod> flowMod, DataPathId dpid)` Deprecated. Sends the list of OpenFlow FLOW_MOD messages to the given datapath.

- - ### Method Detail

    - #### getFlows

          List<FlowRule> getFlows(DataPathId dpid)

      Deprecated.
      Returns the list of flow rules for the specified datapath.
      Parameters:
        `dpid` - the datapath ID
      Returns:
        the flow rules currently installed on the datapath

    - #### getFlows

          List<FlowRule> getFlows(DataPathId dpid,
                                Packet pkt)

      Deprecated.
      Returns the list of flow rules that the given packet would hit, for the specified datapath.
      Parameters:
        `dpid` - the datapath ID
        `pkt` - the packet
      Returns:
        the corresponding flow rules

    - #### getFlows

          List<FlowRule> getFlows(DataPathId dpid,
                                Match match)

      Deprecated.
      Returns the list of flow rules for the given match, and the specified datapath.
      Parameters:
        `dpid` - the datapath ID
        `match` - the match
      Returns:
        the corresponding flow rules

    - #### sendFlow

          void sendFlow(OfmFlowMod flowMod,
                      DataPathId dpid)
                        throws OpenflowException

      Deprecated.
      Sends the OpenFlow FLOW_MOD message to the given datapath.

      Note that this call will block until the status of the flow mod request is determined.

      Adds the specified flow to the given datapath if the message's `FlowModCommand` is `ADD`. Deletes the specified flow from the given datapath if the message's `FlowModCommand` is `DELETE`.

      Parameters:
        `flowMod` - the FLOW_MOD message to send
        `dpid` - the target datapath
      Throws:
        `NullPointerException` - if flowMod or dpid is null
        `IllegalArgumentException` - if flowMod is mutable
        `OpenflowException` - if there was a problem encoding or sending the message

    - #### sendFlows

          void sendFlows(List<OfmFlowMod> flowMod,
                       DataPathId dpid)
                         throws OpenflowException

      Deprecated.
      Sends the list of OpenFlow FLOW_MOD messages to the given datapath.

      Note that this call will block until the status of the flow mod requests are determined.

      Adds the specified flow to the given datapath if the message's `FlowModCommand` is `ADD`. Deletes the specified flow from the given datapath if the message's `FlowModCommand` is `DELETE`.

      Parameters:
        `flowMod` - the list of FLOW_MOD messages to send
        `dpid` - the target datapath
      Throws:
        `NullPointerException` - if flowMod or dpid is null
        `IllegalArgumentException` - if any flowMod in the list is mutable
        `OpenflowException` - if there was a problem encoding or sending any of the messages.

Copyright © 2014. All Rights Reserved.