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%2FForwardedReadyTransaction.java;h=fbc66a4d057099c22ca7c77ae79eb261ccf3e562;hb=HEAD;hp=4f8ea51f784ea2e0352eb6aedd8d1dc35469f0ef;hpb=b3c034675957f963c5878ce1e5e183ec2de8b5e2;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/ForwardedReadyTransaction.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/ForwardedReadyTransaction.java index 4f8ea51f78..fbc66a4d05 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/ForwardedReadyTransaction.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/ForwardedReadyTransaction.java @@ -7,35 +7,61 @@ */ package org.opendaylight.controller.cluster.datastore.messages; -import org.opendaylight.controller.cluster.datastore.modification.Modification; -import org.opendaylight.controller.sal.core.spi.data.DOMStoreThreePhaseCommitCohort; +import static java.util.Objects.requireNonNull; + +import java.util.Optional; +import java.util.SortedSet; +import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.controller.cluster.access.concepts.TransactionIdentifier; +import org.opendaylight.controller.cluster.datastore.ReadWriteShardDataTreeTransaction; /** * Transaction ReadyTransaction message that is forwarded to the local Shard from the ShardTransaction. * * @author Thomas Pantelis */ -public class ForwardedReadyTransaction { - private final String transactionID; - private final DOMStoreThreePhaseCommitCohort cohort; - private final Modification modification; - - public ForwardedReadyTransaction(String transactionID, DOMStoreThreePhaseCommitCohort cohort, - Modification modification) { - this.transactionID = transactionID; - this.cohort = cohort; - this.modification = modification; +@Deprecated(since = "9.0.0", forRemoval = true) +public final class ForwardedReadyTransaction { + private final TransactionIdentifier transactionId; + private final ReadWriteShardDataTreeTransaction transaction; + private final boolean doImmediateCommit; + private final short txnClientVersion; + private final @Nullable SortedSet participatingShardNames; + + public ForwardedReadyTransaction(final TransactionIdentifier transactionId, final short txnClientVersion, + final ReadWriteShardDataTreeTransaction transaction, final boolean doImmediateCommit, + final Optional> participatingShardNames) { + this.transactionId = requireNonNull(transactionId); + this.transaction = requireNonNull(transaction); + this.txnClientVersion = txnClientVersion; + this.doImmediateCommit = doImmediateCommit; + this.participatingShardNames = requireNonNull(participatingShardNames).orElse(null); + } + + public TransactionIdentifier getTransactionId() { + return transactionId; + } + + public ReadWriteShardDataTreeTransaction getTransaction() { + return transaction; + } + + public short getTxnClientVersion() { + return txnClientVersion; } - public String getTransactionID() { - return transactionID; + public boolean isDoImmediateCommit() { + return doImmediateCommit; } - public DOMStoreThreePhaseCommitCohort getCohort() { - return cohort; + public Optional> getParticipatingShardNames() { + return Optional.ofNullable(participatingShardNames); } - public Modification getModification() { - return modification; + @Override + public String toString() { + return "ForwardedReadyTransaction [transactionId=" + transactionId + ", transaction=" + transaction + + ", doImmediateCommit=" + doImmediateCommit + ", participatingShardNames=" + participatingShardNames + + ", txnClientVersion=" + txnClientVersion + "]"; } }