X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-binding-api%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fbinding%2Fapi%2FNotificationService.java;h=d8678d351a24d086a83aa8e714ed5f0a07dac736;hb=899ccfb2052bc5b2c52828d6ccb04c16f9787784;hp=335f55bcbbade9ce84898eafee05ff146ef2d382;hpb=a9533db1d57a2729772ee192a2f96d358c71bede;p=controller.git diff --git a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/NotificationService.java b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/NotificationService.java index 335f55bcbb..d8678d351a 100644 --- a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/NotificationService.java +++ b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/NotificationService.java @@ -20,15 +20,19 @@ import org.opendaylight.yangtools.yang.binding.Notification; *
{ModelName}Listener
interface,
* which has dispatch methods for each defined notification. Methods are invoked based on notification type (class).
*
* A generic listener implements the {@link NotificationListener} interface which has one callback method
* onNotification
that is invoked for any notification type the listener is subscribed to.
+ *
*
* A generic listener is subscribed using the {@link #registerNotificationListener(Class, NotificationListener)} * method by which you specify the type of notification to receive. A generic listener may be registered for * multiple notification types via multiple subscriptions. + * *
* Generic listeners allow for a more flexible approach, allowing you to subscribe for just * one type of notification from a YANG model. You could also have a general subscription @@ -38,20 +42,22 @@ import org.opendaylight.yangtools.yang.binding.Notification; * * *
* A dispatch listener implements a YANG-generated module interface {ModuleName}Listener
* which handles all the notifications defined in the YANG model. Each notification type translates to
* a specific method of the form on{NotificationType}
on the generated interface.
* The generated interface also extends the
* {@link org.opendaylight.yangtools.yang.binding.NotificationListener} interface and implementations
- * are registered using {@link #registerNotificationListener(org.opendaylight.yangtools.yang.binding.NotificationListener)}
- * method.
+ * are registered using
+ * {@link #registerNotificationListener(org.opendaylight.yangtools.yang.binding.NotificationListener)} method.
+ *
+ *
* Lets assume we have following YANG model: * - *
+ * {@code * module example { * ... * @@ -63,17 +69,18 @@ import org.opendaylight.yangtools.yang.binding.Notification; * ... * } * } - *+ * } * + *
* The generated interface will be: - *
+ * {@code * public interface ExampleListener extends NotificationListener { * void onStart(Start notification); * void onStop(Stop notification); * } - *+ * } * The following defines an implementation of the generated interface: - *
+ * {@code * public class MyExampleListener implements ExampleListener { * public void onStart(Start notification) { * // do something @@ -83,15 +90,18 @@ import org.opendaylight.yangtools.yang.binding.Notification; * // do something * } * } - *+ * } * The implementation is registered as follows: - *
+ * {@code * MyExampleListener listener = new MyExampleListener(); * ListenerRegistration+ * } * Thereg = service.registerNotificationListener( listener ); - *
onStart
method will be invoked when someone publishes a Start
notification and
* the onStop
method will be invoked when someone publishes a Stop
notification.
+ *
+ * @deprecated Please use {@link org.opendaylight.mdsal.binding.api.NotificationService} instead.
*/
+@Deprecated
public interface NotificationService extends BindingAwareService {
/**
* Registers a generic listener implementation for a specified notification type.