X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;ds=inline;f=opendaylight%2Fmd-sal%2Fcds-access-api%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Faccess%2Fcommands%2FConnectClientRequest.java;h=953fafefa89078871c7c207100199f5779af6f22;hb=f7833ed068d6fc7e5a38ede8c4edd6f371a5acfd;hp=ba86035e920a2356424bbdc37050d0eb2771907c;hpb=b4bf55727093657662d8c16a50fa85f87978a586;p=controller.git diff --git a/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ConnectClientRequest.java b/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ConnectClientRequest.java index ba86035e92..953fafefa8 100644 --- a/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ConnectClientRequest.java +++ b/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ConnectClientRequest.java @@ -10,10 +10,12 @@ package org.opendaylight.controller.cluster.access.commands; import static java.util.Objects.requireNonNull; import akka.actor.ActorRef; -import com.google.common.annotations.Beta; import com.google.common.base.MoreObjects.ToStringHelper; +import java.io.DataInput; +import java.io.IOException; +import java.io.ObjectInput; +import java.io.ObjectOutput; import org.opendaylight.controller.cluster.access.ABIVersion; -import org.opendaylight.controller.cluster.access.concepts.AbstractRequestProxy; import org.opendaylight.controller.cluster.access.concepts.ClientIdentifier; import org.opendaylight.controller.cluster.access.concepts.Request; import org.opendaylight.controller.cluster.access.concepts.RequestException; @@ -26,11 +28,30 @@ import org.opendaylight.controller.cluster.access.concepts.RequestException; * *

* It also includes request stream sequencing information. - * - * @author Robert Varga */ -@Beta public final class ConnectClientRequest extends Request { + interface SerialForm extends Request.SerialForm { + @Override + default ConnectClientRequest readExternal(final ObjectInput in, final ClientIdentifier target, + final long sequence, final ActorRef replyTo) throws IOException { + return new ConnectClientRequest(target, sequence, replyTo, ABIVersion.inexactReadFrom(in), + ABIVersion.inexactReadFrom(in)); + } + + @Override + default ClientIdentifier readTarget(final DataInput in) throws IOException { + return ClientIdentifier.readFrom(in); + } + + @Override + default void writeExternal(final ObjectOutput out, final ConnectClientRequest msg) throws IOException { + Request.SerialForm.super.writeExternal(out, msg); + msg.getMinVersion().writeTo(out); + msg.getMaxVersion().writeTo(out); + } + } + + @java.io.Serial private static final long serialVersionUID = 1L; private final ABIVersion minVersion; @@ -50,8 +71,8 @@ public final class ConnectClientRequest extends Request externalizableProxy( - final ABIVersion version) { - return new ConnectClientRequestProxyV1(this); + protected SerialForm externalizableProxy(final ABIVersion version) { + return new CCR(this); } @Override