package org.opendaylight.controller.cluster.datastore.messages;
import akka.actor.ActorPath;
+import akka.actor.ActorRef;
import org.opendaylight.controller.md.sal.common.api.data.AsyncDataBroker;
-import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier;
+import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
-public class RegisterChangeListener {
- private final InstanceIdentifier path;
- private final ActorPath dataChangeListenerPath;
+public class RegisterChangeListener implements ListenerRegistrationMessage {
+ private final YangInstanceIdentifier path;
+ private final ActorRef dataChangeListener;
private final AsyncDataBroker.DataChangeScope scope;
+ private final boolean registerOnAllInstances;
-
- public RegisterChangeListener(InstanceIdentifier path,
- ActorPath dataChangeListenerPath,
- AsyncDataBroker.DataChangeScope scope) {
+ public RegisterChangeListener(YangInstanceIdentifier path,
+ ActorRef dataChangeListener,
+ AsyncDataBroker.DataChangeScope scope, boolean registerOnAllInstances) {
this.path = path;
- this.dataChangeListenerPath = dataChangeListenerPath;
+ this.dataChangeListener = dataChangeListener;
this.scope = scope;
+ this.registerOnAllInstances = registerOnAllInstances;
}
- public InstanceIdentifier getPath() {
+ @Override
+ public YangInstanceIdentifier getPath() {
return path;
}
-
public AsyncDataBroker.DataChangeScope getScope() {
return scope;
}
public ActorPath getDataChangeListenerPath() {
- return dataChangeListenerPath;
+ return dataChangeListener.path();
+ }
+
+ @Override
+ public boolean isRegisterOnAllInstances() {
+ return registerOnAllInstances;
}
}