17#ifndef INCLUDED_BMQA_MESSAGE
18#define INCLUDED_BMQA_MESSAGE
69#include <bdlbb_blob.h>
70#include <bsl_cstddef.h>
71#include <bsl_iosfwd.h>
72#include <bsl_memory.h>
73#include <bsl_string.h>
74#include <bslma_allocator.h>
75#include <bsls_annotation.h>
87class MessageProperties;
106 bmqimp::Event* d_event_p;
109 bsl::shared_ptr<bmqimp::Event> d_clonedEvent_sp;
112 bmqa::QueueId d_queueId;
115 bmqt::CorrelationId d_correlationId;
118 bmqt::SubscriptionHandle d_subscriptionHandle;
120#ifdef BMQ_ENABLE_MSG_GROUPID
122 bsl::string d_groupId;
171#ifdef BMQ_ENABLE_MSG_GROUPID
176 static const int k_GROUP_ID_MAX_LENGTH = 31;
181 mutable MessageImpl d_impl;
190 bool isInitialized()
const;
210 Message&
setData(
const bdlbb::Blob* data) BSLS_ANNOTATION_DEPRECATED;
213 size_t length) BSLS_ANNOTATION_DEPRECATED;
266#ifdef BMQ_ENABLE_MSG_GROUPID
272 Message& setGroupId(
const bsl::string& groupId);
291 operator bool()
const;
330#ifdef BMQ_ENABLE_MSG_GROUPID
334 const bsl::string& groupId()
const;
372#ifdef BMQ_ENABLE_MSG_GROUPID
376 bool hasGroupId()
const;
400 print(bsl::ostream& stream,
int level = 0,
int spacesPerLevel = 4)
const;
427inline Message::operator bool()
const
429 return isInitialized();
427inline Message::operator bool()
const {
…}
472 return rhs.
print(stream, 0, -1);
Provide a value-semantic efficient identifier for a queue.
Provide an enumeration for different compression algorithm types.
Provide a value-semantic type usable as an efficient identifier.
Provide a value-semantic global unique identifier for BlazingMQ messages.
Provide a value-semantic types for subscription related API.
Cookie for async message confirmation.
Definition bmqa_message.h:131
const bmqt::MessageGUID & messageGUID() const
Definition bmqa_message.h:458
MessageConfirmationCookie()
Create an unset instance of this class.
Definition bmqa_message.h:436
const QueueId & queueId() const
Definition bmqa_message.h:453
Provide a VST representing message properties.
Definition bmqa_messageproperties.h:92
A message sent/received to/from the BlazingMQ broker.
Definition bmqa_message.h:170
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
Message & setData(const bdlbb::Blob *data) BSLS_ANNOTATION_DEPRECATED
Definition bmqa_message.h:417
const bmqt::SubscriptionHandle & subscriptionHandle() const
Message & setDataRef(const char *data, size_t length)
Message & clearPropertiesRef()
int getData(bdlbb::Blob *blob) const
bool hasProperties() const
const bmqt::CorrelationId & correlationId() const
Message clone(bslma::Allocator *basicAllocator=0) const
Message & setPropertiesRef(const MessageProperties *properties)
const bmqa::QueueId & queueId() const
Message & setDataRef(const bdlbb::Blob *data)
const bmqt::MessageGUID & messageGUID() const
bmqt::CompressionAlgorithmType::Enum compressionAlgorithmType() const
int loadProperties(MessageProperties *buffer) const
Message & setCorrelationId(const bmqt::CorrelationId &correlationId)
Set correlation ID of this message to the specified correlationId.
Message & setCompressionAlgorithmType(bmqt::CompressionAlgorithmType::Enum value)
MessageConfirmationCookie confirmationCookie() const
Value-semantic efficient identifier for a queue.
Definition bmqa_queueid.h:59
Definition bmqt_correlationid.h:193
Definition bmqt_messageguid.h:95
Value-semantic type for unique Subscription id.
Definition bmqt_subscription.h:59
bsl::ostream & operator<<(bsl::ostream &stream, const CloseQueueStatus &rhs)
Definition bmqa_closequeuestatus.h:227
Definition bmqa_abstractsession.h:42
Enum
Definition bmqt_compressionalgorithmtype.h:46