X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-dom-broker%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fmd%2Fsal%2Fdom%2Fbroker%2Fimpl%2FDOMNotificationRouterEvent.java;h=1aa52ea6137995d361255224df1917cde922b985;hb=402dbc040ddb5dfc488320356b5a36c66d59c36e;hp=0367cab3822b2fc5cda94122e1efb538eb74ab78;hpb=073b32d836bb401d0295171152097591a355cbb9;p=controller.git diff --git a/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/md/sal/dom/broker/impl/DOMNotificationRouterEvent.java b/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/md/sal/dom/broker/impl/DOMNotificationRouterEvent.java index 0367cab382..1aa52ea613 100644 --- a/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/md/sal/dom/broker/impl/DOMNotificationRouterEvent.java +++ b/opendaylight/md-sal/sal-dom-broker/src/main/java/org/opendaylight/controller/md/sal/dom/broker/impl/DOMNotificationRouterEvent.java @@ -11,6 +11,7 @@ import com.google.common.base.Preconditions; import com.google.common.util.concurrent.ListenableFuture; import com.google.common.util.concurrent.SettableFuture; import com.lmax.disruptor.EventFactory; +import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.util.Collection; import org.opendaylight.controller.md.sal.dom.api.DOMNotification; import org.opendaylight.controller.md.sal.dom.api.DOMNotificationListener; @@ -24,12 +25,7 @@ import org.slf4j.LoggerFactory; */ final class DOMNotificationRouterEvent { private static final Logger LOG = LoggerFactory.getLogger(DOMNotificationRouterEvent.class); - public static final EventFactory FACTORY = new EventFactory() { - @Override - public DOMNotificationRouterEvent newInstance() { - return new DOMNotificationRouterEvent(); - } - }; + public static final EventFactory FACTORY = DOMNotificationRouterEvent::new; private Collection> subscribers; private DOMNotification notification; @@ -39,7 +35,10 @@ final class DOMNotificationRouterEvent { // Hidden on purpose, initialized in initialize() } - ListenableFuture initialize(final DOMNotification notification, final Collection> subscribers) { + @SuppressWarnings("checkstyle:hiddenField") + ListenableFuture initialize(final DOMNotification notification, + final Collection> + subscribers) { this.notification = Preconditions.checkNotNull(notification); this.subscribers = Preconditions.checkNotNull(subscribers); this.future = SettableFuture.create(); @@ -50,23 +49,18 @@ final class DOMNotificationRouterEvent { LOG.trace("Start delivery of notification {}", notification); for (ListenerRegistration r : subscribers) { final DOMNotificationListener listener = r.getInstance(); - if (listener != null) { - try { - LOG.trace("Notifying listener {}", listener); - listener.onNotification(notification); - LOG.trace("Listener notification completed"); - } catch (Exception e) { - LOG.error("Delivery of notification {} caused an error in listener {}", notification, listener, e); - } - } + LOG.trace("Notifying listener {}", listener); + listener.onNotification(notification); + LOG.trace("Listener notification completed"); } LOG.trace("Delivery completed"); } + @SuppressFBWarnings(value = "NP_NONNULL_PARAM_VIOLATION", justification = "Void is the only allowed value") void setFuture() { future.set(null); notification = null; subscribers = null; future = null; } -} \ No newline at end of file +}