activemq-cpp-3.9.5
Xid.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 _CMS_XID_H_
19#define _CMS_XID_H_
20
21#include <cms/Config.h>
22
23#include <cms/CMSException.h>
24
25namespace cms {
26
37 class CMS_API Xid {
38 private:
39
40 Xid(const Xid&);
41 Xid& operator=(const Xid&);
42
43 public:
44
49 static const int MAXGTRIDSIZE;
50
55 static const int MAXBQUALSIZE;
56
57 public:
58
59 Xid();
60
61 virtual ~Xid();
62
68 virtual Xid* clone() const = 0;
69
75 virtual bool equals(const Xid* other) const = 0;
76
93 virtual int getBranchQualifier(unsigned char* buffer, int size) const = 0;
94
101 virtual int getFormatId() const = 0;
102
119 virtual int getGlobalTransactionId(unsigned char* buffer, int size) const = 0;
120
121 };
122
123}
124
125#endif /* _CMS_XID_H_ */
An interface which provides a mapping for the X/Open XID transaction identifier structure.
Definition: Xid.h:37
virtual int getFormatId() const =0
Gets the format identifier component of the XID.
static const int MAXBQUALSIZE
The maximum number of bytes which will be copied into the array that is passed to getBranchQualifier(...
Definition: Xid.h:55
virtual bool equals(const Xid *other) const =0
Compares this Xid to another and returns true if they are the same.
virtual int getBranchQualifier(unsigned char *buffer, int size) const =0
Gets the transaction branch qualifier component of the XID.
virtual Xid * clone() const =0
Creates a Copy of this Xid instance that contains the same id values.
virtual ~Xid()
virtual int getGlobalTransactionId(unsigned char *buffer, int size) const =0
Gets the global transaction id component of the XID.
static const int MAXGTRIDSIZE
The maximum number of bytes which will be copied into the array passed to getGlobaltransactionId().
Definition: Xid.h:49
#define CMS_API
Definition: Config.h:31
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
Definition: DestinationResolver.h:23