Class HeliumNotificationProviderServiceAdapter
- java.lang.Object
-
- org.opendaylight.controller.md.sal.binding.compat.HeliumNotificationServiceAdapter
-
- org.opendaylight.controller.md.sal.binding.compat.HeliumNotificationProviderServiceAdapter
-
- All Implemented Interfaces:
AutoCloseable
,NotificationPublishService<Notification>
,BindingAwareService
,NotificationProviderService
,NotificationService
- Direct Known Subclasses:
HeliumNotificationProviderServiceWithInterestListeners
@Deprecated(forRemoval=true) public class HeliumNotificationProviderServiceAdapter extends HeliumNotificationServiceAdapter implements NotificationProviderService
Deprecated, for removal: This API element is subject to removal in a future version.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.opendaylight.controller.sal.binding.api.NotificationProviderService
NotificationProviderService.NotificationInterestListener
-
-
Constructor Summary
Constructors Constructor Description HeliumNotificationProviderServiceAdapter(NotificationPublishService notificationPublishService, NotificationService notificationService)
Deprecated, for removal: This API element is subject to removal in a future version.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
close()
Deprecated, for removal: This API element is subject to removal in a future version.void
publish(Notification notification)
Deprecated, for removal: This API element is subject to removal in a future version.Publishes a notification and notifies subscribed listeners.void
publish(Notification notification, ExecutorService executor)
Deprecated, for removal: This API element is subject to removal in a future version.Publishes a notification and notifies subscribed listeners.ListenerRegistration<NotificationProviderService.NotificationInterestListener>
registerInterestListener(NotificationProviderService.NotificationInterestListener interestListener)
Deprecated, for removal: This API element is subject to removal in a future version.Registers a listener to be notified about notification subscriptions.-
Methods inherited from class org.opendaylight.controller.md.sal.binding.compat.HeliumNotificationServiceAdapter
registerNotificationListener, registerNotificationListener
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.opendaylight.controller.sal.binding.api.NotificationService
registerNotificationListener, registerNotificationListener
-
-
-
-
Constructor Detail
-
HeliumNotificationProviderServiceAdapter
public HeliumNotificationProviderServiceAdapter(NotificationPublishService notificationPublishService, NotificationService notificationService)
Deprecated, for removal: This API element is subject to removal in a future version.
-
-
Method Detail
-
publish
public void publish(Notification notification)
Deprecated, for removal: This API element is subject to removal in a future version.Description copied from interface:NotificationPublishService
Publishes a notification and notifies subscribed listeners. All listener notifications are done via a default executor.Note: This call will block when the default executor is saturated and the notification queue for this executor is full.
- Specified by:
publish
in interfaceNotificationProviderService
- Specified by:
publish
in interfaceNotificationPublishService<Notification>
- Parameters:
notification
- the notification to publish.
-
publish
public void publish(Notification notification, ExecutorService executor)
Deprecated, for removal: This API element is subject to removal in a future version.Description copied from interface:NotificationPublishService
Publishes a notification and notifies subscribed listeners. All listener notifications are done via the provided executor.Note: Use only if necessary. Consider using
NotificationPublishService.publish(Object)
for most use-cases.By using this method you could customize execution policy of listeners present inside process (e.g. using single-threaded executor or even same-thread executor delivery.
This executor is used only for inside-process notification deliveries.
- Specified by:
publish
in interfaceNotificationProviderService
- Specified by:
publish
in interfaceNotificationPublishService<Notification>
- Parameters:
notification
- the notification to publish.executor
- the executor that will be used to deliver notifications to subscribed listeners.
-
registerInterestListener
public ListenerRegistration<NotificationProviderService.NotificationInterestListener> registerInterestListener(NotificationProviderService.NotificationInterestListener interestListener)
Deprecated, for removal: This API element is subject to removal in a future version.Description copied from interface:NotificationProviderService
Registers a listener to be notified about notification subscriptions. This enables a component to know when there is a notification listener subscribed for a particular notification type.On registration of this listener, the
NotificationProviderService.NotificationInterestListener.onNotificationSubscribtion(Class)
method will be invoked for every notification type that currently has a notification listener subscribed.- Specified by:
registerInterestListener
in interfaceNotificationProviderService
- Parameters:
interestListener
- the listener that will be notified when subscriptions for new notification types occur.- Returns:
- a
ListenerRegistration
instance that should be used to unregister the listener by invoking theListenerRegistration.close()
method when no longer needed.
-
close
public void close()
Deprecated, for removal: This API element is subject to removal in a future version.- Specified by:
close
in interfaceAutoCloseable
- Overrides:
close
in classHeliumNotificationServiceAdapter
-
-