package org.opendaylight.controller.cluster.datastore.messages;
+import com.google.common.base.Preconditions;
import java.io.IOException;
import java.io.ObjectInput;
import java.io.ObjectOutput;
-import org.opendaylight.controller.cluster.datastore.DataStoreVersions;
-import org.opendaylight.controller.protobuff.messages.transaction.ShardTransactionChainMessages;
public class CloseTransactionChain extends VersionedExternalizableMessage {
private static final long serialVersionUID = 1L;
out.writeUTF(transactionChainId);
}
- @Override
- public Object toSerializable() {
- if(getVersion() >= DataStoreVersions.BORON_VERSION) {
- return this;
- } else {
- return ShardTransactionChainMessages.CloseTransactionChain.newBuilder()
- .setTransactionChainId(transactionChainId).build();
- }
- }
-
public static CloseTransactionChain fromSerializable(final Object serializable){
- if(serializable instanceof CloseTransactionChain) {
- return (CloseTransactionChain)serializable;
- } else {
- ShardTransactionChainMessages.CloseTransactionChain closeTransactionChain =
- (ShardTransactionChainMessages.CloseTransactionChain) serializable;
- return new CloseTransactionChain(closeTransactionChain.getTransactionChainId(),
- DataStoreVersions.LITHIUM_VERSION);
- }
+ Preconditions.checkArgument(serializable instanceof CloseTransactionChain);
+ return (CloseTransactionChain)serializable;
}
public static boolean isSerializedType(Object message) {
- return message instanceof CloseTransactionChain ||
- message instanceof ShardTransactionChainMessages.CloseTransactionChain;
+ return message instanceof CloseTransactionChain;
}
}