com.h3c.of.ctl

## Interface ControllerMx

-     public interface ControllerMx

  Provides a management API to the OpenFlow Core Controller.

  This interface provides for:

  - requesting a list of currently registered `OpenflowListener`s
  - setting a `RegistrationListener` to be notified when `OpenflowListener`s are added to or removed from the controller
  - the acquisition of a `TxRxControl` from which the recording of transmitted and received OpenFlow messages can be enabled.

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `clearRegistrationListener(RegistrationListener listener)` Clears the registration listener from the controller.
    `Set<DataPathDetails>` | `getAllDataPathDetails()` Returns detailed information describing each of the OpenFlow datapaths connected to the controller, including information about auxiliary connections.
    `Set<OpenflowListener<?>>` | `getAllListeners()` Returns the set of all currently registered `OpenflowListener`s.
    `DataPathDetails` | `getDataPathDetails(DataPathId dpid)` Returns detailed information describing a specific OpenFlow datapath, including information about its auxiliary connections.
    `int` | `getOpenflowListenPort()` Returns the configured Open Flow port
    `TxRxControl` | `getTxRxControl()` Returns a reference to the TX/RX message queue control.
    `void` | `setRegistrationListener(RegistrationListener listener)` Sets the specified registration listener on the controller.
    `void` | `startIOProcessing()` Starts the controller IO Processing loop.
    `void` | `stopIOProcessing()` Stops the controller IO Processing loop.

- - ### Method Detail

    - #### getAllListeners

          Set<OpenflowListener<?>> getAllListeners()

      Returns the set of all currently registered `OpenflowListener`s.
      Returns:
        the set of currently registered OpenFlow listeners

    - #### setRegistrationListener

          void setRegistrationListener(RegistrationListener listener)

      Sets the specified registration listener on the controller. If a registration listener is already set, an exception is thrown.
      Parameters:
        `listener` - the listener to be set
      Throws:
        `NullPointerException` - if listener is null
        `IllegalStateException` - if a listener is already set

    - #### clearRegistrationListener

          void clearRegistrationListener(RegistrationListener listener)

      Clears the registration listener from the controller. The listener that was set must be passed to this method, to prevent anyone from simply clearing the listener. If the listener is already cleared, or is not the currently set listener, this method does nothing.
      Parameters:
        `listener` - the listener to be cleared
      Throws:
        `NullPointerException` - if listener is null

    - #### getTxRxControl

          TxRxControl getTxRxControl()

      Returns a reference to the TX/RX message queue control.
      Returns:
        the TX/RX queue control

    - #### getAllDataPathDetails

          Set<DataPathDetails> getAllDataPathDetails()

      Returns detailed information describing each of the OpenFlow datapaths connected to the controller, including information about auxiliary connections.
      Returns:
        detailed information about all connected datapaths

    - #### getDataPathDetails

          DataPathDetails getDataPathDetails(DataPathId dpid)

      Returns detailed information describing a specific OpenFlow datapath, including information about its auxiliary connections. This may be null, if no such OpenFlow datapath is currently connected.
      Parameters:
        `dpid` - the datapath id
      Returns:
        detailed information describing the corresponding datapath
      Throws:
        `NullPointerException` - if dpid is null

    - #### startIOProcessing

          void startIOProcessing()

      Starts the controller IO Processing loop.

    - #### stopIOProcessing

          void stopIOProcessing()

      Stops the controller IO Processing loop.

    - #### getOpenflowListenPort

          int getOpenflowListenPort()

      Returns the configured Open Flow port
      Returns:
        the open flow port

Copyright © 2014. All Rights Reserved.