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%2FDataTreeChangeListenerActor.java;h=2936a28b90a1f77cc640602c977751597fc8008b;hb=cc7ef3a4cc3eb2027be5558c1564e580fd153087;hp=bccb48477b7f224120b37fa1244680e2873cdafb;hpb=057b787289f7b909d7013c22ac73a1c91c860af8;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DataTreeChangeListenerActor.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DataTreeChangeListenerActor.java index bccb48477b..2936a28b90 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DataTreeChangeListenerActor.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DataTreeChangeListenerActor.java @@ -8,14 +8,13 @@ package org.opendaylight.controller.cluster.datastore; import akka.actor.Props; -import akka.japi.Creator; import com.google.common.base.Preconditions; -import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor; import org.opendaylight.controller.cluster.datastore.messages.DataTreeChanged; import org.opendaylight.controller.cluster.datastore.messages.DataTreeChangedReply; import org.opendaylight.controller.cluster.datastore.messages.EnableNotification; import org.opendaylight.controller.md.sal.dom.api.DOMDataTreeChangeListener; +import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; /** * Proxy actor which acts as a facade to the user-provided listener. Responsible for decapsulating @@ -23,10 +22,13 @@ import org.opendaylight.controller.md.sal.dom.api.DOMDataTreeChangeListener; */ final class DataTreeChangeListenerActor extends AbstractUntypedActor { private final DOMDataTreeChangeListener listener; + private final YangInstanceIdentifier registeredPath; private boolean notificationsEnabled = false; - private DataTreeChangeListenerActor(final DOMDataTreeChangeListener listener) { + private DataTreeChangeListenerActor(final DOMDataTreeChangeListener listener, + final YangInstanceIdentifier registeredPath) { this.listener = Preconditions.checkNotNull(listener); + this.registeredPath = Preconditions.checkNotNull(registeredPath); } @Override @@ -70,24 +72,7 @@ final class DataTreeChangeListenerActor extends AbstractUntypedActor { listener); } - public static Props props(final DOMDataTreeChangeListener listener) { - return Props.create(new DataTreeChangeListenerCreator(listener)); - } - - private static final class DataTreeChangeListenerCreator implements Creator { - private static final long serialVersionUID = 1L; - - @SuppressFBWarnings(value = "SE_BAD_FIELD", justification = "This field is not Serializable but we don't " - + "create remote instances of this actor and thus don't need it to be Serializable.") - private final DOMDataTreeChangeListener listener; - - DataTreeChangeListenerCreator(final DOMDataTreeChangeListener listener) { - this.listener = Preconditions.checkNotNull(listener); - } - - @Override - public DataTreeChangeListenerActor create() { - return new DataTreeChangeListenerActor(listener); - } + public static Props props(final DOMDataTreeChangeListener listener, final YangInstanceIdentifier registeredPath) { + return Props.create(DataTreeChangeListenerActor.class, listener, registeredPath); } }