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;fp=opendaylight%2Fmd-sal%2Fsal-akka-raft%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fraft%2Fmessages%2FAppendEntries.java;h=7d7dc9d6fbf4903d34cbcc642297c7d9de19a210;hp=5572b01d301df8f068c81cc240f178009bf974ce;hb=a4d01b62cc1e8d220355aa41632b1a425e8d9652;hpb=185b965d5450aeba211ec8afdaecc139c941a474 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 5572b01d30..7d7dc9d6fb 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 @@ -141,16 +141,14 @@ public final class AppendEntries extends AbstractRaftRPC { @Override Object writeReplace() { - if (recipientRaftVersion <= RaftVersions.BORON_VERSION) { - return new Proxy(this); - } - return recipientRaftVersion == RaftVersions.FLUORINE_VERSION ? new ProxyV2(this) : new AE(this); + return recipientRaftVersion <= RaftVersions.FLUORINE_VERSION ? new ProxyV2(this) : new AE(this); } /** * Fluorine version that adds the leader address. */ private static class ProxyV2 implements Externalizable { + @java.io.Serial private static final long serialVersionUID = 1L; private AppendEntries appendEntries; @@ -210,68 +208,7 @@ public final class AppendEntries extends AbstractRaftRPC { leaderAddress); } - private Object readResolve() { - return appendEntries; - } - } - - /** - * Pre-Fluorine version. - */ - @Deprecated - private static class Proxy implements Externalizable { - private static final long serialVersionUID = 1L; - - 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() { - } - - Proxy(final AppendEntries appendEntries) { - this.appendEntries = appendEntries; - } - - @Override - public void writeExternal(final ObjectOutput out) throws IOException { - out.writeLong(appendEntries.getTerm()); - out.writeObject(appendEntries.leaderId); - out.writeLong(appendEntries.prevLogTerm); - out.writeLong(appendEntries.prevLogIndex); - out.writeLong(appendEntries.leaderCommit); - out.writeLong(appendEntries.replicatedToAllIndex); - out.writeShort(appendEntries.payloadVersion); - - out.writeInt(appendEntries.entries.size()); - for (ReplicatedLogEntry e: appendEntries.entries) { - out.writeLong(e.getIndex()); - out.writeLong(e.getTerm()); - out.writeObject(e.getData()); - } - } - - @Override - public void readExternal(final ObjectInput in) throws IOException, ClassNotFoundException { - long term = in.readLong(); - String leaderId = (String) in.readObject(); - long prevLogTerm = in.readLong(); - long prevLogIndex = in.readLong(); - long leaderCommit = in.readLong(); - long replicatedToAllIndex = in.readLong(); - short payloadVersion = in.readShort(); - - int size = in.readInt(); - var entries = ImmutableList.builderWithExpectedSize(size); - 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.build(), leaderCommit, - replicatedToAllIndex, payloadVersion, RaftVersions.CURRENT_VERSION, RaftVersions.BORON_VERSION, null); - } - + @java.io.Serial private Object readResolve() { return appendEntries; }