X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2Fmessages%2FCreateTransaction.java;h=5ef056e8a0cb7127db01c680230564abc216e6bd;hb=HEAD;hp=795131fdbf6400f0b53c98f91d167bf31f45d493;hpb=83140d53722ad77dd804f7b4d761a673110b83b3;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/CreateTransaction.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/CreateTransaction.java index 795131fdbf..5ef056e8a0 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/CreateTransaction.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/CreateTransaction.java @@ -5,33 +5,67 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ - package org.opendaylight.controller.cluster.datastore.messages; +import static com.google.common.base.Preconditions.checkArgument; +import static java.util.Objects.requireNonNull; + +import java.io.IOException; +import java.io.ObjectInput; +import java.io.ObjectOutput; +import org.opendaylight.controller.cluster.access.concepts.TransactionIdentifier; + +@Deprecated(since = "9.0.0", forRemoval = true) +public final class CreateTransaction extends VersionedExternalizableMessage { + @java.io.Serial + private static final long serialVersionUID = 1L; + + private TransactionIdentifier transactionId; + private int transactionType; -import org.opendaylight.controller.protobuff.messages.transaction.ShardTransactionMessages; + public CreateTransaction() { + } + public CreateTransaction(final TransactionIdentifier transactionId, final int transactionType, + final short version) { + super(version); + this.transactionId = requireNonNull(transactionId); + this.transactionType = transactionType; + } -public class CreateTransaction implements SerializableMessage { - public static Class SERIALIZABLE_CLASS = ShardTransactionMessages.CreateTransaction.class; - private final String transactionId; + public TransactionIdentifier getTransactionId() { + return transactionId; + } - public CreateTransaction(String transactionId){ + public int getTransactionType() { + return transactionType; + } - this.transactionId = transactionId; - } + @Override + public void readExternal(final ObjectInput in) throws IOException, ClassNotFoundException { + super.readExternal(in); + transactionId = TransactionIdentifier.readFrom(in); + transactionType = in.readInt(); + } - public String getTransactionId() { - return transactionId; - } + @Override + public void writeExternal(final ObjectOutput out) throws IOException { + super.writeExternal(out); + transactionId.writeTo(out); + out.writeInt(transactionType); + } - @Override - public Object toSerializable() { - return ShardTransactionMessages.CreateTransaction.newBuilder().setTransactionId(transactionId).build(); - } + @Override + public String toString() { + return "CreateTransaction [transactionId=" + transactionId + ", transactionType=" + transactionType + "]"; + } - public static CreateTransaction fromSerializable(Object message){ - return new CreateTransaction(((ShardTransactionMessages.CreateTransaction)message).getTransactionId()); - } + public static CreateTransaction fromSerializable(final Object message) { + checkArgument(message instanceof CreateTransaction); + return (CreateTransaction)message; + } + public static boolean isSerializedType(final Object message) { + return message instanceof CreateTransaction; + } }