X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-akka-raft%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fraft%2FMockRaftActorContext.java;h=406c164cdbd66acbc7ce452ad6ee4640ec4521b3;hp=77d0071917261ad0c2bfe03573c96a9b5769fb08;hb=ed693440aa741fee9b94447f8404d89b4020f616;hpb=c231099ee1cf768de3002e8a290befa172150b7a diff --git a/opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/MockRaftActorContext.java b/opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/MockRaftActorContext.java index 77d0071917..406c164cdb 100644 --- a/opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/MockRaftActorContext.java +++ b/opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/MockRaftActorContext.java @@ -14,7 +14,12 @@ import akka.actor.ActorSystem; import akka.actor.Props; import akka.event.Logging; import akka.event.LoggingAdapter; +import com.google.protobuf.GeneratedMessage; +import org.opendaylight.controller.cluster.raft.protobuff.client.messages.Payload; +import org.opendaylight.controller.cluster.raft.protobuff.messages.AppendEntriesMessages; +import org.opendaylight.controller.cluster.raft.protobuff.messages.MockPayloadMessages; +import java.io.Serializable; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; @@ -79,7 +84,7 @@ public class MockRaftActorContext implements RaftActorContext { public void initReplicatedLog(){ this.replicatedLog = new SimpleReplicatedLog(); - this.replicatedLog.append(new MockReplicatedLogEntry(1, 1, "")); + this.replicatedLog.append(new MockReplicatedLogEntry(1, 1, new MockPayload(""))); } @Override public ActorRef actorOf(Props props) { @@ -255,20 +260,49 @@ public class MockRaftActorContext implements RaftActorContext { } } - public static class MockReplicatedLogEntry implements ReplicatedLogEntry { + public static class MockPayload extends Payload implements Serializable { + private String value = ""; + + public MockPayload(String s) { + this.value = s; + } + + @Override public Map encode() { + Map map = new HashMap(); + map.put(MockPayloadMessages.value, value); + return map; + } + + @Override public Payload decode( + AppendEntriesMessages.AppendEntries.ReplicatedLogEntry.Payload payloadProtoBuff) { + String value = payloadProtoBuff.getExtension(MockPayloadMessages.value); + this.value = value; + return this; + } + + @Override public String getClientPayloadClassName() { + return MockPayload.class.getName(); + } + + public String toString() { + return value; + } + } + + public static class MockReplicatedLogEntry implements ReplicatedLogEntry, Serializable { private final long term; private final long index; - private final Object data; + private final Payload data; - public MockReplicatedLogEntry(long term, long index, Object data){ + public MockReplicatedLogEntry(long term, long index, Payload data){ this.term = term; this.index = index; this.data = data; } - @Override public Object getData() { + @Override public Payload getData() { return data; }