*/
package org.opendaylight.controller.cluster.datastore.messages;
+import static java.util.Objects.requireNonNull;
+
+import akka.actor.ActorPath;
import akka.actor.ActorRef;
-import com.google.common.base.Preconditions;
import java.io.Externalizable;
import java.io.IOException;
import java.io.ObjectInput;
import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
/**
- * Request a {@link org.opendaylight.controller.md.sal.dom.api.DOMDataTreeChangeListener} registration be made on the
- * shard leader.
+ * Request a {@link org.opendaylight.mdsal.dom.api.DOMDataTreeChangeListener} registration be made on the shard leader.
*/
-public final class RegisterDataTreeChangeListener implements Externalizable, ListenerRegistrationMessage {
+public final class RegisterDataTreeChangeListener implements Externalizable {
private static final long serialVersionUID = 1L;
+
private ActorRef dataTreeChangeListenerPath;
private YangInstanceIdentifier path;
private boolean registerOnAllInstances;
+ public RegisterDataTreeChangeListener() {
+ // For Externalizable
+ }
+
public RegisterDataTreeChangeListener(final YangInstanceIdentifier path, final ActorRef dataTreeChangeListenerPath,
final boolean registerOnAllInstances) {
- this.path = Preconditions.checkNotNull(path);
- this.dataTreeChangeListenerPath = Preconditions.checkNotNull(dataTreeChangeListenerPath);
+ this.path = requireNonNull(path);
+ this.dataTreeChangeListenerPath = requireNonNull(dataTreeChangeListenerPath);
this.registerOnAllInstances = registerOnAllInstances;
}
- @Override
public YangInstanceIdentifier getPath() {
return path;
}
- public ActorRef getDataTreeChangeListenerPath() {
- return dataTreeChangeListenerPath;
+ public ActorPath getListenerActorPath() {
+ return dataTreeChangeListenerPath.path();
}
- @Override
public boolean isRegisterOnAllInstances() {
return registerOnAllInstances;
}
@Override
public void writeExternal(final ObjectOutput out) throws IOException {
out.writeObject(dataTreeChangeListenerPath);
- SerializationUtils.serializePath(path, out);
+ SerializationUtils.writePath(out, path);
out.writeBoolean(registerOnAllInstances);
}
@Override
public void readExternal(final ObjectInput in) throws IOException, ClassNotFoundException {
dataTreeChangeListenerPath = (ActorRef) in.readObject();
- path = SerializationUtils.deserializePath(in);
+ path = SerializationUtils.readPath(in);
registerOnAllInstances = in.readBoolean();
}
+
+ @Override
+ public String toString() {
+ return "RegisterDataTreeChangeListener [path=" + path + ", registerOnAllInstances=" + registerOnAllInstances
+ + ", dataTreeChangeListenerPath=" + dataTreeChangeListenerPath + "]";
+ }
}