activemq-cpp-3.9.5
XATransactionId.h
Go to the documentation of this file.
1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one or more
3  * contributor license agreements. See the NOTICE file distributed with
4  * this work for additional information regarding copyright ownership.
5  * The ASF licenses this file to You under the Apache License, Version 2.0
6  * (the "License"); you may not use this file except in compliance with
7  * the License. You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 
18 #ifndef _ACTIVEMQ_COMMANDS_XATRANSACTIONID_H_
19 #define _ACTIVEMQ_COMMANDS_XATRANSACTIONID_H_
20 
21 // Turn off warning message for ignored exception specification
22 #ifdef _MSC_VER
23 #pragma warning( disable : 4290 )
24 #endif
25 
27 #include <activemq/util/Config.h>
28 #include <cms/Xid.h>
29 #include <decaf/lang/Comparable.h>
30 #include <decaf/lang/Pointer.h>
31 #include <string>
32 #include <vector>
33 
34 namespace activemq {
35 namespace commands {
36 
38 
39  /*
40  *
41  * Command code for OpenWire format for XATransactionId
42  *
43  * NOTE!: This file is auto generated - do not modify!
44  * if you need to make a change, please see the Java Classes
45  * in the activemq-cpp-openwire-generator module
46  *
47  */
48  class AMQCPP_API XATransactionId : public TransactionId, public cms::Xid, public decaf::lang::Comparable<XATransactionId> {
49  protected:
50 
53  using TransactionId::operator <;
54  using TransactionId::operator==;
55 
56  protected:
57 
58  int formatId;
59  std::vector<unsigned char> globalTransactionId;
60  std::vector<unsigned char> branchQualifier;
61 
62  public:
63 
64  const static unsigned char ID_XATRANSACTIONID = 112;
65 
67 
68  public:
69 
71 
72  XATransactionId(const XATransactionId& other);
73 
74  XATransactionId( const cms::Xid* xid );
75 
76  virtual ~XATransactionId();
77 
78  virtual unsigned char getDataStructureType() const;
79 
80  virtual XATransactionId* cloneDataStructure() const;
81 
82  virtual void copyDataStructure(const DataStructure* src);
83 
84  virtual std::string toString() const;
85 
86  virtual bool equals(const DataStructure* value) const;
87 
88  virtual bool isXATransactionId() const {
89  return true;
90  }
91 
92  public: // Xid interface implementation.
93 
94  virtual Xid* clone() const;
95 
96  virtual bool equals(const Xid* other) const;
97 
98  virtual int getBranchQualifier(unsigned char* buffer, int size) const;
99 
100  virtual int getGlobalTransactionId(unsigned char* buffer, int size) const;
101 
102  virtual int getFormatId() const;
103  virtual void setFormatId(int formatId);
104 
105  virtual const std::vector<unsigned char>& getGlobalTransactionId() const;
106  virtual std::vector<unsigned char>& getGlobalTransactionId();
107  virtual void setGlobalTransactionId(const std::vector<unsigned char>& globalTransactionId);
108 
109  virtual const std::vector<unsigned char>& getBranchQualifier() const;
110  virtual std::vector<unsigned char>& getBranchQualifier();
111  virtual void setBranchQualifier(const std::vector<unsigned char>& branchQualifier);
112 
113  virtual int compareTo(const XATransactionId& value) const;
114 
115  virtual bool equals(const XATransactionId& value) const;
116 
117  virtual bool operator==(const XATransactionId& value) const;
118 
119  virtual bool operator<(const XATransactionId& value) const;
120 
121  XATransactionId& operator= (const XATransactionId& other);
122 
123  int getHashCode() const;
124 
125  };
126 
127 }}
128 
129 #endif /*_ACTIVEMQ_COMMANDS_XATRANSACTIONID_H_*/
#define AMQCPP_API
Definition: Config.h:30
An interface which provides a mapping for the X/Open XID transaction identifier structure.
Definition: Xid.h:37
std::vector< unsigned char > globalTransactionId
Definition: XATransactionId.h:59
virtual bool isXATransactionId() const
Definition: XATransactionId.h:88
Definition: DataStructure.h:27
std::vector< unsigned char > branchQualifier
Definition: XATransactionId.h:60
int formatId
Definition: XATransactionId.h:58
decaf::lang::PointerComparator< XATransactionId > COMPARATOR
Definition: XATransactionId.h:66
Definition: TransactionId.h:47
virtual int compareTo(const TransactionId &value) const
bool operator==(const ArrayPointer< T > &left, const U *right)
Definition: ArrayPointer.h:379
This implementation of Comparator is designed to allows objects in a Collection to be sorted or teste...
Definition: Pointer.h:366
Decaf's implementation of a Smart Pointer that is a template on a Type and is Thread Safe if the defa...
Definition: Pointer.h:53
This interface imposes a total ordering on the objects of each class that implements it...
Definition: Comparable.h:33
virtual bool equals(const DataStructure *value) const
Compares the DataStructure passed in to this one, and returns if they are equivalent.
bool operator<(const std::string &left, const String &right)
Definition: XATransactionId.h:48