Apache Qpid - AMQP Messaging for Java JMS, C++, Python, Ruby, and .NET Apache Qpid Documentation
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
qpid::framing Namespace Reference

The framing namespace contains classes that are used to create, send and receive the basic packets from which AMQP is built. More...

Namespaces

 connection
 
 dtx
 
 execution
 
 file
 
 message
 
 session
 
 stream
 

Classes

class  Array
 
class  ArrayValue
 
class  BoolValue
 
class  Buffer
 
struct  CommandInvalidException
 
struct  ConnectionForcedException
 
class  DeliveryProperties
 
class  DoubleValue
 
class  DtxGetTimeoutResult
 
class  DtxRecoverResult
 
class  EncodedValue
 
class  ExchangeBoundResult
 
class  ExchangeQueryResult
 
class  FieldTable
 A set of name-value pairs. More...
 
class  FieldTableValue
 
class  FieldValue
 Value that can appear in an AMQP field table. More...
 
class  FieldValueException
 Exception that is the base exception for all field table errors. More...
 
class  FileProperties
 
class  FixedWidthValue
 
class  FixedWidthValue< 0 >
 
class  FloatValue
 
class  FragmentProperties
 
struct  FramingErrorException
 
class  Header
 
struct  IllegalArgumentException
 
struct  IllegalStateException
 
class  Integer16Value
 
class  Integer64Value
 
class  Integer8Value
 
class  IntegerValue
 
struct  InternalErrorException
 
struct  InvalidArgumentException
 
struct  InvalidConversionException
 Exception thrown when we can't perform requested conversion. More...
 
struct  InvalidPathException
 
class  List
 Representation of an AMQP 0-10 list. More...
 
class  ListValue
 
class  MessageAcquireResult
 
class  MessageProperties
 
class  MessageResumeResult
 
struct  NotAllowedException
 
struct  NotAttachedException
 
struct  NotFoundException
 
struct  NotImplementedException
 
struct  OutOfBounds
 
struct  PreconditionFailedException
 
class  ProtocolVersion
 
class  QueueQueryResult
 
class  ReplyTo
 
struct  ResourceDeletedException
 
struct  ResourceLimitExceededException
 
struct  ResourceLockedException
 
class  SequenceNumber
 4-byte sequence number that 'wraps around'. More...
 
class  SequenceSet
 
struct  SessionBusyException
 
class  Str16Value
 
class  Str8Value
 
class  StreamProperties
 
class  Struct32Value
 
class  StructHelper
 
class  TimeValue
 
struct  TransportBusyException
 
struct  UnauthorizedAccessException
 
struct  UnknownIdsException
 
class  Unsigned16Value
 
class  Unsigned32Value
 
class  Unsigned64Value
 
class  Unsigned8Value
 
struct  Uuid
 A UUID is represented as a boost::array of 16 bytes. More...
 
class  UuidData
 
class  UuidValue
 
class  Var16Value
 
class  Var32Value
 
class  VariableWidthValue
 
class  VoidValue
 
struct  Window
 
class  XaResult
 
class  Xid
 

Typedefs

typedef uint8_t FrameType
 
typedef uint16_t ChannelId
 
typedef uint32_t BatchOffset
 
typedef uint8_t ClassId
 
typedef uint8_t MethodId
 
typedef uint16_t ReplyCode
 
typedef IntegerValue Integer32Value
 

Enumerations

enum  DeliveryMode { TRANSIENT = 1, PERSISTENT = 2 }
 
enum  AmqpConstant {
  MIN_MAX_FRAME_SIZE =4096, CONNECTION_CLASS_ID =0x1, CONNECTION_START_METHOD_ID =0x1, CONNECTION_START_OK_METHOD_ID =0x2,
  CONNECTION_SECURE_METHOD_ID =0x3, CONNECTION_SECURE_OK_METHOD_ID =0x4, CONNECTION_TUNE_METHOD_ID =0x5, CONNECTION_TUNE_OK_METHOD_ID =0x6,
  CONNECTION_OPEN_METHOD_ID =0x7, CONNECTION_OPEN_OK_METHOD_ID =0x8, CONNECTION_REDIRECT_METHOD_ID =0x9, CONNECTION_HEARTBEAT_METHOD_ID =0xa,
  CONNECTION_CLOSE_METHOD_ID =0xb, CONNECTION_CLOSE_OK_METHOD_ID =0xc, SESSION_CLASS_ID =0x2, SESSION_ATTACH_METHOD_ID =0x1,
  SESSION_ATTACHED_METHOD_ID =0x2, SESSION_DETACH_METHOD_ID =0x3, SESSION_DETACHED_METHOD_ID =0x4, SESSION_REQUEST_TIMEOUT_METHOD_ID =0x5,
  SESSION_TIMEOUT_METHOD_ID =0x6, SESSION_COMMAND_POINT_METHOD_ID =0x7, SESSION_EXPECTED_METHOD_ID =0x8, SESSION_CONFIRMED_METHOD_ID =0x9,
  SESSION_COMPLETED_METHOD_ID =0xa, SESSION_KNOWN_COMPLETED_METHOD_ID =0xb, SESSION_FLUSH_METHOD_ID =0xc, SESSION_GAP_METHOD_ID =0xd,
  EXECUTION_CLASS_ID =0x3, EXECUTION_SYNC_METHOD_ID =0x1, EXECUTION_RESULT_METHOD_ID =0x2, EXECUTION_EXCEPTION_METHOD_ID =0x3,
  MESSAGE_CLASS_ID =0x4, MESSAGE_TRANSFER_METHOD_ID =0x1, MESSAGE_ACCEPT_METHOD_ID =0x2, MESSAGE_REJECT_METHOD_ID =0x3,
  MESSAGE_RELEASE_METHOD_ID =0x4, MESSAGE_ACQUIRE_METHOD_ID =0x5, MESSAGE_RESUME_METHOD_ID =0x6, MESSAGE_SUBSCRIBE_METHOD_ID =0x7,
  MESSAGE_CANCEL_METHOD_ID =0x8, MESSAGE_SET_FLOW_MODE_METHOD_ID =0x9, MESSAGE_FLOW_METHOD_ID =0xa, MESSAGE_FLUSH_METHOD_ID =0xb,
  MESSAGE_STOP_METHOD_ID =0xc, TX_CLASS_ID =0x5, TX_SELECT_METHOD_ID =0x1, TX_COMMIT_METHOD_ID =0x2,
  TX_ROLLBACK_METHOD_ID =0x3, DTX_CLASS_ID =0x6, DTX_SELECT_METHOD_ID =0x1, DTX_START_METHOD_ID =0x2,
  DTX_END_METHOD_ID =0x3, DTX_COMMIT_METHOD_ID =0x4, DTX_FORGET_METHOD_ID =0x5, DTX_GET_TIMEOUT_METHOD_ID =0x6,
  DTX_PREPARE_METHOD_ID =0x7, DTX_RECOVER_METHOD_ID =0x8, DTX_ROLLBACK_METHOD_ID =0x9, DTX_SET_TIMEOUT_METHOD_ID =0xa,
  EXCHANGE_CLASS_ID =0x7, EXCHANGE_DECLARE_METHOD_ID =0x1, EXCHANGE_DELETE_METHOD_ID =0x2, EXCHANGE_QUERY_METHOD_ID =0x3,
  EXCHANGE_BIND_METHOD_ID =0x4, EXCHANGE_UNBIND_METHOD_ID =0x5, EXCHANGE_BOUND_METHOD_ID =0x6, QUEUE_CLASS_ID =0x8,
  QUEUE_DECLARE_METHOD_ID =0x1, QUEUE_DELETE_METHOD_ID =0x2, QUEUE_PURGE_METHOD_ID =0x3, QUEUE_QUERY_METHOD_ID =0x4,
  FILE_CLASS_ID =0x9, FILE_QOS_METHOD_ID =0x1, FILE_QOS_OK_METHOD_ID =0x2, FILE_CONSUME_METHOD_ID =0x3,
  FILE_CONSUME_OK_METHOD_ID =0x4, FILE_CANCEL_METHOD_ID =0x5, FILE_OPEN_METHOD_ID =0x6, FILE_OPEN_OK_METHOD_ID =0x7,
  FILE_STAGE_METHOD_ID =0x8, FILE_PUBLISH_METHOD_ID =0x9, FILE_RETURN_METHOD_ID =0xa, FILE_DELIVER_METHOD_ID =0xb,
  FILE_ACK_METHOD_ID =0xc, FILE_REJECT_METHOD_ID =0xd, STREAM_CLASS_ID =0xa, STREAM_QOS_METHOD_ID =0x1,
  STREAM_QOS_OK_METHOD_ID =0x2, STREAM_CONSUME_METHOD_ID =0x3, STREAM_CONSUME_OK_METHOD_ID =0x4, STREAM_CANCEL_METHOD_ID =0x5,
  STREAM_PUBLISH_METHOD_ID =0x6, STREAM_RETURN_METHOD_ID =0x7, STREAM_DELIVER_METHOD_ID =0x8
}
 
enum  SegmentType { SEGMENT_TYPE_CONTROL =0, SEGMENT_TYPE_COMMAND =1, SEGMENT_TYPE_HEADER =2, SEGMENT_TYPE_BODY =3 }
 
enum  Track { TRACK_CONTROL =0, TRACK_COMMAND =1 }
 
enum  TypeCode {
  TYPE_CODE_BIN8 = 0x00, TYPE_CODE_INT8 = 0x01, TYPE_CODE_UINT8 = 0x02, TYPE_CODE_CHAR = 0x04,
  TYPE_CODE_BOOLEAN = 0x08, TYPE_CODE_BIN16 = 0x10, TYPE_CODE_INT16 = 0x11, TYPE_CODE_UINT16 = 0x12,
  TYPE_CODE_BIN32 = 0x20, TYPE_CODE_INT32 = 0x21, TYPE_CODE_UINT32 = 0x22, TYPE_CODE_FLOAT = 0x23,
  TYPE_CODE_CHAR_UTF32 = 0x27, TYPE_CODE_BIN64 = 0x30, TYPE_CODE_INT64 = 0x31, TYPE_CODE_UINT64 = 0x32,
  TYPE_CODE_DOUBLE = 0x33, TYPE_CODE_DATETIME = 0x38, TYPE_CODE_BIN128 = 0x40, TYPE_CODE_UUID = 0x48,
  TYPE_CODE_BIN256 = 0x50, TYPE_CODE_BIN512 = 0x60, TYPE_CODE_BIN1024 = 0x70, TYPE_CODE_VBIN8 = 0x80,
  TYPE_CODE_STR8_LATIN = 0x84, TYPE_CODE_STR8 = 0x85, TYPE_CODE_STR8_UTF16 = 0x86, TYPE_CODE_VBIN16 = 0x90,
  TYPE_CODE_STR16_LATIN = 0x94, TYPE_CODE_STR16 = 0x95, TYPE_CODE_STR16_UTF16 = 0x96, TYPE_CODE_VBIN32 = 0xa0,
  TYPE_CODE_MAP = 0xa8, TYPE_CODE_LIST = 0xa9, TYPE_CODE_ARRAY = 0xaa, TYPE_CODE_STRUCT32 = 0xab,
  TYPE_CODE_BIN40 = 0xc0, TYPE_CODE_DEC32 = 0xc8, TYPE_CODE_BIN72 = 0xd0, TYPE_CODE_DEC64 = 0xd8,
  TYPE_CODE_VOID = 0xf0, TYPE_CODE_BIT = 0xf1
}
 

Functions

std::ostream & operator<< (std::ostream &, const Buffer &)
 
template<>
bool FieldValue::convertsTo< std::string > () const
 
template<>
std::string FieldValue::get< std::string > () const
 
std::ostream & operator<< (std::ostream &out, const FieldValue &v)
 
template<class T >
bool getEncodedValue (FieldTable::ValuePtr vptr, T &value)
 
sys::ExceptionHolder createSessionException (int code, const std::string &text)
 
sys::ExceptionHolder createConnectionException (int code, const std::string &text)
 
sys::ExceptionHolder createChannelException (int code, const std::string &text)
 
int32_t operator- (const SequenceNumber &a, const SequenceNumber &b)
 
SequenceNumber operator+ (const SequenceNumber &a, int32_t n)
 
SequenceNumber operator- (const SequenceNumber &a, int32_t n)
 
std::ostream & operator<< (std::ostream &o, const SequenceNumber &n)
 
bool isTypeCode (uint8_t t)
 True if t is a valid TypeCode value. More...
 
TypeCode typeCode (uint8_t)
 Throw exception if not a valid TypeCode. More...
 
const char * typeName (TypeCode t)
 
std::ostream & operator<< (std::ostream &, TypeCode)
 
std::ostream & operator<< (std::ostream &, Uuid)
 Print in format 1b4e28ba-2fa1-11d2-883f-b9a761bde3fb. More...
 
std::istream & operator>> (std::istream &, Uuid &)
 Read from format 1b4e28ba-2fa1-11d2-883f-b9a761bde3fb. More...
 

Variables

const ChannelId CHANNEL_MAX =(ChannelId(~1))>>1
 Maximum channel ID used by broker. More...
 
const ChannelId CHANNEL_HIGH_BIT = ChannelId(~CHANNEL_MAX)
 

Detailed Description

The framing namespace contains classes that are used to create, send and receive the basic packets from which AMQP is built.

Typedef Documentation

Definition at line 36 of file amqp_types.h.

Definition at line 35 of file amqp_types.h.

Definition at line 37 of file amqp_types.h.

Definition at line 34 of file amqp_types.h.

Definition at line 455 of file FieldValue.h.

Definition at line 38 of file amqp_types.h.

Definition at line 39 of file amqp_types.h.

Enumeration Type Documentation

Enumerator
MIN_MAX_FRAME_SIZE 
CONNECTION_CLASS_ID 
CONNECTION_START_METHOD_ID 
CONNECTION_START_OK_METHOD_ID 
CONNECTION_SECURE_METHOD_ID 
CONNECTION_SECURE_OK_METHOD_ID 
CONNECTION_TUNE_METHOD_ID 
CONNECTION_TUNE_OK_METHOD_ID 
CONNECTION_OPEN_METHOD_ID 
CONNECTION_OPEN_OK_METHOD_ID 
CONNECTION_REDIRECT_METHOD_ID 
CONNECTION_HEARTBEAT_METHOD_ID 
CONNECTION_CLOSE_METHOD_ID 
CONNECTION_CLOSE_OK_METHOD_ID 
SESSION_CLASS_ID 
SESSION_ATTACH_METHOD_ID 
SESSION_ATTACHED_METHOD_ID 
SESSION_DETACH_METHOD_ID 
SESSION_DETACHED_METHOD_ID 
SESSION_REQUEST_TIMEOUT_METHOD_ID 
SESSION_TIMEOUT_METHOD_ID 
SESSION_COMMAND_POINT_METHOD_ID 
SESSION_EXPECTED_METHOD_ID 
SESSION_CONFIRMED_METHOD_ID 
SESSION_COMPLETED_METHOD_ID 
SESSION_KNOWN_COMPLETED_METHOD_ID 
SESSION_FLUSH_METHOD_ID 
SESSION_GAP_METHOD_ID 
EXECUTION_CLASS_ID 
EXECUTION_SYNC_METHOD_ID 
EXECUTION_RESULT_METHOD_ID 
EXECUTION_EXCEPTION_METHOD_ID 
MESSAGE_CLASS_ID 
MESSAGE_TRANSFER_METHOD_ID 
MESSAGE_ACCEPT_METHOD_ID 
MESSAGE_REJECT_METHOD_ID 
MESSAGE_RELEASE_METHOD_ID 
MESSAGE_ACQUIRE_METHOD_ID 
MESSAGE_RESUME_METHOD_ID 
MESSAGE_SUBSCRIBE_METHOD_ID 
MESSAGE_CANCEL_METHOD_ID 
MESSAGE_SET_FLOW_MODE_METHOD_ID 
MESSAGE_FLOW_METHOD_ID 
MESSAGE_FLUSH_METHOD_ID 
MESSAGE_STOP_METHOD_ID 
TX_CLASS_ID 
TX_SELECT_METHOD_ID 
TX_COMMIT_METHOD_ID 
TX_ROLLBACK_METHOD_ID 
DTX_CLASS_ID 
DTX_SELECT_METHOD_ID 
DTX_START_METHOD_ID 
DTX_END_METHOD_ID 
DTX_COMMIT_METHOD_ID 
DTX_FORGET_METHOD_ID 
DTX_GET_TIMEOUT_METHOD_ID 
DTX_PREPARE_METHOD_ID 
DTX_RECOVER_METHOD_ID 
DTX_ROLLBACK_METHOD_ID 
DTX_SET_TIMEOUT_METHOD_ID 
EXCHANGE_CLASS_ID 
EXCHANGE_DECLARE_METHOD_ID 
EXCHANGE_DELETE_METHOD_ID 
EXCHANGE_QUERY_METHOD_ID 
EXCHANGE_BIND_METHOD_ID 
EXCHANGE_UNBIND_METHOD_ID 
EXCHANGE_BOUND_METHOD_ID 
QUEUE_CLASS_ID 
QUEUE_DECLARE_METHOD_ID 
QUEUE_DELETE_METHOD_ID 
QUEUE_PURGE_METHOD_ID 
QUEUE_QUERY_METHOD_ID 
FILE_CLASS_ID 
FILE_QOS_METHOD_ID 
FILE_QOS_OK_METHOD_ID 
FILE_CONSUME_METHOD_ID 
FILE_CONSUME_OK_METHOD_ID 
FILE_CANCEL_METHOD_ID 
FILE_OPEN_METHOD_ID 
FILE_OPEN_OK_METHOD_ID 
FILE_STAGE_METHOD_ID 
FILE_PUBLISH_METHOD_ID 
FILE_RETURN_METHOD_ID 
FILE_DELIVER_METHOD_ID 
FILE_ACK_METHOD_ID 
FILE_REJECT_METHOD_ID 
STREAM_CLASS_ID 
STREAM_QOS_METHOD_ID 
STREAM_QOS_OK_METHOD_ID 
STREAM_CONSUME_METHOD_ID 
STREAM_CONSUME_OK_METHOD_ID 
STREAM_CANCEL_METHOD_ID 
STREAM_PUBLISH_METHOD_ID 
STREAM_RETURN_METHOD_ID 
STREAM_DELIVER_METHOD_ID 

Definition at line 34 of file constants.h.

Enumerator
TRANSIENT 
PERSISTENT 

Definition at line 61 of file amqp_types.h.

Enumerator
SEGMENT_TYPE_CONTROL 
SEGMENT_TYPE_COMMAND 
SEGMENT_TYPE_HEADER 
SEGMENT_TYPE_BODY 

Definition at line 34 of file enum.h.

Enumerator
TRACK_CONTROL 
TRACK_COMMAND 

Definition at line 40 of file enum.h.

Enumerator
TYPE_CODE_BIN8 
TYPE_CODE_INT8 
TYPE_CODE_UINT8 
TYPE_CODE_CHAR 
TYPE_CODE_BOOLEAN 
TYPE_CODE_BIN16 
TYPE_CODE_INT16 
TYPE_CODE_UINT16 
TYPE_CODE_BIN32 
TYPE_CODE_INT32 
TYPE_CODE_UINT32 
TYPE_CODE_FLOAT 
TYPE_CODE_CHAR_UTF32 
TYPE_CODE_BIN64 
TYPE_CODE_INT64 
TYPE_CODE_UINT64 
TYPE_CODE_DOUBLE 
TYPE_CODE_DATETIME 
TYPE_CODE_BIN128 
TYPE_CODE_UUID 
TYPE_CODE_BIN256 
TYPE_CODE_BIN512 
TYPE_CODE_BIN1024 
TYPE_CODE_VBIN8 
TYPE_CODE_STR8_LATIN 
TYPE_CODE_STR8 
TYPE_CODE_STR8_UTF16 
TYPE_CODE_VBIN16 
TYPE_CODE_STR16_LATIN 
TYPE_CODE_STR16 
TYPE_CODE_STR16_UTF16 
TYPE_CODE_VBIN32 
TYPE_CODE_MAP 
TYPE_CODE_LIST 
TYPE_CODE_ARRAY 
TYPE_CODE_STRUCT32 
TYPE_CODE_BIN40 
TYPE_CODE_DEC32 
TYPE_CODE_BIN72 
TYPE_CODE_DEC64 
TYPE_CODE_VOID 
TYPE_CODE_BIT 

Definition at line 36 of file TypeCode.h.

Function Documentation

sys::ExceptionHolder qpid::framing::createChannelException ( int  code,
const std::string &  text 
)
sys::ExceptionHolder qpid::framing::createConnectionException ( int  code,
const std::string &  text 
)
sys::ExceptionHolder qpid::framing::createSessionException ( int  code,
const std::string &  text 
)
template<>
bool qpid::framing::FieldValue::convertsTo< std::string > ( ) const
inline

Definition at line 124 of file FieldValue.h.

template<>
std::string qpid::framing::FieldValue::get< std::string > ( ) const
inline

Definition at line 133 of file FieldValue.h.

template<class T >
bool qpid::framing::getEncodedValue ( FieldTable::ValuePtr  vptr,
T &  value 
)

Definition at line 470 of file FieldValue.h.

References qpid::framing::EncodedValue< T >::getValue().

bool qpid::framing::isTypeCode ( uint8_t  t)

True if t is a valid TypeCode value.

SequenceNumber qpid::framing::operator+ ( const SequenceNumber &  a,
int32_t  n 
)
inline

Definition at line 66 of file SequenceNumber.h.

References qpid::framing::SequenceNumber::getValue().

int32_t qpid::framing::operator- ( const SequenceNumber &  a,
const SequenceNumber &  b 
)
inline

Definition at line 62 of file SequenceNumber.h.

References qpid::framing::SequenceNumber::getValue().

SequenceNumber qpid::framing::operator- ( const SequenceNumber &  a,
int32_t  n 
)
inline

Definition at line 70 of file SequenceNumber.h.

References qpid::framing::SequenceNumber::getValue().

std::ostream& qpid::framing::operator<< ( std::ostream &  o,
const SequenceNumber &  n 
)
std::ostream& qpid::framing::operator<< ( std::ostream &  ,
Uuid   
)

Print in format 1b4e28ba-2fa1-11d2-883f-b9a761bde3fb.

std::ostream& qpid::framing::operator<< ( std::ostream &  ,
TypeCode   
)
std::ostream& qpid::framing::operator<< ( std::ostream &  ,
const Buffer &   
)
std::ostream& qpid::framing::operator<< ( std::ostream &  out,
const FieldValue &  v 
)
inline

Definition at line 135 of file FieldValue.h.

References qpid::framing::FieldValue::print().

std::istream& qpid::framing::operator>> ( std::istream &  ,
Uuid &   
)

Read from format 1b4e28ba-2fa1-11d2-883f-b9a761bde3fb.

TypeCode qpid::framing::typeCode ( uint8_t  )

Throw exception if not a valid TypeCode.

const char* qpid::framing::typeName ( TypeCode  t)
Returns
0 if t is not a valid enum TypeCode value.

Variable Documentation

const ChannelId qpid::framing::CHANNEL_HIGH_BIT = ChannelId(~CHANNEL_MAX)

Definition at line 51 of file amqp_types.h.

const ChannelId qpid::framing::CHANNEL_MAX =(ChannelId(~1))>>1

Maximum channel ID used by broker.

Reserve high bit for internal use.

Definition at line 50 of file amqp_types.h.


Qpid C++ API Reference
Generated on Tue Aug 19 2014 for Qpid C++ Client API by doxygen 1.8.7