package org.opendaylight.controller.cluster.datastore.messages;
+import org.opendaylight.controller.cluster.datastore.DataStoreVersions;
import org.opendaylight.controller.protobuff.messages.cohort3pc.ThreePhaseCommitCohortMessages;
-public class CommitTransactionReply implements SerializableMessage {
- public static final Class<ThreePhaseCommitCohortMessages.CommitTransactionReply> SERIALIZABLE_CLASS =
- ThreePhaseCommitCohortMessages.CommitTransactionReply.class;
+public class CommitTransactionReply extends VersionedExternalizableMessage {
+ @Deprecated
+ private static final Object SERIALIZED_INSTANCE =
+ ThreePhaseCommitCohortMessages.CommitTransactionReply.newBuilder().build();
+ public static final CommitTransactionReply INSTANCE = new CommitTransactionReply();
+
+ public CommitTransactionReply() {
+ }
+
+ private CommitTransactionReply(short version) {
+ super(version);
+ }
+
+ @Deprecated
@Override
- public Object toSerializable() {
- return ThreePhaseCommitCohortMessages.CommitTransactionReply.newBuilder().build();
+ protected Object newLegacySerializedInstance() {
+ return SERIALIZED_INSTANCE;
+ }
+
+ public static CommitTransactionReply instance(short version) {
+ return version == DataStoreVersions.CURRENT_VERSION ? INSTANCE : new CommitTransactionReply(version);
+ }
+
+ public static boolean isSerializedType(Object message) {
+ return message instanceof CommitTransactionReply ||
+ message instanceof ThreePhaseCommitCohortMessages.CommitTransactionReply;
}
}