X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-akka-raft%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fraft%2Fmessages%2FAppendEntries.java;h=017794679c1e2deb4a5ece3c25f641cca32799ef;hp=dc1ebf0730fd49bd7b3b73ba3c54e4c5127bc02c;hb=79e6240ad565717e2fba62a339f11fcbd239f440;hpb=baa92613648863a7d839be36f89cc30431d5a66a diff --git a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/messages/AppendEntries.java b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/messages/AppendEntries.java index dc1ebf0730..017794679c 100644 --- a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/messages/AppendEntries.java +++ b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/messages/AppendEntries.java @@ -15,7 +15,7 @@ import java.io.ObjectOutput; import java.util.ArrayList; import java.util.List; import org.opendaylight.controller.cluster.raft.ReplicatedLogEntry; -import org.opendaylight.controller.cluster.raft.ReplicatedLogImplEntry; +import org.opendaylight.controller.cluster.raft.persisted.SimpleReplicatedLogEntry; import org.opendaylight.controller.cluster.raft.protobuff.client.messages.Payload; /** @@ -34,9 +34,8 @@ public class AppendEntries extends AbstractRaftRPC { // term of prevLogIndex entry private final long prevLogTerm; - // log entries to store (empty for heartbeat; - // may send more than one for efficiency) - private transient List entries; + // log entries to store (empty for heart beat - may send more than one for efficiency) + private final List entries; // leader's commitIndex private final long leaderCommit; @@ -105,6 +104,9 @@ public class AppendEntries extends AbstractRaftRPC { private AppendEntries appendEntries; + // checkstyle flags the public modifier as redundant which really doesn't make sense since it clearly isn't + // redundant. It is explicitly needed for Java serialization to be able to create instances via reflection. + @SuppressWarnings("checkstyle:RedundantModifier") public Proxy() { } @@ -123,7 +125,7 @@ public class AppendEntries extends AbstractRaftRPC { out.writeShort(appendEntries.payloadVersion); out.writeInt(appendEntries.entries.size()); - for(ReplicatedLogEntry e: appendEntries.entries) { + for (ReplicatedLogEntry e: appendEntries.entries) { out.writeLong(e.getIndex()); out.writeLong(e.getTerm()); out.writeObject(e.getData()); @@ -142,8 +144,8 @@ public class AppendEntries extends AbstractRaftRPC { int size = in.readInt(); List entries = new ArrayList<>(size); - for(int i = 0; i < size; i++) { - entries.add(new ReplicatedLogImplEntry(in.readLong(), in.readLong(), (Payload) in.readObject())); + for (int i = 0; i < size; i++) { + entries.add(new SimpleReplicatedLogEntry(in.readLong(), in.readLong(), (Payload) in.readObject())); } appendEntries = new AppendEntries(term, leaderId, prevLogIndex, prevLogTerm, entries, leaderCommit,