Interface ForwardingRulesCommiter<D extends org.opendaylight.yangtools.binding.DataObject>

All Superinterfaces:
AutoCloseable, org.opendaylight.mdsal.binding.api.DataTreeChangeListener<D>
All Known Implementing Classes:
AbstractListeningCommiter, FlowForwarder, GroupForwarder, MeterForwarder, TableForwarder

public interface ForwardingRulesCommiter<D extends org.opendaylight.yangtools.binding.DataObject> extends org.opendaylight.mdsal.binding.api.DataTreeChangeListener<D>, AutoCloseable
forwardingrules-manager org.opendaylight.openflowplugin.applications.frm

ForwardingRulesCommiter It represent a contract between DataStore DataTreeModification and relevant SalRpcService for device. Every implementation has to be registered for Configurational/DS tree path.

  • Method Summary

    Modifier and Type
    Method
    Description
    com.google.common.util.concurrent.ListenableFuture<? extends org.opendaylight.yangtools.yang.common.RpcResult<?>>
    add(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<D> identifier, D add, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
    Method adds the DataObject which is identified by InstanceIdentifier to device.
    void
    createStaleMarkEntity(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<D> identifier, D del, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
    Method creates stale-marked DataObject which is identified by InstanceIdentifier from device.
    void
    remove(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<D> identifier, D del, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
    Method removes DataObject which is identified by InstanceIdentifier from device.
    com.google.common.util.concurrent.ListenableFuture<? extends org.opendaylight.yangtools.yang.common.RpcResult<?>>
    removeWithResult(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<D> identifier, D del, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
     
    void
    update(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<D> identifier, D original, D update, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
    Method updates the original DataObject to the update DataObject in device.

    Methods inherited from interface java.lang.AutoCloseable

    close

    Methods inherited from interface org.opendaylight.mdsal.binding.api.DataTreeChangeListener

    onDataTreeChanged, onInitialData
  • Method Details

    • remove

      void remove(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<D> identifier, D del, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
      Method removes DataObject which is identified by InstanceIdentifier from device.
      Parameters:
      identifier - - the whole path to DataObject
      del - - DataObject for removing
      nodeIdent - Node InstanceIdentifier
    • update

      void update(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<D> identifier, D original, D update, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
      Method updates the original DataObject to the update DataObject in device. Both are identified by same InstanceIdentifier
      Parameters:
      identifier - - the whole path to DataObject
      original - - original DataObject (for update)
      update - - changed DataObject (contain updates)
      nodeIdent - Node InstanceIdentifier
    • add

      com.google.common.util.concurrent.ListenableFuture<? extends org.opendaylight.yangtools.yang.common.RpcResult<?>> add(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<D> identifier, D add, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
      Method adds the DataObject which is identified by InstanceIdentifier to device.
      Parameters:
      identifier - - the whole path to new DataObject
      add - - new DataObject
      nodeIdent - Node InstanceIdentifier
      Returns:
      A future associated with RPC task. null is set to the future if this method does not invoke RPC.
    • createStaleMarkEntity

      void createStaleMarkEntity(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<D> identifier, D del, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
      Method creates stale-marked DataObject which is identified by InstanceIdentifier from device.
      Parameters:
      identifier - - the whole path to DataObject
      del - - DataObject removed. Stale-Mark object to be created from this object
      nodeIdent - Node InstanceIdentifier
    • removeWithResult

      com.google.common.util.concurrent.ListenableFuture<? extends org.opendaylight.yangtools.yang.common.RpcResult<?>> removeWithResult(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<D> identifier, D del, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)