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.utils;
11 import com.google.common.base.Optional;
12 import com.google.common.collect.ImmutableMap;
13 import java.util.ArrayList;
14 import java.util.Arrays;
15 import java.util.Collections;
16 import java.util.List;
19 import org.opendaylight.controller.cluster.datastore.Configuration;
20 import org.opendaylight.controller.cluster.datastore.shardstrategy.ShardStrategy;
22 public class MockConfiguration implements Configuration{
23 private Map<String, List<String>> shardMembers = ImmutableMap.<String, List<String>>builder().
24 put("default", Arrays.asList("member-1", "member-2")).
25 /*put("astronauts", Arrays.asList("member-2", "member-3")).*/build();
27 public MockConfiguration() {
30 public MockConfiguration(Map<String, List<String>> shardMembers) {
31 this.shardMembers = shardMembers;
35 public List<String> getMemberShardNames(final String memberName) {
36 return new ArrayList<>(shardMembers.keySet());
39 public Optional<String> getModuleNameFromNameSpace(
40 final String nameSpace) {
41 return Optional.absent();
45 public Map<String, ShardStrategy> getModuleNameToShardStrategyMap() {
46 return Collections.emptyMap();
49 @Override public List<String> getShardNamesFromModuleName(
50 final String moduleName) {
51 return Collections.emptyList();
54 @Override public List<String> getMembersFromShardName(final String shardName) {
55 if("default".equals(shardName)) {
56 return Arrays.asList("member-1", "member-2");
57 } else if("astronauts".equals(shardName)){
58 return Arrays.asList("member-2", "member-3");
61 List<String> members = shardMembers.get(shardName);
62 return members != null ? members : Collections.<String>emptyList();
65 @Override public Set<String> getAllShardNames() {
66 return Collections.emptySet();