package org.opendaylight.controller.cluster.datastore.shardstrategy;
-import org.opendaylight.controller.cluster.datastore.Configuration;
+import org.opendaylight.controller.cluster.datastore.config.Configuration;
import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
-import java.util.List;
-
public class ModuleShardStrategy implements ShardStrategy {
public static final String NAME = "module";
public ModuleShardStrategy(String moduleName, Configuration configuration){
this.moduleName = moduleName;
-
this.configuration = configuration;
}
- @Override public String findShard(YangInstanceIdentifier path) {
- List<String> shardNames =
- configuration.getShardNamesFromModuleName(moduleName);
- if(shardNames.size() == 0){
- return DefaultShardStrategy.DEFAULT_SHARD;
- }
- return shardNames.get(0);
+ @Override
+ public String findShard(YangInstanceIdentifier path) {
+ String shardName = configuration.getShardNameForModule(moduleName);
+ return shardName != null ? shardName : DefaultShardStrategy.DEFAULT_SHARD;
}
}