00001 #ifndef QPID_FRAMING_DTXGETTIMEOUTRESULT_H
00002 #define QPID_FRAMING_DTXGETTIMEOUTRESULT_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00028
00029
00030
00031 #include <ostream>
00032 #include "qpid/framing/amqp_types_full.h"
00033
00034 namespace qpid {
00035 namespace framing {
00036
00037 class DtxGetTimeoutResult {
00038 uint32_t timeout;
00039 uint16_t flags;
00040 public:
00041 static const uint16_t TYPE = 1538;
00042 DtxGetTimeoutResult(
00043 uint32_t _timeout) :
00044 timeout(_timeout),
00045 flags(0){
00046 flags |= (1 << 8);
00047 }
00048 DtxGetTimeoutResult() : timeout(0), flags(0) {}
00049
00050 void setTimeout(uint32_t _timeout);
00051 uint32_t getTimeout() const;
00052 bool hasTimeout() const;
00053 void clearTimeoutFlag();
00054 friend std::ostream& operator<<(std::ostream&, const DtxGetTimeoutResult&);
00055 void encode(Buffer&) const;
00056 void decode(Buffer&, uint32_t=0);
00057 void encodeStructBody(Buffer&) const;
00058 void decodeStructBody(Buffer&, uint32_t=0);
00059 uint32_t size() const;
00060 uint32_t bodySize() const;
00061 void print(std::ostream& out) const;
00062 };
00063
00064 }}
00065 #endif