X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fconfig%2Fyang%2Fconfig%2Fdistributed_datastore_provider%2FDistributedOperationalDataStoreProviderModule.java;fp=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fconfig%2Fyang%2Fconfig%2Fdistributed_datastore_provider%2FDistributedOperationalDataStoreProviderModule.java;h=e7589e0d3621547bce0ee8fda1dd4e1280b18dcf;hp=9bb6b82eee7b16cede1b60242b561e770d27000c;hb=dceb9db7853dabfbd4abdfb3d886a79871097831;hpb=2608b7032d0d019f5125704609eaaa0590c4598a diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/config/yang/config/distributed_datastore_provider/DistributedOperationalDataStoreProviderModule.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/config/yang/config/distributed_datastore_provider/DistributedOperationalDataStoreProviderModule.java index 9bb6b82eee..e7589e0d36 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/config/yang/config/distributed_datastore_provider/DistributedOperationalDataStoreProviderModule.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/config/yang/config/distributed_datastore_provider/DistributedOperationalDataStoreProviderModule.java @@ -9,8 +9,8 @@ package org.opendaylight.controller.config.yang.config.distributed_datastore_provider; import org.opendaylight.controller.cluster.datastore.DatastoreContext; -import org.opendaylight.controller.cluster.datastore.DatastoreSnapshotRestore; -import org.opendaylight.controller.cluster.datastore.DistributedDataStoreFactory; +import org.opendaylight.controller.cluster.datastore.DistributedDataStoreInterface; +import org.opendaylight.controller.config.api.osgi.WaitingServiceTracker; import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; import org.osgi.framework.BundleContext; @@ -44,11 +44,12 @@ public class DistributedOperationalDataStoreProviderModule extends @Override public java.lang.AutoCloseable createInstance() { - DatastoreContext datastoreContext = newDatastoreContext(getOperationalProperties()); - - return DistributedDataStoreFactory.createInstance(getOperationalSchemaServiceDependency(), - datastoreContext, DatastoreSnapshotRestore.instance(), - getOperationalActorSystemProviderDependency(), bundleContext); + // The DistributedOperDataStore is provided via blueprint so wait for and return it here for + // backwards compatibility + WaitingServiceTracker tracker = WaitingServiceTracker.create( + DistributedDataStoreInterface.class, bundleContext, "(type=distributed-operational)"); + DistributedDataStoreInterface delegate = tracker.waitForService(WaitingServiceTracker.FIVE_MINUTES); + return new ForwardingDistributedDataStore(delegate, tracker); } public static DatastoreContext newDatastoreContext() {