Class GroupForwarder

  • All Implemented Interfaces:
    AutoCloseable, EventListener, org.opendaylight.mdsal.binding.api.ClusteredDataTreeChangeListener<Group>, org.opendaylight.mdsal.binding.api.DataTreeChangeListener<Group>, ForwardingRulesCommiter<Group>, org.opendaylight.serviceutils.srm.RecoverableListener

    public class GroupForwarder
    extends AbstractListeningCommiter<Group>
    GroupForwarder It implements DataTreeChangeListener for WildCardedPath to Group and ForwardingRulesCommiter interface for methods: add, update and remove Group processing for DataTreeModification.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      Future<? extends org.opendaylight.yangtools.yang.common.RpcResult<?>> add​(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<Group> identifier, Group addDataObj, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
      Method adds the DataObject which is identified by InstanceIdentifier to device.
      void close()  
      void createStaleMarkEntity​(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<Group> identifier, Group del, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
      Method creates stale-marked DataObject which is identified by InstanceIdentifier from device.
      void deregisterListener()  
      protected org.opendaylight.yangtools.yang.binding.InstanceIdentifier<Group> getWildCardPath()
      Method return wildCardPath for Listener registration and for identify the correct KeyInstanceIdentifier from data.
      void registerListener()  
      void remove​(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<Group> identifier, Group removeDataObj, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
      Method removes DataObject which is identified by InstanceIdentifier from device.
      Future<org.opendaylight.yangtools.yang.common.RpcResult<RemoveGroupOutput>> removeWithResult​(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<Group> identifier, Group removeDataObj, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)  
      void update​(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<Group> identifier, Group original, Group update, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
      Method updates the original DataObject to the update DataObject in device.
      • Methods inherited from interface org.opendaylight.mdsal.binding.api.DataTreeChangeListener

        onInitialData
    • Constructor Detail

      • GroupForwarder

        public GroupForwarder​(ForwardingRulesManager manager,
                              org.opendaylight.mdsal.binding.api.DataBroker db)
    • Method Detail

      • registerListener

        public void registerListener()
      • deregisterListener

        public void deregisterListener()
      • close

        public void close()
      • remove

        public void remove​(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<Group> identifier,
                           Group removeDataObj,
                           org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
        Description copied from interface: ForwardingRulesCommiter
        Method removes DataObject which is identified by InstanceIdentifier from device.
        Parameters:
        identifier - - the whole path to DataObject
        removeDataObj - - DataObject for removing
        nodeIdent - Node InstanceIdentifier
      • removeWithResult

        public Future<org.opendaylight.yangtools.yang.common.RpcResult<RemoveGroupOutput>> removeWithResult​(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<Group> identifier,
                                                                                                            Group removeDataObj,
                                                                                                            org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
      • update

        public void update​(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<Group> identifier,
                           Group original,
                           Group update,
                           org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
        Description copied from interface: ForwardingRulesCommiter
        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

        public Future<? extends org.opendaylight.yangtools.yang.common.RpcResult<?>> add​(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<Group> identifier,
                                                                                         Group addDataObj,
                                                                                         org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
        Description copied from interface: ForwardingRulesCommiter
        Method adds the DataObject which is identified by InstanceIdentifier to device.
        Parameters:
        identifier - - the whole path to new DataObject
        addDataObj - - 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

        public void createStaleMarkEntity​(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<Group> identifier,
                                          Group del,
                                          org.opendaylight.yangtools.yang.binding.InstanceIdentifier<FlowCapableNode> nodeIdent)
        Description copied from interface: ForwardingRulesCommiter
        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