Added publish method with r-value std::string
This commit is contained in:
parent
df6b8ae743
commit
803ba6cc88
|
|
@ -338,6 +338,7 @@ public:
|
||||||
*/
|
*/
|
||||||
bool publish(const std::string &exchange, const std::string &routingKey, const Envelope &envelope) { return _implementation->publish(exchange, routingKey, envelope); }
|
bool publish(const std::string &exchange, const std::string &routingKey, const Envelope &envelope) { return _implementation->publish(exchange, routingKey, envelope); }
|
||||||
bool publish(const std::string &exchange, const std::string &routingKey, const std::string &message) { return _implementation->publish(exchange, routingKey, Envelope(message)); }
|
bool publish(const std::string &exchange, const std::string &routingKey, const std::string &message) { return _implementation->publish(exchange, routingKey, Envelope(message)); }
|
||||||
|
bool publish(const std::string &exchange, const std::string &routingKey, std::string &&message) { return _implementation->publish(exchange, routingKey, Envelope(std::move(message))); }
|
||||||
bool publish(const std::string &exchange, const std::string &routingKey, const char *message, size_t size) { return _implementation->publish(exchange, routingKey, Envelope(message, size)); }
|
bool publish(const std::string &exchange, const std::string &routingKey, const char *message, size_t size) { return _implementation->publish(exchange, routingKey, Envelope(message, size)); }
|
||||||
bool publish(const std::string &exchange, const std::string &routingKey, const char *message) { return _implementation->publish(exchange, routingKey, Envelope(message, strlen(message))); }
|
bool publish(const std::string &exchange, const std::string &routingKey, const char *message) { return _implementation->publish(exchange, routingKey, Envelope(message, strlen(message))); }
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,7 @@ protected:
|
||||||
* @var const char *
|
* @var const char *
|
||||||
*/
|
*/
|
||||||
const char *_body;
|
const char *_body;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Size of the data
|
* Size of the data
|
||||||
* @var uint64_t
|
* @var uint64_t
|
||||||
|
|
@ -41,26 +41,32 @@ protected:
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
* Constructor
|
* Constructor
|
||||||
*
|
*
|
||||||
* The data buffer that you pass to this constructor must be valid during
|
* The data buffer that you pass to this constructor must be valid during
|
||||||
* the lifetime of the Envelope object.
|
* the lifetime of the Envelope object.
|
||||||
*
|
*
|
||||||
* @param body
|
* @param body
|
||||||
* @param size
|
* @param size
|
||||||
*/
|
*/
|
||||||
Envelope(const char *body, uint64_t size) : MetaData(), _body(body), _bodySize(size) {}
|
Envelope(const char *body, uint64_t size) : MetaData(), _body(body), _bodySize(size) {}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructor based on a string
|
* Constructor based on a string
|
||||||
* @param body
|
* @param body
|
||||||
*/
|
*/
|
||||||
Envelope(const std::string &body) : MetaData(), _str(body), _body(_str.data()), _bodySize(_str.size()) {}
|
Envelope(const std::string &body) : MetaData(), _str(body), _body(_str.data()), _bodySize(_str.size()) {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor based on a string
|
||||||
|
* @param body
|
||||||
|
*/
|
||||||
|
Envelope(std::string &&body) : MetaData(), _str(std::move(body)), _body(_str.data()), _bodySize(_str.size()) {}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Destructor
|
* Destructor
|
||||||
*/
|
*/
|
||||||
virtual ~Envelope() {}
|
virtual ~Envelope() {}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Access to the full message data
|
* Access to the full message data
|
||||||
* @return buffer
|
* @return buffer
|
||||||
|
|
@ -69,7 +75,7 @@ public:
|
||||||
{
|
{
|
||||||
return _body;
|
return _body;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Size of the body
|
* Size of the body
|
||||||
* @return uint64_t
|
* @return uint64_t
|
||||||
|
|
@ -78,7 +84,7 @@ public:
|
||||||
{
|
{
|
||||||
return _bodySize;
|
return _bodySize;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Body as a string
|
* Body as a string
|
||||||
* @return string
|
* @return string
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue