blob: 8cdc952b1d75a7c6a7fa32a432a0f92fa17c4bfd [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>activemq-cpp-3.4.0: cms::Xid Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.3 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">activemq-cpp-3.4.0</div>
</td>
</tr>
</tbody>
</table>
</div>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
</ul>
</div>
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
initNavTree('classcms_1_1_xid.html','');
</script>
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a> </div>
<div class="headertitle">
<h1>cms::Xid Class Reference</h1> </div>
</div>
<div class="contents">
<!-- doxytag: class="cms::Xid" -->
<p>An interface which provides a mapping for the X/Open XID transaction identifier structure.
<a href="#_details">More...</a></p>
<p><code>#include &lt;<a class="el" href="_xid_8h_source.html">src/main/cms/Xid.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for cms::Xid:</div>
<div class="dyncontent">
<div class="center"><img src="classcms_1_1_xid__inherit__graph.png" border="0" usemap="#cms_1_1_xid_inherit__map" alt="Inheritance graph"/></div>
<map name="cms_1_1_xid_inherit__map" id="cms_1_1_xid_inherit__map">
<area shape="rect" id="node3" href="classactivemq_1_1commands_1_1_x_a_transaction_id.html" title="activemq::commands::XATransactionId" alt="" coords="5,83,288,112"/></map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcms_1_1_xid.html#ad99cf18830a3698580451689b5c9daca">Xid</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcms_1_1_xid.html#aea3ecd8401be459f4065169419976a18">~Xid</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classcms_1_1_xid.html">Xid</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcms_1_1_xid.html#aee017620f5ea891325b9e529ac82d91b">clone</a> () const =0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a Copy of this <a class="el" href="classcms_1_1_xid.html" title="An interface which provides a mapping for the X/Open XID transaction identifier structure.">Xid</a> instance that contains the same id values. <a href="#aee017620f5ea891325b9e529ac82d91b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcms_1_1_xid.html#a68382bc48a0659056de8eb54ed6782e1">equals</a> (const <a class="el" href="classcms_1_1_xid.html">Xid</a> *other) const =0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares this <a class="el" href="classcms_1_1_xid.html" title="An interface which provides a mapping for the X/Open XID transaction identifier structure.">Xid</a> to another and returns true if they are the same. <a href="#a68382bc48a0659056de8eb54ed6782e1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcms_1_1_xid.html#a980d26632707a9dbc8927c85048288b0">getBranchQualifier</a> (unsigned char *buffer, int size) const =0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the transaction branch qualifier component of the XID. <a href="#a980d26632707a9dbc8927c85048288b0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcms_1_1_xid.html#a2f5a917d011d25171b177797b01ba3e0">getFormatId</a> () const =0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the format identifier component of the XID. <a href="#a2f5a917d011d25171b177797b01ba3e0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcms_1_1_xid.html#af0e8136540a30f6c97604348d4563efb">getGlobalTransactionId</a> (unsigned char *buffer, int size) const =0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the global transaction id component of the XID. <a href="#af0e8136540a30f6c97604348d4563efb"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcms_1_1_xid.html#af227386bfed4fe31193ce67dadc9399d">MAXGTRIDSIZE</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The maximum number of bytes which will be copied into the array passed to getGlobaltransactionId(). <a href="#af227386bfed4fe31193ce67dadc9399d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcms_1_1_xid.html#a469b4e43f40514d22fedb5f1f42621f8">MAXBQUALSIZE</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The maximum number of bytes which will be copied into the array that is passed to <a class="el" href="classcms_1_1_xid.html#a980d26632707a9dbc8927c85048288b0" title="Gets the transaction branch qualifier component of the XID.">getBranchQualifier()</a>. <a href="#a469b4e43f40514d22fedb5f1f42621f8"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>An interface which provides a mapping for the X/Open XID transaction identifier structure. </p>
<p>The <a class="el" href="classcms_1_1_xid.html" title="An interface which provides a mapping for the X/Open XID transaction identifier structure.">Xid</a> interface is used by the Transaction Manager and the Resource managers. It is not typically used by application programs directly but the application developer must define a mechanism to map the calls and structures used by the Transaction Manager API in use into the format used by the CMS XA interfaces.</p>
<dl class="since"><dt><b>Since:</b></dt><dd>2.3 </dd></dl>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ad99cf18830a3698580451689b5c9daca"></a><!-- doxytag: member="cms::Xid::Xid" ref="ad99cf18830a3698580451689b5c9daca" args="()" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">cms::Xid::Xid </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<a class="anchor" id="aea3ecd8401be459f4065169419976a18"></a><!-- doxytag: member="cms::Xid::~Xid" ref="aea3ecd8401be459f4065169419976a18" args="()" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual cms::Xid::~Xid </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td><code> [virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="aee017620f5ea891325b9e529ac82d91b"></a><!-- doxytag: member="cms::Xid::clone" ref="aee017620f5ea891325b9e529ac82d91b" args="() const =0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual <a class="el" href="classcms_1_1_xid.html">Xid</a>* cms::Xid::clone </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const<code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Creates a Copy of this <a class="el" href="classcms_1_1_xid.html" title="An interface which provides a mapping for the X/Open XID transaction identifier structure.">Xid</a> instance that contains the same id values. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a new <a class="el" href="classcms_1_1_xid.html" title="An interface which provides a mapping for the X/Open XID transaction identifier structure.">Xid</a> instance that is equal to this one when compared. </dd></dl>
<p>Implemented in <a class="el" href="classactivemq_1_1commands_1_1_x_a_transaction_id.html#ac7095ac33928918948dbb63ffb156586">activemq::commands::XATransactionId</a>.</p>
</div>
</div>
<a class="anchor" id="a68382bc48a0659056de8eb54ed6782e1"></a><!-- doxytag: member="cms::Xid::equals" ref="a68382bc48a0659056de8eb54ed6782e1" args="(const Xid *other) const =0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual bool cms::Xid::equals </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classcms_1_1_xid.html">Xid</a> *&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td> const<code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Compares this <a class="el" href="classcms_1_1_xid.html" title="An interface which provides a mapping for the X/Open XID transaction identifier structure.">Xid</a> to another and returns true if they are the same. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if both Xid's represent that same id value. </dd></dl>
</div>
</div>
<a class="anchor" id="a980d26632707a9dbc8927c85048288b0"></a><!-- doxytag: member="cms::Xid::getBranchQualifier" ref="a980d26632707a9dbc8927c85048288b0" args="(unsigned char *buffer, int size) const =0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual int cms::Xid::getBranchQualifier </td>
<td>(</td>
<td class="paramtype">unsigned char *&#160;</td>
<td class="paramname"><em>buffer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>size</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const<code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Gets the transaction branch qualifier component of the XID. </p>
<p>The value of this Xid's branch qualifier is copied into the buffer provided. If the size of the provided buffer is not large enough to accommodate the branch qualifier then no copy is performed and the method returns -1.</p>
<dl><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">buffer</td><td>The location in memory to copy the qualifier bytes to. </td></tr>
<tr><td class="paramname">size</td><td>The size of the buffer provided.</td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the number of bytes copied into the buffer, or -1 if the buffer provided was not large enough.</dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
<table class="exception">
<tr><td class="paramname"><a class="el" href="classcms_1_1_x_a_exception.html" title="The XAException is thrown by the Resource Manager (RM) to inform the Transaction Manager of an error ...">XAException</a></td><td>if the size parameter is less than zero or buffer is NULL. </td></tr>
</table>
</dd>
</dl>
<p>Implemented in <a class="el" href="classactivemq_1_1commands_1_1_x_a_transaction_id.html#a454f9206c4ff2861589111346b208971">activemq::commands::XATransactionId</a>.</p>
</div>
</div>
<a class="anchor" id="a2f5a917d011d25171b177797b01ba3e0"></a><!-- doxytag: member="cms::Xid::getFormatId" ref="a2f5a917d011d25171b177797b01ba3e0" args="() const =0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual int cms::Xid::getFormatId </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const<code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Gets the format identifier component of the XID. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>an integer containing the format identifier. 0 means the OSI CCR format. </dd></dl>
<p>Implemented in <a class="el" href="classactivemq_1_1commands_1_1_x_a_transaction_id.html#a44d6c4c5cec8e4076b5f47ad97f7e337">activemq::commands::XATransactionId</a>.</p>
</div>
</div>
<a class="anchor" id="af0e8136540a30f6c97604348d4563efb"></a><!-- doxytag: member="cms::Xid::getGlobalTransactionId" ref="af0e8136540a30f6c97604348d4563efb" args="(unsigned char *buffer, int size) const =0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual int cms::Xid::getGlobalTransactionId </td>
<td>(</td>
<td class="paramtype">unsigned char *&#160;</td>
<td class="paramname"><em>buffer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>size</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const<code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Gets the global transaction id component of the XID. </p>
<p>The value of this Xid's transaction id is copied into the buffer provided. If the size of the provided buffer is not large enough to accommodate the transaction id then no copy is performed and the method returns -1.</p>
<dl><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">buffer</td><td>The location in memory to copy the transaction id bytes to. </td></tr>
<tr><td class="paramname">size</td><td>The size of the buffer provided.</td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the number of bytes copied into the buffer, or -1 if the buffer provided was not large enough.</dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
<table class="exception">
<tr><td class="paramname"><a class="el" href="classcms_1_1_x_a_exception.html" title="The XAException is thrown by the Resource Manager (RM) to inform the Transaction Manager of an error ...">XAException</a></td><td>if the size parameter is less than zero or buffer is NULL. </td></tr>
</table>
</dd>
</dl>
<p>Implemented in <a class="el" href="classactivemq_1_1commands_1_1_x_a_transaction_id.html#abeda519a1e5cedb9d478ca88c0320fa7">activemq::commands::XATransactionId</a>.</p>
</div>
</div>
<hr/><h2>Field Documentation</h2>
<a class="anchor" id="a469b4e43f40514d22fedb5f1f42621f8"></a><!-- doxytag: member="cms::Xid::MAXBQUALSIZE" ref="a469b4e43f40514d22fedb5f1f42621f8" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const int <a class="el" href="classcms_1_1_xid.html#a469b4e43f40514d22fedb5f1f42621f8">cms::Xid::MAXBQUALSIZE</a><code> [static]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>The maximum number of bytes which will be copied into the array that is passed to <a class="el" href="classcms_1_1_xid.html#a980d26632707a9dbc8927c85048288b0" title="Gets the transaction branch qualifier component of the XID.">getBranchQualifier()</a>. </p>
</div>
</div>
<a class="anchor" id="af227386bfed4fe31193ce67dadc9399d"></a><!-- doxytag: member="cms::Xid::MAXGTRIDSIZE" ref="af227386bfed4fe31193ce67dadc9399d" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const int <a class="el" href="classcms_1_1_xid.html#af227386bfed4fe31193ce67dadc9399d">cms::Xid::MAXGTRIDSIZE</a><code> [static]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>The maximum number of bytes which will be copied into the array passed to getGlobaltransactionId(). </p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>src/main/cms/<a class="el" href="_xid_8h_source.html">Xid.h</a></li>
</ul>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespacecms.html">cms</a> </li>
<li class="navelem"><a class="el" href="classcms_1_1_xid.html">Xid</a> </li>
<li class="footer">Generated on Mon Apr 25 2011 for activemq-cpp-3.4.0 by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </li>
</ul>
</div>
</body>
</html>