BUG 2187 Handle RemoveShardReplica in ShardManager
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / main / java / org / opendaylight / controller / cluster / datastore / messages / ForwardedReadyTransaction.java
index 38886c9a583c500e4fc9b86f54422c001482e777..b3d7f2c2d6dea96c5fd507c573ab723983227b1c 100644 (file)
@@ -7,8 +7,8 @@
  */
 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 com.google.common.base.Preconditions;
+import org.opendaylight.controller.cluster.datastore.ReadWriteShardDataTreeTransaction;
 
 /**
  * Transaction ReadyTransaction message that is forwarded to the local Shard from the ShardTransaction.
@@ -17,38 +17,38 @@ import org.opendaylight.controller.sal.core.spi.data.DOMStoreThreePhaseCommitCoh
  */
 public class ForwardedReadyTransaction {
     private final String transactionID;
-    private final DOMStoreThreePhaseCommitCohort cohort;
-    private final Modification modification;
+    private final ReadWriteShardDataTreeTransaction transaction;
     private final boolean returnSerialized;
-    private final int txnClientVersion;
+    private final boolean doImmediateCommit;
+    private final short txnClientVersion;
 
-    public ForwardedReadyTransaction(String transactionID, int txnClientVersion,
-            DOMStoreThreePhaseCommitCohort cohort, Modification modification,
-            boolean returnSerialized) {
+    public ForwardedReadyTransaction(String transactionID, short txnClientVersion,
+            ReadWriteShardDataTreeTransaction transaction, boolean returnSerialized,
+            boolean doImmediateCommit) {
         this.transactionID = transactionID;
-        this.cohort = cohort;
-        this.modification = modification;
+        this.transaction = Preconditions.checkNotNull(transaction);
         this.returnSerialized = returnSerialized;
         this.txnClientVersion = txnClientVersion;
+        this.doImmediateCommit = doImmediateCommit;
     }
 
     public String getTransactionID() {
         return transactionID;
     }
 
-    public DOMStoreThreePhaseCommitCohort getCohort() {
-        return cohort;
-    }
-
-    public Modification getModification() {
-        return modification;
+    public ReadWriteShardDataTreeTransaction getTransaction() {
+        return transaction;
     }
 
     public boolean isReturnSerialized() {
         return returnSerialized;
     }
 
-    public int getTxnClientVersion() {
+    public short getTxnClientVersion() {
         return txnClientVersion;
     }
+
+    public boolean isDoImmediateCommit() {
+        return doImmediateCommit;
+    }
 }