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%2Fconfig%2Fyang%2Fconfig%2Fdistributed_datastore_provider%2FDistributedOperationalDataStoreProviderModule.java;h=814e6f606ac00bc311eb191c81497e46b56e2357;hb=c3d71a7be3f065d299e9b9fb61df26ca765eb2b3;hp=a88d09457ae938c78d87b80c5370574e311eeac4;hpb=f71a2c712690ecfd1260543ab58d8e16453f7918;p=controller.git 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 a88d09457a..814e6f606a 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 @@ -1,10 +1,18 @@ package org.opendaylight.controller.config.yang.config.distributed_datastore_provider; +import java.util.concurrent.TimeUnit; + +import org.opendaylight.controller.cluster.datastore.DatastoreContext; import org.opendaylight.controller.cluster.datastore.DistributedDataStoreFactory; -import org.opendaylight.controller.cluster.datastore.DistributedDataStoreProperties; +import org.opendaylight.controller.md.sal.dom.store.impl.InMemoryDOMDataStoreConfigProperties; +import org.osgi.framework.BundleContext; + +import scala.concurrent.duration.Duration; public class DistributedOperationalDataStoreProviderModule extends org.opendaylight.controller.config.yang.config.distributed_datastore_provider.AbstractDistributedOperationalDataStoreProviderModule { + private BundleContext bundleContext; + public DistributedOperationalDataStoreProviderModule( org.opendaylight.controller.config.api.ModuleIdentifier identifier, org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) { @@ -32,14 +40,22 @@ public class DistributedOperationalDataStoreProviderModule extends props = new OperationalProperties(); } - return DistributedDataStoreFactory.createInstance("operational", - getOperationalSchemaServiceDependency(), - new DistributedDataStoreProperties( + DatastoreContext datastoreContext = new DatastoreContext("DistributedOperationalDatastore", + InMemoryDOMDataStoreConfigProperties.create( props.getMaxShardDataChangeExecutorPoolSize().getValue(), props.getMaxShardDataChangeExecutorQueueSize().getValue(), props.getMaxShardDataChangeListenerQueueSize().getValue(), - props.getShardTransactionIdleTimeoutInMinutes().getValue(), - props.getOperationTimeoutInSeconds().getValue())); + props.getMaxShardDataStoreExecutorQueueSize().getValue()), + Duration.create(props.getShardTransactionIdleTimeoutInMinutes().getValue(), + TimeUnit.MINUTES), + props.getOperationTimeoutInSeconds().getValue()); + + return DistributedDataStoreFactory.createInstance("operational", + getOperationalSchemaServiceDependency(), datastoreContext, bundleContext); + } + + public void setBundleContext(BundleContext bundleContext) { + this.bundleContext = bundleContext; } }