Merge "Fix config-manager activator"
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / main / java / org / opendaylight / controller / cluster / datastore / shardstrategy / ModuleShardStrategy.java
index fe6f740d279ef5a2ea6a8fad7922e57ab7e1b135..fc7ebd94dd481c909ba6e4d65d205e41cbfdebbf 100644 (file)
@@ -9,7 +9,9 @@
 package org.opendaylight.controller.cluster.datastore.shardstrategy;
 
 import org.opendaylight.controller.cluster.datastore.Configuration;
-import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier;
+import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
+
+import java.util.List;
 
 public class ModuleShardStrategy implements ShardStrategy {
 
@@ -24,7 +26,12 @@ public class ModuleShardStrategy implements ShardStrategy {
         this.configuration = configuration;
     }
 
-    @Override public String findShard(InstanceIdentifier path) {
-        return configuration.getShardNamesFromModuleName(moduleName).get(0);
+    @Override public String findShard(YangInstanceIdentifier path) {
+        List<String> shardNames =
+            configuration.getShardNamesFromModuleName(moduleName);
+        if(shardNames.size() == 0){
+            return DefaultShardStrategy.DEFAULT_SHARD;
+        }
+        return shardNames.get(0);
     }
 }