X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2Fmessages%2FForwardedReadyTransaction.java;h=2042e49d654cf75f08a320ecb8626fc6cd5b348e;hp=38886c9a583c500e4fc9b86f54422c001482e777;hb=127042ea7e148d9dc0282acc3780b4754ca69e12;hpb=f281dc3e886501dc617e397c8e203732300a8f08 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 38886c9a58..2042e49d65 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,8 +7,13 @@ */ 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. @@ -16,39 +21,46 @@ import org.opendaylight.controller.sal.core.spi.data.DOMStoreThreePhaseCommitCoh * @author Thomas Pantelis */ public class ForwardedReadyTransaction { - private final String transactionID; - private final DOMStoreThreePhaseCommitCohort cohort; - private final Modification modification; - private final boolean returnSerialized; - private final int txnClientVersion; - - public ForwardedReadyTransaction(String transactionID, int txnClientVersion, - DOMStoreThreePhaseCommitCohort cohort, Modification modification, - boolean returnSerialized) { - this.transactionID = transactionID; - this.cohort = cohort; - this.modification = modification; - this.returnSerialized = returnSerialized; + private final TransactionIdentifier transactionId; + private final ReadWriteShardDataTreeTransaction transaction; + private final boolean doImmediateCommit; + private final short txnClientVersion; + private @Nullable final SortedSet participatingShardNames; + + public ForwardedReadyTransaction(TransactionIdentifier transactionId, short txnClientVersion, + ReadWriteShardDataTreeTransaction transaction, boolean doImmediateCommit, + 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 String getTransactionID() { - return transactionID; + public ReadWriteShardDataTreeTransaction getTransaction() { + return transaction; } - public DOMStoreThreePhaseCommitCohort getCohort() { - return cohort; + public short getTxnClientVersion() { + return txnClientVersion; } - public Modification getModification() { - return modification; + public boolean isDoImmediateCommit() { + return doImmediateCommit; } - public boolean isReturnSerialized() { - return returnSerialized; + public Optional> getParticipatingShardNames() { + return Optional.ofNullable(participatingShardNames); } - public int getTxnClientVersion() { - return txnClientVersion; + @Override + public String toString() { + return "ForwardedReadyTransaction [transactionId=" + transactionId + ", transaction=" + transaction + + ", doImmediateCommit=" + doImmediateCommit + ", participatingShardNames=" + participatingShardNames + + ", txnClientVersion=" + txnClientVersion + "]"; } }