X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fcds-access-api%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Faccess%2Fcommands%2FReadTransactionSuccess.java;h=a03766e9da32d88c7ad3950449ebe3d37b991d6b;hb=HEAD;hp=f3d8395d6f952b51c69b16a78ca32f9078283b0b;hpb=9b4f21460c6dcb10c381df631d064d05de16546c;p=controller.git diff --git a/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ReadTransactionSuccess.java b/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ReadTransactionSuccess.java index f3d8395d6f..a03766e9da 100644 --- a/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ReadTransactionSuccess.java +++ b/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ReadTransactionSuccess.java @@ -7,40 +7,66 @@ */ package org.opendaylight.controller.cluster.access.commands; -import com.google.common.annotations.Beta; -import com.google.common.base.Optional; -import com.google.common.base.Preconditions; +import static java.util.Objects.requireNonNull; + +import java.io.IOException; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; +import java.io.ObjectStreamException; +import java.util.Optional; import org.opendaylight.controller.cluster.access.ABIVersion; +import org.opendaylight.controller.cluster.access.concepts.SliceableMessage; import org.opendaylight.controller.cluster.access.concepts.TransactionIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; /** - * Successful reply to an {@link ReadTransactionRequest}. It indicates presence of requested data via {@link #getData()}. - * - * @author Robert Varga + * Successful reply to an {@link ReadTransactionRequest}. It indicates presence of requested data via + * {@link #getData()}. */ -@Beta -public final class ReadTransactionSuccess extends TransactionSuccess { +public final class ReadTransactionSuccess extends TransactionSuccess + implements SliceableMessage { + @java.io.Serial private static final long serialVersionUID = 1L; - private final Optional> data; + + private final Optional data; + + private ReadTransactionSuccess(final ReadTransactionSuccess request, final ABIVersion version) { + super(request, version); + data = request.data; + } public ReadTransactionSuccess(final TransactionIdentifier identifier, final long sequence, - final Optional> data) { + final Optional data) { super(identifier, sequence); - this.data = Preconditions.checkNotNull(data); + this.data = requireNonNull(data); } - public Optional> getData() { + public Optional getData() { return data; } @Override - protected AbstractTransactionSuccessProxy externalizableProxy(final ABIVersion version) { - return new ReadTransactionSuccessProxyV1(this); + protected RTS externalizableProxy(final ABIVersion version) { + return new RTS(this); } @Override protected ReadTransactionSuccess cloneAsVersion(final ABIVersion version) { - return this; + return new ReadTransactionSuccess(this, version); + } + + @java.io.Serial + private void readObject(final ObjectInputStream stream) throws IOException, ClassNotFoundException { + throwNSE(); + } + + @java.io.Serial + private void readObjectNoData() throws ObjectStreamException { + throwNSE(); + } + + @java.io.Serial + private void writeObject(final ObjectOutputStream stream) throws IOException { + throwNSE(); } }