blob: d6a96a796b49f0249a20535fd284c711719288ee [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: src/main/activemq/wireformat/openwire/marshal/BaseDataStreamMarshaller.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</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('_base_data_stream_marshaller_8h.html','');
</script>
<div id="doc-content">
<div class="header">
<div class="headertitle">
<h1>src/main/activemq/wireformat/openwire/marshal/BaseDataStreamMarshaller.h</h1> </div>
</div>
<div class="contents">
<a href="_base_data_stream_marshaller_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001
<a name="l00018"></a>00018 <span class="preprocessor">#ifndef _ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSHAL_BASEDATASTREAMMARSHALLER_H_</span>
<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define _ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSHAL_BASEDATASTREAMMARSHALLER_H_</span>
<a name="l00020"></a>00020 <span class="preprocessor"></span>
<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;activemq/wireformat/openwire/marshal/DataStreamMarshaller.h&gt;</span>
<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;activemq/wireformat/openwire/utils/HexTable.h&gt;</span>
<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;activemq/commands/MessageId.h&gt;</span>
<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;activemq/commands/ProducerId.h&gt;</span>
<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;activemq/commands/TransactionId.h&gt;</span>
<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;activemq/util/Config.h&gt;</span>
<a name="l00027"></a>00027
<a name="l00028"></a>00028 <span class="keyword">namespace </span>activemq{
<a name="l00029"></a>00029 <span class="keyword">namespace </span>wireformat{
<a name="l00030"></a><a class="code" href="namespaceactivemq_1_1wireformat_1_1openwire.html">00030</a> <span class="keyword">namespace </span>openwire{
<a name="l00031"></a><a class="code" href="namespaceactivemq_1_1wireformat_1_1openwire_1_1marshal.html">00031</a> <span class="keyword">namespace </span>marshal{
<a name="l00032"></a>00032
<a name="l00039"></a><a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1marshal_1_1_base_data_stream_marshaller.html">00039</a> <span class="keyword">class </span><a class="code" href="activemq_2util_2_config_8h.html#acbd131a10f5c91fc363bbb90be74faff">AMQCPP_API</a> <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1marshal_1_1_base_data_stream_marshaller.html" title="Base class for all Marshallers that marshal DataStructures to and from the wire using the OpenWire pr...">BaseDataStreamMarshaller</a> : <span class="keyword">public</span> <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1marshal_1_1_data_stream_marshaller.html" title="Base class for all classes that marshal commands for Openwire.">DataStreamMarshaller</a> {
<a name="l00040"></a>00040 <span class="keyword">private</span>:
<a name="l00041"></a>00041
<a name="l00042"></a>00042 <span class="comment">// Table for converting bytes to Hex Strings.</span>
<a name="l00043"></a>00043 <span class="keyword">static</span> <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_hex_table.html" title="The HexTable class maps hexidecimal strings to the value of an index into the table, i.e.">utils::HexTable</a> hexTable;
<a name="l00044"></a>00044
<a name="l00045"></a>00045 <span class="keyword">public</span>:
<a name="l00046"></a>00046
<a name="l00047"></a><a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1marshal_1_1_base_data_stream_marshaller.html#aad6f6cb750c645e15f4f1ac63f166a42">00047</a> <span class="keyword">virtual</span> <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1marshal_1_1_base_data_stream_marshaller.html#aad6f6cb750c645e15f4f1ac63f166a42">~BaseDataStreamMarshaller</a>() {}
<a name="l00048"></a>00048
<a name="l00056"></a><a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1marshal_1_1_base_data_stream_marshaller.html#a08989db8ef9553cab5d80067ab55b60e">00056</a> <span class="keyword">virtual</span> <span class="keywordtype">int</span> tightMarshal1( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* format AMQCPP_UNUSED,
<a name="l00057"></a>00057 <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* command AMQCPP_UNUSED,
<a name="l00058"></a>00058 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs AMQCPP_UNUSED ) { <span class="keywordflow">return</span> 0; }
<a name="l00059"></a>00059
<a name="l00068"></a><a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1marshal_1_1_base_data_stream_marshaller.html#ac91f4babbfcc404d77a1aef39cf59c32">00068</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> tightMarshal2( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* format AMQCPP_UNUSED,
<a name="l00069"></a>00069 <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* command AMQCPP_UNUSED,
<a name="l00070"></a>00070 <a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html" title="A data output stream lets an application write primitive Java data types to an output stream in a por...">decaf::io::DataOutputStream</a>* ds AMQCPP_UNUSED,
<a name="l00071"></a>00071 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs AMQCPP_UNUSED ) {}
<a name="l00072"></a>00072
<a name="l00081"></a><a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1marshal_1_1_base_data_stream_marshaller.html#a0d216236f058df926ce4843ea0b4a252">00081</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> tightUnmarshal( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* format AMQCPP_UNUSED,
<a name="l00082"></a>00082 <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* command AMQCPP_UNUSED,
<a name="l00083"></a>00083 <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dis AMQCPP_UNUSED,
<a name="l00084"></a>00084 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs AMQCPP_UNUSED ) {}
<a name="l00085"></a>00085
<a name="l00093"></a><a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1marshal_1_1_base_data_stream_marshaller.html#aaf214d611e82f0375d5ab3cf290f3a87">00093</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> looseMarshal( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* format AMQCPP_UNUSED,
<a name="l00094"></a>00094 <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* command AMQCPP_UNUSED,
<a name="l00095"></a>00095 <a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html" title="A data output stream lets an application write primitive Java data types to an output stream in a por...">decaf::io::DataOutputStream</a>* ds AMQCPP_UNUSED ) {}
<a name="l00096"></a>00096
<a name="l00104"></a><a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1marshal_1_1_base_data_stream_marshaller.html#ad5efc69a2c64027b89e0ca46e7df0bf9">00104</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> looseUnmarshal( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* format AMQCPP_UNUSED,
<a name="l00105"></a>00105 <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* command AMQCPP_UNUSED,
<a name="l00106"></a>00106 <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dis AMQCPP_UNUSED ) {}
<a name="l00107"></a>00107
<a name="l00108"></a>00108 <span class="keyword">public</span>: <span class="comment">// Statics</span>
<a name="l00109"></a>00109
<a name="l00115"></a>00115 <span class="keyword">static</span> std::string toString( <span class="keyword">const</span> <a class="code" href="classactivemq_1_1commands_1_1_message_id.html">commands::MessageId</a>* <span class="keywordtype">id</span> );
<a name="l00116"></a>00116
<a name="l00122"></a>00122 <span class="keyword">static</span> std::string toString( <span class="keyword">const</span> <a class="code" href="classactivemq_1_1commands_1_1_producer_id.html">commands::ProducerId</a>* <span class="keywordtype">id</span> );
<a name="l00123"></a>00123
<a name="l00129"></a>00129 <span class="keyword">static</span> std::string toString( <span class="keyword">const</span> <a class="code" href="classactivemq_1_1commands_1_1_transaction_id.html">commands::TransactionId</a>* txnId );
<a name="l00130"></a>00130
<a name="l00137"></a>00137 <span class="keyword">static</span> std::string toHexFromBytes(
<a name="l00138"></a>00138 <span class="keyword">const</span> std::vector&lt;unsigned char&gt;&amp; data );
<a name="l00139"></a>00139
<a name="l00140"></a>00140 <span class="keyword">protected</span>:
<a name="l00141"></a>00141
<a name="l00150"></a>00150 <span class="keyword">virtual</span> <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* tightUnmarshalCachedObject(
<a name="l00151"></a>00151 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00152"></a>00152 <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dataIn,
<a name="l00153"></a>00153 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs );
<a name="l00154"></a>00154
<a name="l00164"></a>00164 <span class="keyword">virtual</span> <span class="keywordtype">int</span> tightMarshalCachedObject1( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00165"></a>00165 <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* data,
<a name="l00166"></a>00166 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs );
<a name="l00167"></a>00167
<a name="l00177"></a>00177 <span class="keyword">virtual</span> <span class="keywordtype">void</span> tightMarshalCachedObject2( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00178"></a>00178 <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* data,
<a name="l00179"></a>00179 <a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html" title="A data output stream lets an application write primitive Java data types to an output stream in a por...">decaf::io::DataOutputStream</a>* dataOut,
<a name="l00180"></a>00180 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs );
<a name="l00181"></a>00181
<a name="l00190"></a>00190 <span class="keyword">virtual</span> <span class="keywordtype">void</span> looseMarshalCachedObject( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00191"></a>00191 <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* data,
<a name="l00192"></a>00192 <a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html" title="A data output stream lets an application write primitive Java data types to an output stream in a por...">decaf::io::DataOutputStream</a>* dataOut );
<a name="l00193"></a>00193
<a name="l00201"></a>00201 <span class="keyword">virtual</span> <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* looseUnmarshalCachedObject(
<a name="l00202"></a>00202 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00203"></a>00203 <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dataIn );
<a name="l00204"></a>00204
<a name="l00214"></a>00214 <span class="keyword">virtual</span> <span class="keywordtype">int</span> tightMarshalNestedObject1( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00215"></a>00215 <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* <span class="keywordtype">object</span>,
<a name="l00216"></a>00216 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs );
<a name="l00217"></a>00217
<a name="l00227"></a>00227 <span class="keyword">virtual</span> <span class="keywordtype">void</span> tightMarshalNestedObject2( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00228"></a>00228 <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* <span class="keywordtype">object</span>,
<a name="l00229"></a>00229 <a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html" title="A data output stream lets an application write primitive Java data types to an output stream in a por...">decaf::io::DataOutputStream</a>* dataOut,
<a name="l00230"></a>00230 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs );
<a name="l00231"></a>00231
<a name="l00240"></a>00240 <span class="keyword">virtual</span> <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* tightUnmarshalNestedObject(
<a name="l00241"></a>00241 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00242"></a>00242 <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dataIn,
<a name="l00243"></a>00243 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs );
<a name="l00244"></a>00244
<a name="l00252"></a>00252 <span class="keyword">virtual</span> <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* looseUnmarshalNestedObject(
<a name="l00253"></a>00253 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00254"></a>00254 <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dataIn );
<a name="l00255"></a>00255
<a name="l00263"></a>00263 <span class="keyword">virtual</span> <span class="keywordtype">void</span> looseMarshalNestedObject( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00264"></a>00264 <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* <span class="keywordtype">object</span>,
<a name="l00265"></a>00265 <a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html" title="A data output stream lets an application write primitive Java data types to an output stream in a por...">decaf::io::DataOutputStream</a>* dataOut );
<a name="l00266"></a>00266
<a name="l00274"></a>00274 <span class="keyword">virtual</span> std::string tightUnmarshalString( <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dataIn,
<a name="l00275"></a>00275 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs );
<a name="l00276"></a>00276
<a name="l00285"></a>00285 <span class="keyword">virtual</span> <span class="keywordtype">int</span> tightMarshalString1( <span class="keyword">const</span> std::string&amp; value,
<a name="l00286"></a>00286 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs );
<a name="l00287"></a>00287
<a name="l00295"></a>00295 <span class="keyword">virtual</span> <span class="keywordtype">void</span> tightMarshalString2( <span class="keyword">const</span> std::string&amp; value,
<a name="l00296"></a>00296 <a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html" title="A data output stream lets an application write primitive Java data types to an output stream in a por...">decaf::io::DataOutputStream</a>* dataOut,
<a name="l00297"></a>00297 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs );
<a name="l00298"></a>00298
<a name="l00305"></a>00305 <span class="keyword">virtual</span> <span class="keywordtype">void</span> looseMarshalString( <span class="keyword">const</span> std::string value,
<a name="l00306"></a>00306 <a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html" title="A data output stream lets an application write primitive Java data types to an output stream in a por...">decaf::io::DataOutputStream</a>* dataOut );
<a name="l00307"></a>00307
<a name="l00314"></a>00314 <span class="keyword">virtual</span> std::string looseUnmarshalString( <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dataIn );
<a name="l00315"></a>00315
<a name="l00324"></a>00324 <span class="keyword">virtual</span> <span class="keywordtype">int</span> tightMarshalLong1( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00325"></a>00325 <span class="keywordtype">long</span> <span class="keywordtype">long</span> value,
<a name="l00326"></a>00326 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs );
<a name="l00327"></a>00327
<a name="l00336"></a>00336 <span class="keyword">virtual</span> <span class="keywordtype">void</span> tightMarshalLong2( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00337"></a>00337 <span class="keywordtype">long</span> <span class="keywordtype">long</span> value,
<a name="l00338"></a>00338 <a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html" title="A data output stream lets an application write primitive Java data types to an output stream in a por...">decaf::io::DataOutputStream</a>* dataOut,
<a name="l00339"></a>00339 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs );
<a name="l00340"></a>00340
<a name="l00349"></a>00349 <span class="keyword">virtual</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> tightUnmarshalLong( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00350"></a>00350 <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dataIn,
<a name="l00351"></a>00351 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs );
<a name="l00352"></a>00352
<a name="l00360"></a>00360 <span class="keyword">virtual</span> <span class="keywordtype">void</span> looseMarshalLong( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00361"></a>00361 <span class="keywordtype">long</span> <span class="keywordtype">long</span> value,
<a name="l00362"></a>00362 <a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html" title="A data output stream lets an application write primitive Java data types to an output stream in a por...">decaf::io::DataOutputStream</a>* dataOut );
<a name="l00363"></a>00363
<a name="l00371"></a>00371 <span class="keyword">virtual</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> looseUnmarshalLong( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00372"></a>00372 <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dataIn );
<a name="l00373"></a>00373
<a name="l00381"></a>00381 <span class="keyword">virtual</span> std::vector&lt;unsigned char&gt; tightUnmarshalByteArray(
<a name="l00382"></a>00382 <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dataIn,
<a name="l00383"></a>00383 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs );
<a name="l00384"></a>00384
<a name="l00391"></a>00391 <span class="keyword">virtual</span> std::vector&lt;unsigned char&gt; looseUnmarshalByteArray(
<a name="l00392"></a>00392 <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dataIn );
<a name="l00393"></a>00393
<a name="l00403"></a>00403 <span class="keyword">virtual</span> std::vector&lt;unsigned char&gt; tightUnmarshalConstByteArray(
<a name="l00404"></a>00404 <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dataIn,
<a name="l00405"></a>00405 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs,
<a name="l00406"></a>00406 <span class="keywordtype">int</span> size );
<a name="l00407"></a>00407
<a name="l00416"></a>00416 <span class="keyword">virtual</span> std::vector&lt;unsigned char&gt; looseUnmarshalConstByteArray(
<a name="l00417"></a>00417 <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dataIn, <span class="keywordtype">int</span> size );
<a name="l00418"></a>00418
<a name="l00427"></a>00427 <span class="keyword">virtual</span> <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* tightUnmarshalBrokerError(
<a name="l00428"></a>00428 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00429"></a>00429 <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dataIn,
<a name="l00430"></a>00430 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs );
<a name="l00431"></a>00431
<a name="l00440"></a>00440 <span class="keyword">virtual</span> <span class="keywordtype">int</span> tightMarshalBrokerError1( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00441"></a>00441 <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* data,
<a name="l00442"></a>00442 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs );
<a name="l00443"></a>00443
<a name="l00452"></a>00452 <span class="keyword">virtual</span> <span class="keywordtype">void</span> tightMarshalBrokerError2( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00453"></a>00453 <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* data,
<a name="l00454"></a>00454 <a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html" title="A data output stream lets an application write primitive Java data types to an output stream in a por...">decaf::io::DataOutputStream</a>* dataOut,
<a name="l00455"></a>00455 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs );
<a name="l00456"></a>00456
<a name="l00464"></a>00464 <span class="keyword">virtual</span> <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* looseUnmarshalBrokerError(
<a name="l00465"></a>00465 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00466"></a>00466 <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dataIn );
<a name="l00467"></a>00467
<a name="l00475"></a>00475 <span class="keyword">virtual</span> <span class="keywordtype">void</span> looseMarshalBrokerError( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00476"></a>00476 <a class="code" href="classactivemq_1_1commands_1_1_data_structure.html">commands::DataStructure</a>* data,
<a name="l00477"></a>00477 <a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html" title="A data output stream lets an application write primitive Java data types to an output stream in a por...">decaf::io::DataOutputStream</a>* dataOut );
<a name="l00478"></a>00478
<a name="l00489"></a>00489 <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;
<a name="l00490"></a><a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1marshal_1_1_base_data_stream_marshaller.html#a1952572627907bce4afbe0fef677ebe7">00490</a> <span class="keywordtype">int</span> tightMarshalObjectArray1( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00491"></a>00491 std::vector&lt;T&gt; objects,
<a name="l00492"></a>00492 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs ) {
<a name="l00493"></a>00493
<a name="l00494"></a>00494 <span class="keywordflow">try</span>{
<a name="l00495"></a>00495 <span class="keywordflow">if</span>( !objects.empty() )
<a name="l00496"></a>00496 {
<a name="l00497"></a>00497 <span class="keywordtype">int</span> rc = 0;
<a name="l00498"></a>00498 bs-&gt;<a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html#a0552ff61615fe5a1168879a5449a406b" title="Writes a Boolean value to the internal data buffer.">writeBoolean</a>( <span class="keyword">true</span> );
<a name="l00499"></a>00499 rc += 2;
<a name="l00500"></a>00500 <span class="keywordflow">for</span>( std::size_t i = 0; i &lt; objects.size(); ++i ) {
<a name="l00501"></a>00501 rc += tightMarshalNestedObject1(
<a name="l00502"></a>00502 wireFormat, objects[i].<span class="keyword">get</span>(), bs );
<a name="l00503"></a>00503 }
<a name="l00504"></a>00504 <span class="keywordflow">return</span> rc;
<a name="l00505"></a>00505
<a name="l00506"></a>00506 } <span class="keywordflow">else</span> {
<a name="l00507"></a>00507 bs-&gt;<a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html#a0552ff61615fe5a1168879a5449a406b" title="Writes a Boolean value to the internal data buffer.">writeBoolean</a>( <span class="keyword">false</span> );
<a name="l00508"></a>00508 <span class="keywordflow">return</span> 0;
<a name="l00509"></a>00509 }
<a name="l00510"></a>00510 }
<a name="l00511"></a>00511 <a class="code" href="activemq_2exceptions_2_exception_defines_8h.html#a7310992ee48f64694a23e9557b383129" title="Macro for catching and re-throwing an exception of a given type.">AMQ_CATCH_RETHROW</a>( <a class="code" href="classdecaf_1_1io_1_1_i_o_exception.html">decaf::io::IOException</a> )
<a name="l00512"></a>00512 <a class="code" href="activemq_2exceptions_2_exception_defines_8h.html#acb91c25aad64b2491670f3ced76a95c7" title="Macro for catching an exception of one type and then re-throwing as another type.">AMQ_CATCH_EXCEPTION_CONVERT</a>( <a class="code" href="classdecaf_1_1lang_1_1_exception.html">decaf::lang::Exception</a>, <a class="code" href="classdecaf_1_1io_1_1_i_o_exception.html">decaf::io::IOException</a> )
<a name="l00513"></a>00513 <a class="code" href="activemq_2exceptions_2_exception_defines_8h.html#ab884bb9366639142ce31bbbf3281f4e7" title="A catch-all that throws a known exception.">AMQ_CATCHALL_THROW</a>( <a class="code" href="classdecaf_1_1io_1_1_i_o_exception.html">decaf::io::IOException</a> )
<a name="l00514"></a>00514 }
<a name="l00515"></a>00515
<a name="l00526"></a>00526 <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;
<a name="l00527"></a><a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1marshal_1_1_base_data_stream_marshaller.html#a073152c012d33ef260e0222f3df251af">00527</a> <span class="keywordtype">void</span> tightMarshalObjectArray2( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00528"></a>00528 std::vector&lt;T&gt; objects,
<a name="l00529"></a>00529 <a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html" title="A data output stream lets an application write primitive Java data types to an output stream in a por...">decaf::io::DataOutputStream</a>* dataOut,
<a name="l00530"></a>00530 <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html" title="Manages the writing and reading of boolean data streams to and from a data source such as a DataInput...">utils::BooleanStream</a>* bs ) {
<a name="l00531"></a>00531
<a name="l00532"></a>00532 <span class="keywordflow">try</span> {
<a name="l00533"></a>00533
<a name="l00534"></a>00534 <span class="keywordflow">if</span>( bs-&gt;<a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1utils_1_1_boolean_stream.html#a07dbebc44f4808d60c124738286a0195" title="Read a boolean data element from the internal data buffer.">readBoolean</a>() ) {
<a name="l00535"></a>00535
<a name="l00536"></a>00536 dataOut-&gt;<a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html#a5fff8db8d29cdd536f69c10f7722ee0a">writeShort</a>( (<span class="keywordtype">short</span>)objects.size() );
<a name="l00537"></a>00537 <span class="keywordflow">for</span>( std::size_t i = 0; i &lt; objects.size(); ++i ) {
<a name="l00538"></a>00538 tightMarshalNestedObject2(
<a name="l00539"></a>00539 wireFormat, objects[i].<span class="keyword">get</span>(), dataOut, bs );
<a name="l00540"></a>00540 }
<a name="l00541"></a>00541 }
<a name="l00542"></a>00542 }
<a name="l00543"></a>00543 <a class="code" href="activemq_2exceptions_2_exception_defines_8h.html#a7310992ee48f64694a23e9557b383129" title="Macro for catching and re-throwing an exception of a given type.">AMQ_CATCH_RETHROW</a>( <a class="code" href="classdecaf_1_1io_1_1_i_o_exception.html">decaf::io::IOException</a> )
<a name="l00544"></a>00544 <a class="code" href="activemq_2exceptions_2_exception_defines_8h.html#acb91c25aad64b2491670f3ced76a95c7" title="Macro for catching an exception of one type and then re-throwing as another type.">AMQ_CATCH_EXCEPTION_CONVERT</a>( <a class="code" href="classdecaf_1_1lang_1_1_exception.html">decaf::lang::Exception</a>, <a class="code" href="classdecaf_1_1io_1_1_i_o_exception.html">decaf::io::IOException</a> )
<a name="l00545"></a>00545 <a class="code" href="activemq_2exceptions_2_exception_defines_8h.html#ab884bb9366639142ce31bbbf3281f4e7" title="A catch-all that throws a known exception.">AMQ_CATCHALL_THROW</a>( <a class="code" href="classdecaf_1_1io_1_1_i_o_exception.html">decaf::io::IOException</a> )
<a name="l00546"></a>00546 }
<a name="l00547"></a>00547
<a name="l00557"></a>00557 <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;
<a name="l00558"></a><a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1marshal_1_1_base_data_stream_marshaller.html#a85efee5fa07f2de09434ca01cfb3af91">00558</a> <span class="keywordtype">void</span> looseMarshalObjectArray( <a class="code" href="classactivemq_1_1wireformat_1_1openwire_1_1_open_wire_format.html">OpenWireFormat</a>* wireFormat,
<a name="l00559"></a>00559 std::vector&lt;T&gt; objects,
<a name="l00560"></a>00560 <a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html" title="A data output stream lets an application write primitive Java data types to an output stream in a por...">decaf::io::DataOutputStream</a>* dataOut ) {
<a name="l00561"></a>00561
<a name="l00562"></a>00562 <span class="keywordflow">try</span> {
<a name="l00563"></a>00563
<a name="l00564"></a>00564 dataOut-&gt;<a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html#aff16db07894c83b27cdc04bbd4ad3805">writeBoolean</a>( !objects.empty() );
<a name="l00565"></a>00565 <span class="keywordflow">if</span>( !objects.empty() ) {
<a name="l00566"></a>00566
<a name="l00567"></a>00567 dataOut-&gt;<a class="code" href="classdecaf_1_1io_1_1_data_output_stream.html#a5fff8db8d29cdd536f69c10f7722ee0a">writeShort</a>( (<span class="keywordtype">short</span>)objects.size() );
<a name="l00568"></a>00568 <span class="keywordflow">for</span>( std::size_t i = 0; i &lt; objects.size(); ++i ) {
<a name="l00569"></a>00569 looseMarshalNestedObject(
<a name="l00570"></a>00570 wireFormat, objects[i].<span class="keyword">get</span>(), dataOut );
<a name="l00571"></a>00571 }
<a name="l00572"></a>00572 }
<a name="l00573"></a>00573 }
<a name="l00574"></a>00574 <a class="code" href="activemq_2exceptions_2_exception_defines_8h.html#a7310992ee48f64694a23e9557b383129" title="Macro for catching and re-throwing an exception of a given type.">AMQ_CATCH_RETHROW</a>( <a class="code" href="classdecaf_1_1io_1_1_i_o_exception.html">decaf::io::IOException</a> )
<a name="l00575"></a>00575 <a class="code" href="activemq_2exceptions_2_exception_defines_8h.html#acb91c25aad64b2491670f3ced76a95c7" title="Macro for catching an exception of one type and then re-throwing as another type.">AMQ_CATCH_EXCEPTION_CONVERT</a>( <a class="code" href="classdecaf_1_1lang_1_1_exception.html">decaf::lang::Exception</a>, <a class="code" href="classdecaf_1_1io_1_1_i_o_exception.html">decaf::io::IOException</a> )
<a name="l00576"></a>00576 <a class="code" href="activemq_2exceptions_2_exception_defines_8h.html#ab884bb9366639142ce31bbbf3281f4e7" title="A catch-all that throws a known exception.">AMQ_CATCHALL_THROW</a>( <a class="code" href="classdecaf_1_1io_1_1_i_o_exception.html">decaf::io::IOException</a> )
<a name="l00577"></a>00577 }
<a name="l00578"></a>00578
<a name="l00579"></a>00579 <span class="keyword">protected</span>:
<a name="l00580"></a>00580
<a name="l00587"></a>00587 <span class="keyword">virtual</span> std::string readAsciiString( <a class="code" href="classdecaf_1_1io_1_1_data_input_stream.html" title="A data input stream lets an application read primitive Java data types from an underlying input strea...">decaf::io::DataInputStream</a>* dataIn );
<a name="l00588"></a>00588
<a name="l00589"></a>00589 };
<a name="l00590"></a>00590
<a name="l00591"></a>00591 }}}}
<a name="l00592"></a>00592
<a name="l00593"></a>00593 <span class="preprocessor">#endif </span><span class="comment">/*_ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSHAL_BASEDATASTREAMMARSHALLER_H_*/</span>
</pre></div></div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="_base_data_stream_marshaller_8h.html">BaseDataStreamMarshaller.h</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>