X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2Fmessages%2FRegisterChangeListener.java;h=1d8edece1a5161137daab2abb03e6b968a920615;hb=edcc020c8fda4b13f22a31d79c13feef0b53b0ee;hp=db8a08f11a96f520457707b5b20aad5abf692ec1;hpb=9340a64d067473032111bd8c3341ea6855cd9e4a;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/RegisterChangeListener.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/RegisterChangeListener.java index db8a08f11a..1d8edece1a 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/RegisterChangeListener.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/RegisterChangeListener.java @@ -9,28 +9,32 @@ package org.opendaylight.controller.cluster.datastore.messages; import akka.actor.ActorPath; +import akka.actor.ActorRef; import akka.actor.ActorSystem; -import org.opendaylight.controller.cluster.datastore.utils.InstanceIdentifierUtils; +import akka.serialization.Serialization; +import org.opendaylight.controller.cluster.datastore.util.InstanceIdentifierUtils; import org.opendaylight.controller.md.sal.common.api.data.AsyncDataBroker; import org.opendaylight.controller.protobuff.messages.registration.ListenerRegistrationMessages; -import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier; +import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; public class RegisterChangeListener implements SerializableMessage { - public static final Class SERIALIZABLE_CLASS = ListenerRegistrationMessages.RegisterChangeListener.class; - private final InstanceIdentifier path; - private final ActorPath dataChangeListenerPath; + public static final Class SERIALIZABLE_CLASS = + ListenerRegistrationMessages.RegisterChangeListener.class; + + private final YangInstanceIdentifier path; + private final ActorRef dataChangeListener; private final AsyncDataBroker.DataChangeScope scope; - public RegisterChangeListener(InstanceIdentifier path, - ActorPath dataChangeListenerPath, + public RegisterChangeListener(YangInstanceIdentifier path, + ActorRef dataChangeListener, AsyncDataBroker.DataChangeScope scope) { this.path = path; - this.dataChangeListenerPath = dataChangeListenerPath; + this.dataChangeListener = dataChangeListener; this.scope = scope; } - public InstanceIdentifier getPath() { + public YangInstanceIdentifier getPath() { return path; } @@ -40,22 +44,22 @@ public class RegisterChangeListener implements SerializableMessage { } public ActorPath getDataChangeListenerPath() { - return dataChangeListenerPath; + return dataChangeListener.path(); } @Override public ListenerRegistrationMessages.RegisterChangeListener toSerializable() { return ListenerRegistrationMessages.RegisterChangeListener.newBuilder() - .setInstanceIdentifierPath(path.toString()) - .setDataChangeListenerActorPath(dataChangeListenerPath.toString()) + .setInstanceIdentifierPath(InstanceIdentifierUtils.toSerializable(path)) + .setDataChangeListenerActorPath(Serialization.serializedActorPath(dataChangeListener)) .setDataChangeScope(scope.ordinal()).build(); } - public static RegisterChangeListener fromSerializable(ActorSystem actorSystem,Object serializable){ + public static RegisterChangeListener fromSerializable(ActorSystem actorSystem, Object serializable){ ListenerRegistrationMessages.RegisterChangeListener o = (ListenerRegistrationMessages.RegisterChangeListener) serializable; - return new RegisterChangeListener(InstanceIdentifierUtils.from(o.getInstanceIdentifierPath()), - actorSystem.actorFor(o.getDataChangeListenerActorPath()).path(), + return new RegisterChangeListener(InstanceIdentifierUtils.fromSerializable(o.getInstanceIdentifierPath()), + actorSystem.provider().resolveActorRef(o.getDataChangeListenerActorPath()), AsyncDataBroker.DataChangeScope.values()[o.getDataChangeScope()]); }