* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-
package org.opendaylight.controller.cluster.datastore.utils;
-import com.google.common.collect.Sets;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import org.opendaylight.controller.cluster.datastore.config.Configuration;
+import java.util.stream.Collectors;
+import org.opendaylight.controller.cluster.access.concepts.MemberName;
import org.opendaylight.controller.cluster.datastore.config.ConfigurationImpl;
import org.opendaylight.controller.cluster.datastore.config.ModuleConfig;
-import org.opendaylight.controller.cluster.datastore.config.ModuleShardConfigProvider;
public class MockConfiguration extends ConfigurationImpl {
public MockConfiguration() {
}
public MockConfiguration(final Map<String, List<String>> shardMembers) {
- super(new ModuleShardConfigProvider() {
- @Override
- public Map<String, ModuleConfig> retrieveModuleConfigs(Configuration configuration) {
- Map<String, ModuleConfig> retMap = new HashMap<String, ModuleConfig>();
- for(Map.Entry<String, List<String>> e : shardMembers.entrySet()) {
- String shardName = e.getKey();
- ModuleConfig mc = new ModuleConfig(shardName);
- mc.addShardConfig(shardName, Sets.newHashSet(e.getValue()));
- retMap.put(mc.getName(), mc);
- }
-
- return retMap;
+ super(configuration -> {
+ Map<String, ModuleConfig.Builder> retMap = new HashMap<>();
+ for (Map.Entry<String, List<String>> e : shardMembers.entrySet()) {
+ String shardName = e.getKey();
+ retMap.put(shardName,
+ ModuleConfig.builder(shardName).shardConfig(
+ shardName, e.getValue().stream().map(MemberName::forName).collect(Collectors.toList())));
}
+
+ return retMap;
});
}
}