22#include <pulsar/defines.h>
35class SingleMessageMetadata;
45 typedef std::map<std::string, std::string> StringMap;
72 const std::string&
getProperty(
const std::string& name)
const;
97#if defined(_MSC_VER) && !defined(NDEBUG)
98 const std::string& getDataAsString()
const;
184 bool operator==(
const Message& msg)
const;
187 typedef std::shared_ptr<MessageImpl> MessageImplPtr;
188 MessageImplPtr impl_;
191 Message(
const proto::CommandMessage& msg, proto::MessageMetadata& data, SharedBuffer& payload,
194 Message(
const MessageId& messageId, proto::MessageMetadata& metadata, SharedBuffer& payload,
195 proto::SingleMessageMetadata& singleMetadata,
const std::string& topicName);
196 friend class PartitionedProducerImpl;
197 friend class MultiTopicsConsumerImpl;
199 friend class ConsumerImpl;
200 friend class ProducerImpl;
201 friend class Commands;
202 friend class BatchMessageContainerBase;
203 friend class BatchAcknowledgementTracker;
204 friend class PulsarWrapper;
206 friend struct OpSendMsg;
208 friend PULSAR_PUBLIC std::ostream& operator<<(std::ostream& s,
const StringMap& map);
209 friend PULSAR_PUBLIC std::ostream& operator<<(std::ostream& s,
const Message& msg);
210 friend class PulsarFriend;
Definition: KeyValue.h:35
Definition: MessageBatch.h:29
Definition: MessageBuilder.h:33
const std::string & getPartitionKey() const
bool hasPartitionKey() const
KeyValue getKeyValueData() const
void setMessageId(const MessageId &messageId) const
std::string getDataAsString() const
bool hasSchemaVersion() const
const std::string & getProperty(const std::string &name) const
uint64_t getEventTimestamp() const
std::size_t getLength() const
const std::string & getOrderingKey() const
const void * getData() const
uint64_t getPublishTimestamp() const
const std::string & getSchemaVersion() const
const int getRedeliveryCount() const
bool hasOrderingKey() const
bool hasProperty(const std::string &name) const
const MessageId & getMessageId() const
const StringMap & getProperties() const
const std::string & getTopicName() const
Definition: MessageId.h:34
Definition: Authentication.h:31