#include <source/ariba/utility/messages/Message.h>
Public Member Functions | |
Message () | |
Message (const Data &data) | |
void | dropPayload () |
void | setReleasePayload (bool release) |
Data | getPayload () const |
void | setPayload (const Data &payload) |
virtual | ~Message () |
std::string | toString () const |
void | setDestinationAddress (const Address *addr) |
const Address * | getDestinationAddress () const |
void | setSourceAddress (const Address *addr) |
const Address * | getSourceAddress () const |
virtual const char * | getDescription () const |
virtual Message * | createReturnMessage () const |
void | encapsulate (Message *message, int variant=DEFAULT_V) |
template<class T> | |
T * | decapsulate () |
template<class T> | |
T * | convert () |
Protected Member Functions | |
finline PayloadSerializer | Payload (size_t length=~0) |
Protected Attributes | |
shared_array< uint8_t > | root |
bool | releasePayload |
Data | payload |
const Address * | srcAddr |
const Address * | destAddr |
Private Attributes | |
VSERIALIZEABLE | |
Friends | |
std::ostream & | operator<< (std::ostream &stream, const ariba::utility::Message &msg) |
Classes | |
class | PayloadSerializer |
Definition at line 78 of file Message.h.
Message::Message | ( | ) | [inline] |
Message::Message | ( | const Data & | data | ) | [inline] |
Constructs a new "root" message by copying the data described by data.
Definition at line 107 of file Message.h.
References DataTpl< T, DataModel >::clone(), and payload.
Message::~Message | ( | ) | [virtual] |
Default destructor.
Definition at line 53 of file Message.cpp.
void Message::dropPayload | ( | ) | [inline] |
Definition at line 113 of file Message.h.
References payload, DataTpl< T, DataModel >::release(), and releasePayload.
Referenced by encapsulate().
void Message::setReleasePayload | ( | bool | release | ) | [inline] |
Data Message::getPayload | ( | ) | const [inline] |
void Message::setPayload | ( | const Data & | payload | ) | [inline] |
std::string Message::toString | ( | ) | const |
Definition at line 75 of file Message.cpp.
void Message::setDestinationAddress | ( | const Address * | addr | ) | [inline] |
Sets the destination address
An | abstract address representation |
Definition at line 141 of file Message.h.
References destAddr.
Referenced by ariba::communication::AribaBaseMsg::AribaBaseMsg().
const Address* Message::getDestinationAddress | ( | ) | const [inline] |
Returns the optional abstract destination address or NULL
Definition at line 150 of file Message.h.
References destAddr.
Referenced by ariba::communication::AribaOmnetModule::sendMessage().
void Message::setSourceAddress | ( | const Address * | addr | ) | [inline] |
Set the source address of the message
addr | The abstract source address |
Definition at line 159 of file Message.h.
References srcAddr.
Referenced by ariba::communication::AribaOmnetModule::socketDataArrived().
const Address* Message::getSourceAddress | ( | ) | const [inline] |
const char * Message::getDescription | ( | ) | const [virtual] |
Returns a short human-readable description of this message
Definition at line 62 of file Message.cpp.
Message * Message::createReturnMessage | ( | ) | const [virtual] |
Returns a return message, that can be used to send a message back to the recipient or NULL if no message can be returned. The default implementation returns NULL.
Definition at line 71 of file Message.cpp.
Encapsulate a message into the payload.
message | The message to be encapsulated. |
Definition at line 193 of file Message.h.
References data_serialize(), dropPayload(), DataTpl< T, DataModel >::isUnspecified(), and payload.
Referenced by ariba::communication::BaseCommunication::sendMessage().
T* Message::decapsulate | ( | ) | [inline] |
Decapsulates message. In case the message has not been deserialized, this method class serialization to get an object.
Definition at line 207 of file Message.h.
References data_deserialize(), DataTpl< T, DataModel >::isUnspecified(), and payload.
T* Message::convert | ( | ) | [inline] |
finline PayloadSerializer Message::Payload | ( | size_t | length = ~0 |
) | [inline, protected] |
std::ostream& operator<< | ( | std::ostream & | stream, | |
const ariba::utility::Message & | msg | |||
) | [friend] |
Definition at line 83 of file Message.cpp.
Message::VSERIALIZEABLE [private] |
shared_array<uint8_t> Message::root [protected] |
bool Message::releasePayload [protected] |
Definition at line 88 of file Message.h.
Referenced by dropPayload(), setReleasePayload(), and Message::PayloadSerializer::sznMethodBegin().
Data Message::payload [protected] |
Definition at line 89 of file Message.h.
Referenced by decapsulate(), dropPayload(), encapsulate(), getPayload(), Message(), and Message::PayloadSerializer::sznMethodBegin().
const Address* Message::srcAddr [protected] |
const Address* Message::destAddr [protected] |
Definition at line 93 of file Message.h.
Referenced by getDestinationAddress(), and setDestinationAddress().