X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2FTestShard.java;h=b0e744a24add221131082faba9e3144f8b35c497;hp=9eb20c03960792898a611d89736a6d4a3b205031;hb=e66759266dc43d5f58b2837aca5047b42c205e4a;hpb=9b319f491af1c65705b69e8a182aab5006a2f959 diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TestShard.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TestShard.java index 9eb20c0396..b0e744a24a 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TestShard.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TestShard.java @@ -7,51 +7,14 @@ */ package org.opendaylight.controller.cluster.datastore; -import static java.util.Objects.requireNonNull; - -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; -import java.util.function.Predicate; import org.opendaylight.controller.cluster.datastore.persisted.FrontendShardDataTreeSnapshotMetadata; public class TestShard extends Shard { - public static class Builder extends Shard.Builder { - Builder() { - super(TestShard.class); - } - } - // Message to request FrontendMetadata public static final class RequestFrontendMetadata { } - private abstract static class DropMessages { - private final Class msgClass; - - DropMessages(final Class msgClass) { - this.msgClass = requireNonNull(msgClass); - } - - final Class getMsgClass() { - return msgClass; - } - } - - public static class StartDropMessages extends DropMessages { - public StartDropMessages(final Class msgClass) { - super(msgClass); - } - } - - public static class StopDropMessages extends DropMessages { - public StopDropMessages(final Class msgClass) { - super(msgClass); - } - } - - private final Map, Predicate> dropMessages = new ConcurrentHashMap<>(); - protected TestShard(AbstractBuilder builder) { super(builder); } @@ -66,37 +29,14 @@ public class TestShard extends Shard { } } - @Override - protected void handleCommand(Object message) { - if (message instanceof StartDropMessages) { - startDropMessages(((StartDropMessages) message).getMsgClass()); - } else if (message instanceof StopDropMessages) { - stopDropMessages(((StopDropMessages) message).getMsgClass()); - } else { - dropOrHandle(message); - } + public static Shard.Builder builder() { + return new TestShard.Builder(); } - private void dropOrHandle(T message) { - Predicate drop = (Predicate) dropMessages.get(message.getClass()); - if (drop == null || !drop.test(message)) { - super.handleCommand(message); + public static class Builder extends Shard.Builder { + Builder() { + super(TestShard.class); } } - - private void startDropMessages(final Class msgClass) { - dropMessages.put(msgClass, msg -> true); - } - - void startDropMessages(final Class msgClass, final Predicate filter) { - dropMessages.put(msgClass, filter); - } - - public void stopDropMessages(final Class msgClass) { - dropMessages.remove(msgClass); - } - - public static TestShard.Builder builder() { - return new TestShard.Builder(); - } } +