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%2FDelayedDataTreeListenerRegistration.java;h=958ccc4438be135a8355bcd65f8841c2159510a9;hb=288a70d15252b3c5fafd202fe7935563f05da9c8;hp=e8cd31097b872d222d6f886c173b362de26fb804;hpb=9fb1df14f2dc885fee1dce821b753cc99af6e54f;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DelayedDataTreeListenerRegistration.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DelayedDataTreeListenerRegistration.java index e8cd31097b..958ccc4438 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DelayedDataTreeListenerRegistration.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DelayedDataTreeListenerRegistration.java @@ -7,8 +7,8 @@ */ package org.opendaylight.controller.cluster.datastore; +import com.google.common.base.Optional; import com.google.common.base.Preconditions; -import java.util.Collections; import java.util.Map.Entry; import javax.annotation.concurrent.GuardedBy; import org.opendaylight.controller.cluster.datastore.messages.RegisterDataTreeChangeListener; @@ -31,13 +31,13 @@ final class DelayedDataTreeListenerRegistration implements ListenerRegistration< this.registerTreeChangeListener = Preconditions.checkNotNull(registerTreeChangeListener); } - synchronized void createDelegate(final DelegateFactory, DataTreeCandidate> factory) { + synchronized void createDelegate(final LeaderLocalDelegateFactory, Optional> factory) { if (!closed) { - final Entry, DataTreeCandidate> res = factory.createDelegate(registerTreeChangeListener); + final Entry, Optional> res = + factory.createDelegate(registerTreeChangeListener); this.delegate = res.getKey(); - if (res.getValue() != null) { - delegate.getInstance().onDataTreeChanged(Collections.singletonList(res.getValue())); - } + factory.getShard().getDataStore().notifyOfInitialData(registerTreeChangeListener.getPath(), + this.delegate.getInstance(), res.getValue()); } }