Rename ActorContext to ActorUtils
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / main / java / org / opendaylight / controller / cluster / datastore / ShardDataTreeChangePublisherActor.java
index 61a3fa13be6415c27e839580df9e2eac1d58258a..927e39ff01bf8be284648abdeda81651b77c1aef 100644 (file)
@@ -11,7 +11,7 @@ import akka.actor.Props;
 import com.google.common.base.Optional;
 import com.google.common.base.Preconditions;
 import java.util.function.Consumer;
-import org.opendaylight.controller.md.sal.dom.api.DOMDataTreeChangeListener;
+import org.opendaylight.mdsal.dom.api.DOMDataTreeChangeListener;
 import org.opendaylight.yangtools.concepts.ListenerRegistration;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate;
@@ -21,24 +21,26 @@ import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate;
  *
  * @author Thomas Pantelis
  */
-public class ShardDataTreeChangePublisherActor
-        extends ShardDataTreeNotificationPublisherActor<ShardDataTreeChangeListenerPublisher> {
+public final class ShardDataTreeChangePublisherActor
+        extends ShardDataTreeNotificationPublisherActor<DefaultShardDataTreeChangeListenerPublisher> {
 
     private ShardDataTreeChangePublisherActor(final String name, final String logContext) {
         super(new DefaultShardDataTreeChangeListenerPublisher(logContext), name, logContext);
     }
 
     @Override
-    protected void handleReceive(Object message) {
+    protected void handleReceive(final Object message) {
         if (message instanceof RegisterListener) {
             RegisterListener reg = (RegisterListener)message;
             LOG.debug("{}: Received {}", logContext(), reg);
             if (reg.initialState.isPresent()) {
                 DefaultShardDataTreeChangeListenerPublisher.notifySingleListener(reg.path, reg.listener,
                         reg.initialState.get(), logContext());
+            } else {
+                reg.listener.onInitialData();
             }
 
-            publisher().registerTreeChangeListener(reg.path, reg.listener, Optional.absent(), reg.onRegistration);
+            publisher().registerTreeChangeListener(reg.path, reg.listener, reg.onRegistration);
         } else {
             super.handleReceive(message);
         }