2 * Copyright (c) 2014 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
9 package org.opendaylight.controller.cluster.datastore;
11 import akka.actor.ActorSystem;
13 import org.opendaylight.controller.cluster.datastore.shardstrategy.ShardStrategyFactory;
14 import org.opendaylight.controller.sal.core.api.model.SchemaService;
16 public class DistributedDataStoreFactory {
17 public static DistributedDataStore createInstance(String name, SchemaService schemaService,
18 DistributedDataStoreProperties dataStoreProperties) {
20 ActorSystem actorSystem = ActorSystemFactory.getInstance();
21 Configuration config = new ConfigurationImpl("module-shards.conf", "modules.conf");
22 final DistributedDataStore dataStore =
23 new DistributedDataStore(actorSystem, name, new ClusterWrapperImpl(actorSystem),
24 config, dataStoreProperties );
25 ShardStrategyFactory.setConfiguration(config);
26 schemaService.registerSchemaContextListener(dataStore);