Class AbstractClusteredAsyncDataTreeChangeListener<T extends org.opendaylight.yangtools.yang.binding.DataObject>

java.lang.Object
org.opendaylight.serviceutils.tools.mdsal.listener.AbstractClusteredAsyncDataTreeChangeListener<T>
Type Parameters:
T - type of the data object the listener is registered to.
All Implemented Interfaces:
AutoCloseable, EventListener, org.opendaylight.mdsal.binding.api.ClusteredDataTreeChangeListener<T>, org.opendaylight.mdsal.binding.api.DataTreeChangeListener<T>, ChainableDataTreeChangeListener<T>

@Deprecated public abstract class AbstractClusteredAsyncDataTreeChangeListener<T extends org.opendaylight.yangtools.yang.binding.DataObject> extends Object implements org.opendaylight.mdsal.binding.api.ClusteredDataTreeChangeListener<T>
Deprecated.
Use listener-api instead.
Abstract class providing some common functionality to specific listeners. This is the clustered version of the AbstractAsyncDataTreeChangeListener. Please carefully consider whether you really need an async listener, or if AbstractClusteredSyncDataTreeChangeListener wouldn't work just fine for your use case.
Author:
David Suárez (david.suarez.fuentes@gmail.com)
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    AbstractClusteredAsyncDataTreeChangeListener(org.opendaylight.mdsal.binding.api.DataBroker dataBroker, org.opendaylight.mdsal.binding.api.DataTreeIdentifier<T> dataTreeIdentifier, ExecutorService executorService)
    Deprecated.
     
    AbstractClusteredAsyncDataTreeChangeListener(org.opendaylight.mdsal.binding.api.DataBroker dataBroker, org.opendaylight.mdsal.common.api.LogicalDatastoreType datastoreType, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> instanceIdentifier, ExecutorService executorService)
    Deprecated.
     
    AbstractClusteredAsyncDataTreeChangeListener(org.opendaylight.mdsal.binding.api.DataBroker dataBroker, org.opendaylight.mdsal.common.api.LogicalDatastoreType datastoreType, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> instanceIdentifier, ExecutorService executorService, MetricProvider metricProvider)
    Deprecated.
     
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    add(@NonNull org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> instanceIdentifier, T newDataObject)
    Deprecated.
    Invoked when a new data object is added.
    void
    add(T newDataObject)
    Deprecated.
    void
    addAfterListener(org.opendaylight.mdsal.binding.api.DataTreeChangeListener<T> listener)
    Adds a "chained" DataTreeChangeListener, to which DataTreeChangeListener.onDataTreeChanged(java.util.Collection) calls are forwarded AFTER having been processed by this DataTreeChangeListener.
    void
    addBeforeListener(org.opendaylight.mdsal.binding.api.DataTreeChangeListener<T> listener)
    Adds a "chained" DataTreeChangeListener, to which DataTreeChangeListener.onDataTreeChanged(java.util.Collection) calls are forwarded BEFORE having been processed by this DataTreeChangeListener.
    void
     
    protected org.opendaylight.mdsal.binding.api.DataBroker
     
    protected org.opendaylight.serviceutils.tools.mdsal.listener.DataStoreMetrics
     
    protected ExecutorService
    Deprecated.
    Returns the ExecutorService provided when constructing this instance.
    default void
    onDataTreeChanged(@NonNull Collection<org.opendaylight.mdsal.binding.api.DataTreeModification<T>> changes, org.opendaylight.serviceutils.tools.mdsal.listener.DataStoreMetrics dataStoreMetrics)
    Deprecated.
    Default method invoked upon data tree change, in turn it calls the appropriate method (add, update, remove) depending on the type of change.
    final void
    onDataTreeChanged(Collection<org.opendaylight.mdsal.binding.api.DataTreeModification<T>> collection)
    Deprecated.
     
    void
     
    default void
    remove(@NonNull org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> instanceIdentifier, T removedDataObject)
    Deprecated.
    Invoked when the data object has been removed.
    void
    remove(T removedDataObject)
    Deprecated.
    default void
    update(@NonNull org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> instanceIdentifier, T originalDataObject, T updatedDataObject)
    Deprecated.
    Invoked when there is a change in the data object.
    void
    update(T originalDataObject, T updatedDataObject)
    Deprecated.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

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

    onInitialData
  • Constructor Details

    • AbstractClusteredAsyncDataTreeChangeListener

      public AbstractClusteredAsyncDataTreeChangeListener(org.opendaylight.mdsal.binding.api.DataBroker dataBroker, org.opendaylight.mdsal.binding.api.DataTreeIdentifier<T> dataTreeIdentifier, ExecutorService executorService)
      Deprecated.
    • AbstractClusteredAsyncDataTreeChangeListener

      public AbstractClusteredAsyncDataTreeChangeListener(org.opendaylight.mdsal.binding.api.DataBroker dataBroker, org.opendaylight.mdsal.common.api.LogicalDatastoreType datastoreType, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> instanceIdentifier, ExecutorService executorService)
      Deprecated.
    • AbstractClusteredAsyncDataTreeChangeListener

      public AbstractClusteredAsyncDataTreeChangeListener(org.opendaylight.mdsal.binding.api.DataBroker dataBroker, org.opendaylight.mdsal.common.api.LogicalDatastoreType datastoreType, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> instanceIdentifier, ExecutorService executorService, MetricProvider metricProvider)
      Deprecated.
  • Method Details

    • onDataTreeChanged

      public final void onDataTreeChanged(Collection<org.opendaylight.mdsal.binding.api.DataTreeModification<T>> collection)
      Deprecated.
      Specified by:
      onDataTreeChanged in interface org.opendaylight.mdsal.binding.api.DataTreeChangeListener<T extends org.opendaylight.yangtools.yang.binding.DataObject>
    • getExecutorService

      protected ExecutorService getExecutorService()
      Deprecated.
      Returns the ExecutorService provided when constructing this instance. If the subclass owns the ExecutorService, it should be shut down when closing the listener using this getter.
      Returns:
      executor service
    • addBeforeListener

      public void addBeforeListener(org.opendaylight.mdsal.binding.api.DataTreeChangeListener<T> listener)
      Description copied from interface: ChainableDataTreeChangeListener
      Adds a "chained" DataTreeChangeListener, to which DataTreeChangeListener.onDataTreeChanged(java.util.Collection) calls are forwarded BEFORE having been processed by this DataTreeChangeListener.

      If an asychronous DataTreeChangeListener supports chaining, it must forward the onDataTreeChanged() call BEFORE event are submitted to its async executor for processing.

      Specified by:
      addBeforeListener in interface ChainableDataTreeChangeListener<T extends org.opendaylight.yangtools.yang.binding.DataObject>
      Parameters:
      listener - the chained DataTreeChangeListener to invoke after this one
    • addAfterListener

      public void addAfterListener(org.opendaylight.mdsal.binding.api.DataTreeChangeListener<T> listener)
      Description copied from interface: ChainableDataTreeChangeListener
      Adds a "chained" DataTreeChangeListener, to which DataTreeChangeListener.onDataTreeChanged(java.util.Collection) calls are forwarded AFTER having been processed by this DataTreeChangeListener.

      If an asychronous DataTreeChangeListener supports chaining, it must forward the onDataTreeChanged() call ONLY AFTER its async executor processed the event.

      Specified by:
      addAfterListener in interface ChainableDataTreeChangeListener<T extends org.opendaylight.yangtools.yang.binding.DataObject>
      Parameters:
      listener - the chained DataTreeChangeListener to invoke after this one
    • register

      @PostConstruct public void register()
    • getDataBroker

      protected org.opendaylight.mdsal.binding.api.DataBroker getDataBroker()
    • getDataStoreMetrics

      protected org.opendaylight.serviceutils.tools.mdsal.listener.DataStoreMetrics getDataStoreMetrics()
    • close

      @PreDestroy public void close()
      Specified by:
      close in interface AutoCloseable
    • add

      @Deprecated public void add(T newDataObject)
      Deprecated.
    • remove

      @Deprecated public void remove(T removedDataObject)
      Deprecated.
    • update

      @Deprecated public void update(T originalDataObject, T updatedDataObject)
      Deprecated.
    • onDataTreeChanged

      default void onDataTreeChanged(@NonNull Collection<org.opendaylight.mdsal.binding.api.DataTreeModification<T>> changes, org.opendaylight.serviceutils.tools.mdsal.listener.DataStoreMetrics dataStoreMetrics)
      Deprecated.
      Default method invoked upon data tree change, in turn it calls the appropriate method (add, update, remove) depending on the type of change.
      Parameters:
      changes - collection of changes
      dataStoreMetrics - data store metrics
    • add

      default void add(@NonNull org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> instanceIdentifier, T newDataObject)
      Deprecated.
      Invoked when a new data object is added.
      Parameters:
      instanceIdentifier - instance id for this data object
      newDataObject - newly added object
    • remove

      default void remove(@NonNull org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> instanceIdentifier, T removedDataObject)
      Deprecated.
      Invoked when the data object has been removed.
      Parameters:
      instanceIdentifier - instance id for this data object
      removedDataObject - existing object being removed
    • update

      default void update(@NonNull org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> instanceIdentifier, T originalDataObject, T updatedDataObject)
      Deprecated.
      Invoked when there is a change in the data object.
      Parameters:
      instanceIdentifier - instance id for this data object
      originalDataObject - existing object being modified
      updatedDataObject - modified data object