CDS: Implement front-end support for local transactions
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / main / java / org / opendaylight / controller / cluster / datastore / shardstrategy / ModuleShardStrategy.java
index 6f4b65a6f3c2db45baf5e1a9928d36928e252733..e9ecf7eac30f3e64851e2225ad4a8838d02060e6 100644 (file)
@@ -8,6 +8,7 @@
 
 package org.opendaylight.controller.cluster.datastore.shardstrategy;
 
+import java.util.List;
 import org.opendaylight.controller.cluster.datastore.Configuration;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 
@@ -24,7 +25,13 @@ public class ModuleShardStrategy implements ShardStrategy {
         this.configuration = configuration;
     }
 
-    @Override public String findShard(YangInstanceIdentifier path) {
-        return configuration.getShardNamesFromModuleName(moduleName).get(0);
+    @Override
+    public String findShard(YangInstanceIdentifier path) {
+        List<String> shardNames =
+            configuration.getShardNamesFromModuleName(moduleName);
+        if (shardNames.isEmpty()) {
+            return DefaultShardStrategy.DEFAULT_SHARD;
+        }
+        return shardNames.get(0);
     }
 }