-import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeListener;
-import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier;
-import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
-
-public class RegisterChangeListener {
- private final InstanceIdentifier path;
- private final AsyncDataChangeListener<InstanceIdentifier, NormalizedNode<?, ?>> listener;
- private final AsyncDataBroker.DataChangeScope scope;
-
-
- public RegisterChangeListener(InstanceIdentifier path, AsyncDataChangeListener<InstanceIdentifier, NormalizedNode<?, ?>> listener, AsyncDataBroker.DataChangeScope scope) {
- this.path = path;
- this.listener = listener;
- this.scope = scope;
- }
-
- public InstanceIdentifier getPath() {
- return path;
- }
-
- public AsyncDataChangeListener<InstanceIdentifier, NormalizedNode<?, ?>> getListener() {
- return listener;
- }
-
- public AsyncDataBroker.DataChangeScope getScope() {
- return scope;
- }
+import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
+
+public class RegisterChangeListener implements ListenerRegistrationMessage {
+ private final YangInstanceIdentifier path;
+ private final ActorRef dataChangeListener;
+ private final AsyncDataBroker.DataChangeScope scope;
+ private final boolean registerOnAllInstances;
+
+ public RegisterChangeListener(YangInstanceIdentifier path,
+ ActorRef dataChangeListener,
+ AsyncDataBroker.DataChangeScope scope, boolean registerOnAllInstances) {
+ this.path = path;
+ this.dataChangeListener = dataChangeListener;
+ this.scope = scope;
+ this.registerOnAllInstances = registerOnAllInstances;
+ }
+
+ @Override
+ public YangInstanceIdentifier getPath() {
+ return path;
+ }
+
+ public AsyncDataBroker.DataChangeScope getScope() {
+ return scope;
+ }
+
+ public ActorPath getDataChangeListenerPath() {
+ return dataChangeListener.path();
+ }
+
+ @Override
+ public boolean isRegisterOnAllInstances() {
+ return registerOnAllInstances;
+ }