BUG-5280: implement message queueing
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / main / java / org / opendaylight / controller / cluster / datastore / messages / AbortTransaction.java
index e70ced86e3f9f8ab989a528e4906fc725c73d1a2..57a4e395fa9e5b489befa1a619c433412cdcfbaf 100644 (file)
@@ -8,8 +8,8 @@
 
 package org.opendaylight.controller.cluster.datastore.messages;
 
-import org.opendaylight.controller.cluster.datastore.DataStoreVersions;
-import org.opendaylight.controller.protobuff.messages.cohort3pc.ThreePhaseCommitCohortMessages;
+import com.google.common.base.Preconditions;
+import org.opendaylight.controller.cluster.access.concepts.TransactionIdentifier;
 
 public class AbortTransaction extends AbstractThreePhaseCommitMessage {
     private static final long serialVersionUID = 1L;
@@ -17,27 +17,16 @@ public class AbortTransaction extends AbstractThreePhaseCommitMessage {
     public AbortTransaction() {
     }
 
-    public AbortTransaction(String transactionID, final short version) {
+    public AbortTransaction(TransactionIdentifier transactionID, final short version) {
         super(transactionID, version);
     }
 
-    @Override
-    protected Object newLegacySerializedInstance() {
-        return ThreePhaseCommitCohortMessages.AbortTransaction.newBuilder().
-                setTransactionId(getTransactionID()).build();
-    }
-
     public static AbortTransaction fromSerializable(Object serializable) {
-        if(serializable instanceof AbortTransaction) {
+        Preconditions.checkArgument(serializable instanceof AbortTransaction);
             return (AbortTransaction)serializable;
-        } else {
-            return new AbortTransaction(((ThreePhaseCommitCohortMessages.AbortTransaction)serializable).
-                    getTransactionId(), DataStoreVersions.LITHIUM_VERSION);
-        }
     }
 
     public static boolean isSerializedType(Object message) {
-        return message instanceof AbortTransaction ||
-                message instanceof ThreePhaseCommitCohortMessages.AbortTransaction;
+        return message instanceof AbortTransaction;
     }
 }