import org.opendaylight.controller.sal.core.api.Provider;
import org.opendaylight.controller.sal.core.api.RpcImplementation;
import org.opendaylight.controller.sal.core.api.Broker.ProviderSession;
+import org.opendaylight.yangtools.concepts.Registration;
import org.opendaylight.yangtools.yang.common.QName;
/**
* NotificationService provides access to the notification functionality of the
* SAL.
- *
+ *
* NotificationService allows for consumption of notifications by registering
* implementations of NotificationListener.
- *
+ *
* The registration of notification listeners could be done by:
* <ul>
* <li>returning an instance of implementation in the return value of
* arguments to the
* {@link ProviderSession#addRpcImplementation(QName, RpcImplementation)}
* </ul>
- *
- *
+ *
+ *
*/
public interface NotificationService extends BrokerService {
/**
* Registers a notification listener for supplied notification type.
- *
- * @param notification
- * @param listener
- */
- void addNotificationListener(QName notification,
- NotificationListener listener);
-
- /**
- * Removes a notification listener for supplied notification type.
- *
+ *
* @param notification
* @param listener
*/
- void removeNotificationListener(QName notification,
+ Registration<NotificationListener> addNotificationListener(QName notification,
NotificationListener listener);
}