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%2FDistributedConfigDataStoreProviderModule.java;h=c26be148ee45c3ccfae16359dba45ce3ea57baca;hb=f71a2c712690ecfd1260543ab58d8e16453f7918;hp=665cb2d44148a6a3b6bb41d403e54b95cfe45363;hpb=8a31e147100aa64b6090d856b2efe7ef50021555;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/config/yang/config/distributed_datastore_provider/DistributedConfigDataStoreProviderModule.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/config/yang/config/distributed_datastore_provider/DistributedConfigDataStoreProviderModule.java index 665cb2d441..c26be148ee 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/config/yang/config/distributed_datastore_provider/DistributedConfigDataStoreProviderModule.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/config/yang/config/distributed_datastore_provider/DistributedConfigDataStoreProviderModule.java @@ -1,15 +1,21 @@ package org.opendaylight.controller.config.yang.config.distributed_datastore_provider; -import akka.actor.ActorSystem; -import com.typesafe.config.ConfigFactory; -import org.opendaylight.controller.cluster.datastore.DistributedDataStore; - -public class DistributedConfigDataStoreProviderModule extends org.opendaylight.controller.config.yang.config.distributed_datastore_provider.AbstractDistributedConfigDataStoreProviderModule { - public DistributedConfigDataStoreProviderModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) { +import org.opendaylight.controller.cluster.datastore.DistributedDataStoreFactory; +import org.opendaylight.controller.cluster.datastore.DistributedDataStoreProperties; + +public class DistributedConfigDataStoreProviderModule extends + org.opendaylight.controller.config.yang.config.distributed_datastore_provider.AbstractDistributedConfigDataStoreProviderModule { + public DistributedConfigDataStoreProviderModule( + org.opendaylight.controller.config.api.ModuleIdentifier identifier, + org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) { super(identifier, dependencyResolver); } - public DistributedConfigDataStoreProviderModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, org.opendaylight.controller.config.api.DependencyResolver dependencyResolver, org.opendaylight.controller.config.yang.config.distributed_datastore_provider.DistributedConfigDataStoreProviderModule oldModule, java.lang.AutoCloseable oldInstance) { + public DistributedConfigDataStoreProviderModule( + org.opendaylight.controller.config.api.ModuleIdentifier identifier, + org.opendaylight.controller.config.api.DependencyResolver dependencyResolver, + org.opendaylight.controller.config.yang.config.distributed_datastore_provider.DistributedConfigDataStoreProviderModule oldModule, + java.lang.AutoCloseable oldInstance) { super(identifier, dependencyResolver, oldModule, oldInstance); } @@ -20,22 +26,18 @@ public class DistributedConfigDataStoreProviderModule extends org.opendaylight.c @Override public java.lang.AutoCloseable createInstance() { - final ActorSystem actorSystem = ActorSystem.create("opendaylight-cluster-system", ConfigFactory - .load().getConfig("ODLCluster")); - - - final DistributedDataStore configDatastore = new DistributedDataStore(actorSystem, "config"); - getSchemaServiceDependency().registerSchemaServiceListener(configDatastore); - final class AutoCloseableDistributedDataStore implements AutoCloseable { - - @Override - public void close() throws Exception { - actorSystem.shutdown(); + ConfigProperties props = getConfigProperties(); + if(props == null) { + props = new ConfigProperties(); } - } - return new AutoCloseableDistributedDataStore(); + return DistributedDataStoreFactory.createInstance("config", getConfigSchemaServiceDependency(), + new DistributedDataStoreProperties( + props.getMaxShardDataChangeExecutorPoolSize().getValue(), + props.getMaxShardDataChangeExecutorQueueSize().getValue(), + props.getMaxShardDataChangeListenerQueueSize().getValue(), + props.getShardTransactionIdleTimeoutInMinutes().getValue(), + props.getOperationTimeoutInSeconds().getValue())); } - }