2 * Copyright (c) 2014 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
9 package org.opendaylight.controller.cluster.datastore.messages;
11 import com.google.common.base.Preconditions;
12 import java.io.IOException;
13 import java.io.ObjectInput;
14 import java.io.ObjectOutput;
15 import org.opendaylight.controller.cluster.access.concepts.TransactionIdentifier;
17 public class CreateTransactionReply extends VersionedExternalizableMessage {
18 private static final long serialVersionUID = 1L;
20 private String transactionPath;
21 private TransactionIdentifier transactionId;
23 public CreateTransactionReply() {
26 public CreateTransactionReply(final String transactionPath, final TransactionIdentifier transactionId,
27 final short version) {
29 this.transactionPath = Preconditions.checkNotNull(transactionPath);
30 this.transactionId = Preconditions.checkNotNull(transactionId);
33 public String getTransactionPath() {
34 return transactionPath;
37 public TransactionIdentifier getTransactionId() {
42 public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
43 super.readExternal(in);
44 transactionId = TransactionIdentifier.readFrom(in);
45 transactionPath = in.readUTF();
49 public void writeExternal(ObjectOutput out) throws IOException {
50 super.writeExternal(out);
51 transactionId.writeTo(out);
52 out.writeUTF(transactionPath);
56 public String toString() {
57 return "CreateTransactionReply [transactionPath=" + transactionPath
58 + ", transactionId=" + transactionId
59 + ", version=" + getVersion() + "]";
62 public static CreateTransactionReply fromSerializable(Object serializable) {
63 Preconditions.checkNotNull(serializable instanceof CreateTransactionReply);
64 return (CreateTransactionReply)serializable;
67 public static boolean isSerializedType(Object message) {
68 return message instanceof CreateTransactionReply;