/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ // // NOTE!: This file is autogenerated - do not modify! // if you need to make a change, please see the Groovy scripts in the // activemq-core module // using Apache.NMS.ActiveMQ.State; namespace Apache.NMS.ActiveMQ.Commands { /// /// The ActiveMQ TransactionInfo Command /// public class TransactionInfo : BaseCommand { public const byte ID_TransactionInfo = 7; ConnectionId connectionId; TransactionId transactionId; byte type; public const byte BEGIN = 0; public const byte PREPARE = 1; public const byte COMMIT_ONE_PHASE = 2; public const byte COMMIT_TWO_PHASE = 3; public const byte ROLLBACK = 4; public const byte RECOVER = 5; public const byte FORGET = 6; public const byte END = 7; public override string ToString() { return GetType().Name + "[" + " ConnectionId=" + ConnectionId + " TransactionId=" + TransactionId + " Type=" + Type + " ]"; } public override byte GetDataStructureType() { return ID_TransactionInfo; } // Properties public ConnectionId ConnectionId { get { return connectionId; } set { this.connectionId = value; } } public TransactionId TransactionId { get { return transactionId; } set { this.transactionId = value; } } public byte Type { get { return type; } set { this.type = value; } } public override Response visit(ICommandVisitor visitor) { switch(type) { case TransactionInfo.BEGIN: return visitor.processBeginTransaction(this); case TransactionInfo.END: return visitor.processEndTransaction(this); case TransactionInfo.PREPARE: return visitor.processPrepareTransaction(this); case TransactionInfo.COMMIT_ONE_PHASE: return visitor.processCommitTransactionOnePhase(this); case TransactionInfo.COMMIT_TWO_PHASE: return visitor.processCommitTransactionTwoPhase(this); case TransactionInfo.ROLLBACK: return visitor.processRollbackTransaction(this); case TransactionInfo.RECOVER: return visitor.processRecoverTransactions(this); case TransactionInfo.FORGET: return visitor.processForgetTransaction(this); default: throw new IOException("Transaction info type unknown: " + type); } } } }