@Beta public interface NotificationPublishService extends BindingService
NotificationService
which also allows its users to submit YANG-modeled notifications for delivery.
There are three methods of submission, following the patters from BlockingQueue
:
- putNotification(org.opendaylight.mdsal.binding.javav2.spec.base.Notification)
, which may block
indefinitely if the implementation cannot allocate resources to accept the notification,
- offerNotification(org.opendaylight.mdsal.binding.javav2.spec.base.Notification)
, which does not block if
face of resource starvation,
- offerNotification(org.opendaylight.mdsal.binding.javav2.spec.base.Notification, int, TimeUnit)
, which may
block for specified time if resources are thin.
The actual delivery to listeners is asynchronous and implementation-specific. Users of this interface should not make any assumptions as to whether the notification has or has not been seen.
Modifier and Type | Field and Description |
---|---|
static com.google.common.util.concurrent.ListenableFuture<Object> |
REJECTED |
Modifier and Type | Method and Description |
---|---|
com.google.common.util.concurrent.ListenableFuture<?> |
offerNotification(Notification<?> notification) |
com.google.common.util.concurrent.ListenableFuture<?> |
offerNotification(Notification<?> notification,
int timeout,
TimeUnit unit) |
void |
putNotification(Notification<?> notification) |
static final com.google.common.util.concurrent.ListenableFuture<Object> REJECTED
void putNotification(Notification<?> notification) throws InterruptedException
InterruptedException
com.google.common.util.concurrent.ListenableFuture<?> offerNotification(Notification<?> notification)
com.google.common.util.concurrent.ListenableFuture<?> offerNotification(Notification<?> notification, int timeout, TimeUnit unit) throws InterruptedException
InterruptedException
Copyright © 2019 OpenDaylight. All rights reserved.