summaryrefslogtreecommitdiff
path: root/cpp/lib/broker/BrokerMessageMessage.cpp
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2007-02-07 10:13:41 +0000
committerAlan Conway <aconway@apache.org>2007-02-07 10:13:41 +0000
commit1977153241e86e93b237d2ed7fe02883d44646c5 (patch)
tree68ea88d60712a2459b524add42e412f4ae8ce9b6 /cpp/lib/broker/BrokerMessageMessage.cpp
parent877e7ae368d4320bd60ba5750be207a5cac13f43 (diff)
downloadqpid-python-1977153241e86e93b237d2ed7fe02883d44646c5.tar.gz
* broker/BrokerMessage.cpp: Added ConnectionToken publisher.
* cpp/lib/broker/BrokerMessageMessage.cpp: - Added ConnectionToken publisher. - Implemented getDeliveryMode, getApplicationHeaders * cpp/lib/broker/Reference.cpp: Holds MessageMessage instead of just MessageTransferBody. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/qpid.0-9@504485 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/lib/broker/BrokerMessageMessage.cpp')
-rw-r--r--cpp/lib/broker/BrokerMessageMessage.cpp84
1 files changed, 38 insertions, 46 deletions
diff --git a/cpp/lib/broker/BrokerMessageMessage.cpp b/cpp/lib/broker/BrokerMessageMessage.cpp
index d7020b8923..29186cc18e 100644
--- a/cpp/lib/broker/BrokerMessageMessage.cpp
+++ b/cpp/lib/broker/BrokerMessageMessage.cpp
@@ -25,26 +25,24 @@
#include "MessageAppendBody.h"
#include "Reference.h"
#include "framing/FieldTable.h"
+#include "framing/BasicHeaderProperties.h"
#include <iostream>
using namespace std;
-using namespace qpid::broker;
using namespace qpid::framing;
-
-MessageMessage::MessageMessage(TransferPtr transfer_)
- : Message(transfer_->getDestination(), transfer_->getRoutingKey(),
- transfer_->getMandatory(), transfer_->getImmediate(),
- transfer_),
- transfer(transfer_)
-{}
-MessageMessage::MessageMessage(TransferPtr transfer_, const Reference& ref)
- : Message(transfer_->getDestination(), transfer_->getRoutingKey(),
- transfer_->getMandatory(), transfer_->getImmediate(),
- transfer_),
- transfer(transfer_),
- appends(ref.getAppends())
+namespace qpid {
+namespace broker {
+
+MessageMessage::MessageMessage(
+ ConnectionToken* publisher, TransferPtr transfer_
+) : Message(publisher, transfer_->getDestination(),
+ transfer_->getRoutingKey(),
+ transfer_->getMandatory(),
+ transfer_->getImmediate(),
+ transfer_),
+ transfer(transfer_)
{}
void MessageMessage::deliver(
@@ -55,29 +53,29 @@ void MessageMessage::deliver(
{
channel.send(
new MessageTransferBody(channel.getVersion(),
- transfer->getTicket(),
- consumerTag,
- getRedelivered(),
- transfer->getImmediate(),
- transfer->getTtl(),
- transfer->getPriority(),
- transfer->getTimestamp(),
- transfer->getDeliveryMode(),
- transfer->getExpiration(),
- getExchange(),
- getRoutingKey(),
- transfer->getMessageId(),
- transfer->getCorrelationId(),
- transfer->getReplyTo(),
- transfer->getContentType(),
- transfer->getContentEncoding(),
- transfer->getUserId(),
- transfer->getAppId(),
- transfer->getTransactionId(),
- transfer->getSecurityToken(),
- transfer->getApplicationHeaders(),
- transfer->getBody(),
- transfer->getMandatory()));
+ transfer->getTicket(),
+ consumerTag,
+ getRedelivered(),
+ transfer->getImmediate(),
+ transfer->getTtl(),
+ transfer->getPriority(),
+ transfer->getTimestamp(),
+ transfer->getDeliveryMode(),
+ transfer->getExpiration(),
+ getExchange(),
+ getRoutingKey(),
+ transfer->getMessageId(),
+ transfer->getCorrelationId(),
+ transfer->getReplyTo(),
+ transfer->getContentType(),
+ transfer->getContentEncoding(),
+ transfer->getUserId(),
+ transfer->getAppId(),
+ transfer->getTransactionId(),
+ transfer->getSecurityToken(),
+ transfer->getApplicationHeaders(),
+ transfer->getBody(),
+ transfer->getMandatory()));
}
void MessageMessage::sendGetOk(
@@ -107,19 +105,11 @@ qpid::framing::BasicHeaderProperties* MessageMessage::getHeaderProperties()
const FieldTable& MessageMessage::getApplicationHeaders()
{
- THROW_QPID_ERROR(INTERNAL_ERROR, "Unfinished");
return transfer->getApplicationHeaders();
}
bool MessageMessage::isPersistent()
{
- THROW_QPID_ERROR(INTERNAL_ERROR, "Unfinished");
- return false; // FIXME aconway 2007-02-05:
-}
-
-const ConnectionToken* const MessageMessage::getPublisher()
-{
- THROW_QPID_ERROR(INTERNAL_ERROR, "Unfinished");
- return 0; // FIXME aconway 2007-02-05:
+ return transfer->getDeliveryMode() == PERSISTENT;
}
u_int32_t MessageMessage::encodedSize()
@@ -146,3 +136,5 @@ u_int64_t MessageMessage::expectedContentSize()
return 0; // FIXME aconway 2007-02-05:
}
+
+}} // namespace qpid::broker