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

namespace  connection
namespace  dtx
namespace  execution
namespace  file
namespace  message
namespace  session
namespace  stream

Classes

class  Array
struct  OutOfBounds
class  Buffer
class  DeliveryProperties
class  DtxGetTimeoutResult
class  DtxRecoverResult
class  ExchangeBoundResult
class  ExchangeQueryResult
class  FieldTable
 A set of name-value pairs. More...
class  FieldValueException
 Exception that is the base exception for all field table errors. More...
struct  InvalidConversionException
 Exception thrown when we can't perform requested conversion. More...
class  FieldValue
 Value that can appear in an AMQP field table. More...
class  FixedWidthValue
class  UuidData
class  FixedWidthValue< 0 >
class  VariableWidthValue
class  EncodedValue
class  Str8Value
class  Str16Value
class  Var16Value
class  Var32Value
class  Struct32Value
class  FloatValue
class  DoubleValue
class  IntegerValue
class  TimeValue
class  Integer64Value
class  Unsigned64Value
class  FieldTableValue
class  ArrayValue
class  VoidValue
class  BoolValue
class  Unsigned8Value
class  Unsigned16Value
class  Unsigned32Value
class  Integer8Value
class  Integer16Value
class  ListValue
class  UuidValue
class  FileProperties
class  FragmentProperties
class  Header
class  List
 Representation of an AMQP 0-10 list. More...
class  MessageAcquireResult
class  MessageProperties
class  MessageResumeResult
class  ProtocolVersion
class  QueueQueryResult
struct  UnauthorizedAccessException
struct  NotFoundException
struct  ResourceLockedException
struct  PreconditionFailedException
struct  ResourceDeletedException
struct  IllegalStateException
struct  CommandInvalidException
struct  ResourceLimitExceededException
struct  NotAllowedException
struct  IllegalArgumentException
struct  NotImplementedException
struct  InternalErrorException
struct  InvalidArgumentException
struct  ConnectionForcedException
struct  InvalidPathException
struct  FramingErrorException
struct  SessionBusyException
struct  TransportBusyException
struct  NotAttachedException
struct  UnknownIdsException
class  ReplyTo
class  SequenceNumber
 4-byte sequence number that 'wraps around'. More...
struct  Window
class  SequenceSet
class  StreamProperties
class  StructHelper
struct  Uuid
 A UUID is represented as a boost::array of 16 bytes. More...
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.
TypeCode typeCode (uint8_t)
 Throw exception if not a valid TypeCode.
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.
std::istream & operator>> (std::istream &, Uuid &)
 Read from format 1b4e28ba-2fa1-11d2-883f-b9a761bde3fb.

Variables

const ChannelId CHANNEL_MAX = (ChannelId(~1))>>1
 Maximum channel ID used by broker.
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 Jul 2 2013 for Qpid C++ Client API by doxygen 1.8.1.1