You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by gs...@apache.org on 2010/03/29 20:15:43 UTC
svn commit: r928855 - in /qpid/trunk/qpid/cpp: examples/messaging/
include/qpid/messaging/ src/ src/qpid/client/amqp0_10/ src/qpid/messaging/
src/tests/
Author: gsim
Date: Mon Mar 29 18:15:42 2010
New Revision: 928855
URL: http://svn.apache.org/viewvc?rev=928855&view=rev
Log:
QPID-2406: a more explicit solution for durations in the messaging api
Added:
qpid/trunk/qpid/cpp/src/qpid/messaging/Duration.cpp
Modified:
qpid/trunk/qpid/cpp/examples/messaging/drain.cpp
qpid/trunk/qpid/cpp/include/qpid/messaging/Duration.h
qpid/trunk/qpid/cpp/include/qpid/messaging/Receiver.h
qpid/trunk/qpid/cpp/include/qpid/messaging/Session.h
qpid/trunk/qpid/cpp/src/CMakeLists.txt
qpid/trunk/qpid/cpp/src/Makefile.am
qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/IncomingMessages.cpp
qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/OutgoingMessage.cpp
qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/ReceiverImpl.cpp
qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/SessionImpl.cpp
qpid/trunk/qpid/cpp/src/qpid/messaging/Message.cpp
qpid/trunk/qpid/cpp/src/tests/MessagingSessionTests.cpp
qpid/trunk/qpid/cpp/src/tests/qpid_recv.cpp
qpid/trunk/qpid/cpp/src/tests/qpid_send.cpp
Modified: qpid/trunk/qpid/cpp/examples/messaging/drain.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/examples/messaging/drain.cpp?rev=928855&r1=928854&r2=928855&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/examples/messaging/drain.cpp (original)
+++ qpid/trunk/qpid/cpp/examples/messaging/drain.cpp Mon Mar 29 18:15:42 2010
@@ -64,8 +64,8 @@ struct Options : public qpid::Options
Duration getTimeout()
{
- if (forever) return INFINITE_DURATION;
- else return timeout*DURATION_SEC;
+ if (forever) return Duration::INFINITE;
+ else return timeout*Duration::SECOND;
}
bool parse(int argc, char** argv)
Modified: qpid/trunk/qpid/cpp/include/qpid/messaging/Duration.h
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/include/qpid/messaging/Duration.h?rev=928855&r1=928854&r2=928855&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/include/qpid/messaging/Duration.h (original)
+++ qpid/trunk/qpid/cpp/include/qpid/messaging/Duration.h Mon Mar 29 18:15:42 2010
@@ -22,7 +22,6 @@
*
*/
#include "qpid/sys/IntegerTypes.h"
-#include <limits>
namespace qpid {
namespace messaging {
@@ -30,9 +29,21 @@ namespace messaging {
/**
* A duration is a time in milliseconds.
*/
-typedef uint64_t Duration;
-const Duration INFINITE_DURATION = std::numeric_limits<uint64_t>::max();
-const Duration DURATION_SEC = 1000;
+class Duration
+{
+ public:
+ explicit Duration(uint64_t milliseconds);
+ uint64_t getMilliseconds() const;
+ static const Duration INFINITE;
+ static const Duration IMMEDIATE;
+ static const Duration SECOND;
+ static const Duration MINUTE;
+ private:
+ uint64_t milliseconds;
+};
+
+Duration operator*(const Duration& duration, uint64_t multiplier);
+Duration operator*(uint64_t multiplier, const Duration& duration);
}} // namespace qpid::messaging
Modified: qpid/trunk/qpid/cpp/include/qpid/messaging/Receiver.h
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/include/qpid/messaging/Receiver.h?rev=928855&r1=928854&r2=928855&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/include/qpid/messaging/Receiver.h (original)
+++ qpid/trunk/qpid/cpp/include/qpid/messaging/Receiver.h Mon Mar 29 18:15:42 2010
@@ -53,7 +53,7 @@ class Receiver : public qpid::messaging:
* available. Returns false if there is no message to give after
* waiting for the specified timeout.
*/
- QPID_CLIENT_EXTERN bool get(Message& message, Duration timeout=INFINITE_DURATION);
+ QPID_CLIENT_EXTERN bool get(Message& message, Duration timeout=Duration::INFINITE);
/**
* Retrieves a message from this receivers local queue, or waits
* for up to the specified timeout for a message to become
@@ -62,7 +62,7 @@ class Receiver : public qpid::messaging:
*@exception NoMessageAvailable if there is no message to give
* after waiting for the specified timeout.
*/
- QPID_CLIENT_EXTERN Message get(Duration timeout=INFINITE_DURATION);
+ QPID_CLIENT_EXTERN Message get(Duration timeout=Duration::INFINITE);
/**
* Retrieves a message for this receivers subscription or waits
* for up to the specified timeout for one to become
@@ -70,7 +70,7 @@ class Receiver : public qpid::messaging:
* that there is no message for the subscription this receiver is
* serving before returning false.
*/
- QPID_CLIENT_EXTERN bool fetch(Message& message, Duration timeout=INFINITE_DURATION);
+ QPID_CLIENT_EXTERN bool fetch(Message& message, Duration timeout=Duration::INFINITE);
/**
* Retrieves a message for this receivers subscription or waits
* for up to the specified timeout for one to become
@@ -81,7 +81,7 @@ class Receiver : public qpid::messaging:
*@exception NoMessageAvailable if there is no message to give
* after waiting for the specified timeout.
*/
- QPID_CLIENT_EXTERN Message fetch(Duration timeout=INFINITE_DURATION);
+ QPID_CLIENT_EXTERN Message fetch(Duration timeout=Duration::INFINITE);
/**
* Sets the capacity for the receiver. The capacity determines how
* many incoming messages can be held in the receiver before being
Modified: qpid/trunk/qpid/cpp/include/qpid/messaging/Session.h
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/include/qpid/messaging/Session.h?rev=928855&r1=928854&r2=928855&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/include/qpid/messaging/Session.h (original)
+++ qpid/trunk/qpid/cpp/include/qpid/messaging/Session.h Mon Mar 29 18:15:42 2010
@@ -102,7 +102,7 @@ class Session : public qpid::messaging::
* which case the passed in receiver reference will be set to the
* receiver for that message or false if no message was available.
*/
- QPID_CLIENT_EXTERN bool nextReceiver(Receiver&, Duration timeout=INFINITE_DURATION);
+ QPID_CLIENT_EXTERN bool nextReceiver(Receiver&, Duration timeout=Duration::INFINITE);
/**
* Returns the receiver for the next available message. If there
* are no available messages at present the call will block for up
@@ -111,7 +111,7 @@ class Session : public qpid::messaging::
*@exception Receiver::NoMessageAvailable if no message became available in
* time.
*/
- QPID_CLIENT_EXTERN Receiver nextReceiver(Duration timeout=INFINITE_DURATION);
+ QPID_CLIENT_EXTERN Receiver nextReceiver(Duration timeout=Duration::INFINITE);
/**
* Create a new sender through which messages can be sent to the
Modified: qpid/trunk/qpid/cpp/src/CMakeLists.txt
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/CMakeLists.txt?rev=928855&r1=928854&r2=928855&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/CMakeLists.txt (original)
+++ qpid/trunk/qpid/cpp/src/CMakeLists.txt Mon Mar 29 18:15:42 2010
@@ -679,6 +679,7 @@ set (qpidclient_SOURCES
qpid/messaging/AddressParser.cpp
qpid/messaging/Connection.cpp
qpid/messaging/ConnectionImpl.h
+ qpid/messaging/Duration.cpp
qpid/messaging/ListContent.cpp
qpid/messaging/ListView.cpp
qpid/messaging/MapContent.cpp
Modified: qpid/trunk/qpid/cpp/src/Makefile.am
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/Makefile.am?rev=928855&r1=928854&r2=928855&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/Makefile.am (original)
+++ qpid/trunk/qpid/cpp/src/Makefile.am Mon Mar 29 18:15:42 2010
@@ -707,6 +707,7 @@ libqpidclient_la_SOURCES = \
qpid/messaging/AddressParser.h \
qpid/messaging/AddressParser.cpp \
qpid/messaging/Connection.cpp \
+ qpid/messaging/Duration.cpp \
qpid/messaging/ListContent.cpp \
qpid/messaging/ListView.cpp \
qpid/messaging/MapContent.cpp \
Modified: qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/IncomingMessages.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/IncomingMessages.cpp?rev=928855&r1=928854&r2=928855&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/IncomingMessages.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/IncomingMessages.cpp Mon Mar 29 18:15:42 2010
@@ -26,6 +26,7 @@
#include "qpid/client/SessionBase_0_10Access.h"
#include "qpid/log/Statement.h"
#include "qpid/messaging/Address.h"
+#include "qpid/messaging/Duration.h"
#include "qpid/messaging/Message.h"
#include "qpid/messaging/MessageImpl.h"
#include "qpid/types/Variant.h"
@@ -276,7 +277,7 @@ void populateHeaders(qpid::messaging::Me
const MessageProperties* messageProperties)
{
if (deliveryProperties) {
- message.setTtl(deliveryProperties->getTtl());
+ message.setTtl(qpid::messaging::Duration(deliveryProperties->getTtl()));
message.setDurable(deliveryProperties->getDeliveryMode() == DELIVERY_MODE_PERSISTENT);
MessageImplAccess::get(message).redelivered = deliveryProperties->getRedelivered();
}
Modified: qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/OutgoingMessage.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/OutgoingMessage.cpp?rev=928855&r1=928854&r2=928855&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/OutgoingMessage.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/OutgoingMessage.cpp Mon Mar 29 18:15:42 2010
@@ -47,7 +47,7 @@ void OutgoingMessage::convert(const qpid
message.getMessageProperties().setReplyTo(AddressResolution::convert(address));
}
translate(from.getHeaders(), message.getMessageProperties().getApplicationHeaders());
- message.getDeliveryProperties().setTtl(from.getTtl());
+ message.getDeliveryProperties().setTtl(from.getTtl().getMilliseconds());
if (from.getDurable()) {
message.getDeliveryProperties().setDeliveryMode(DELIVERY_MODE_PERSISTENT);
}
Modified: qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/ReceiverImpl.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/ReceiverImpl.cpp?rev=928855&r1=928854&r2=928855&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/ReceiverImpl.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/ReceiverImpl.cpp Mon Mar 29 18:15:42 2010
@@ -30,6 +30,7 @@ namespace client {
namespace amqp0_10 {
using qpid::messaging::Receiver;
+using qpid::messaging::Duration;
void ReceiverImpl::received(qpid::messaging::Message&)
{
@@ -163,7 +164,7 @@ bool ReceiverImpl::fetchImpl(qpid::messa
} else {
sync(session).messageFlush(destination);
startFlow();//reallocate credit
- return getImpl(message, 0);
+ return getImpl(message, Duration::IMMEDIATE);
}
}
Modified: qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/SessionImpl.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/SessionImpl.cpp?rev=928855&r1=928854&r2=928855&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/SessionImpl.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/SessionImpl.cpp Mon Mar 29 18:15:42 2010
@@ -267,8 +267,9 @@ bool SessionImpl::accept(ReceiverImpl* r
qpid::sys::Duration adjust(qpid::messaging::Duration timeout)
{
- if (timeout < (uint64_t) (qpid::sys::TIME_INFINITE/qpid::sys::TIME_MSEC)) {
- return timeout * qpid::sys::TIME_MSEC;
+ uint64_t ms = timeout.getMilliseconds();
+ if (ms < (uint64_t) (qpid::sys::TIME_INFINITE/qpid::sys::TIME_MSEC)) {
+ return ms * qpid::sys::TIME_MSEC;
} else {
return qpid::sys::TIME_INFINITE;
}
Added: qpid/trunk/qpid/cpp/src/qpid/messaging/Duration.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/messaging/Duration.cpp?rev=928855&view=auto
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/messaging/Duration.cpp (added)
+++ qpid/trunk/qpid/cpp/src/qpid/messaging/Duration.cpp Mon Mar 29 18:15:42 2010
@@ -0,0 +1,45 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+#include "qpid/messaging/Duration.h"
+#include <limits>
+
+namespace qpid {
+namespace messaging {
+
+Duration::Duration(uint64_t ms) : milliseconds(ms) {}
+uint64_t Duration::getMilliseconds() const { return milliseconds; }
+
+Duration operator*(const Duration& duration, uint64_t multiplier)
+{
+ return Duration(duration.getMilliseconds() * multiplier);
+}
+
+Duration operator*(uint64_t multiplier, const Duration& duration)
+{
+ return Duration(duration.getMilliseconds() * multiplier);
+}
+
+const Duration Duration::INFINITE(std::numeric_limits<uint64_t>::max());
+const Duration Duration::IMMEDIATE(0);
+const Duration Duration::SECOND(1000);
+const Duration Duration::MINUTE(SECOND * 60);
+
+}} // namespace qpid::messaging
Modified: qpid/trunk/qpid/cpp/src/qpid/messaging/Message.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/messaging/Message.cpp?rev=928855&r1=928854&r2=928855&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/messaging/Message.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/messaging/Message.cpp Mon Mar 29 18:15:42 2010
@@ -52,8 +52,8 @@ const std::string& Message::getUserId()
void Message::setCorrelationId(const std::string& id) { impl->correlationId = id; }
const std::string& Message::getCorrelationId() const { return impl->correlationId; }
-void Message::setTtl(Duration ttl) { impl->ttl = ttl; }
-Duration Message::getTtl() const { return impl->ttl; }
+void Message::setTtl(Duration ttl) { impl->ttl = ttl.getMilliseconds(); }
+Duration Message::getTtl() const { return Duration(impl->ttl); }
void Message::setDurable(bool durable) { impl->durable = durable; }
bool Message::getDurable() const { return impl->durable; }
Modified: qpid/trunk/qpid/cpp/src/tests/MessagingSessionTests.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/tests/MessagingSessionTests.cpp?rev=928855&r1=928854&r2=928855&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/tests/MessagingSessionTests.cpp (original)
+++ qpid/trunk/qpid/cpp/src/tests/MessagingSessionTests.cpp Mon Mar 29 18:15:42 2010
@@ -131,7 +131,7 @@ struct MessagingFixture : public BrokerF
Message out(Uuid(true).str());
s.send(out);
Message in;
- BOOST_CHECK(r.fetch(in, 5*DURATION_SEC));
+ BOOST_CHECK(r.fetch(in, 5*Duration::SECOND));
BOOST_CHECK_EQUAL(out.getContent(), in.getContent());
r.close();
s.close();
@@ -197,7 +197,7 @@ struct MultiQueueFixture : MessagingFixt
}
};
-std::vector<std::string> fetch(Receiver& receiver, int count, Duration timeout=DURATION_SEC*5)
+std::vector<std::string> fetch(Receiver& receiver, int count, Duration timeout=Duration::SECOND*5)
{
std::vector<std::string> data;
Message message;
@@ -216,7 +216,7 @@ void send(Sender& sender, uint count = 1
}
void receive(Receiver& receiver, uint count = 1, uint start = 1,
- const std::string& base = "Message", Duration timeout=DURATION_SEC*5)
+ const std::string& base = "Message", Duration timeout=Duration::SECOND*5)
{
for (uint i = start; i < start + count; ++i) {
BOOST_CHECK_EQUAL(receiver.fetch(timeout).getContent(), (boost::format("%1%_%2%") % base % i).str());
@@ -230,7 +230,7 @@ QPID_AUTO_TEST_CASE(testSimpleSendReceiv
Message out("test-message");
sender.send(out);
Receiver receiver = fix.session.createReceiver(fix.queue);
- Message in = receiver.fetch(5 * DURATION_SEC);
+ Message in = receiver.fetch(Duration::SECOND * 5);
fix.session.acknowledge();
BOOST_CHECK_EQUAL(in.getContent(), out.getContent());
}
@@ -247,7 +247,7 @@ QPID_AUTO_TEST_CASE(testSendReceiveHeade
Receiver receiver = fix.session.createReceiver(fix.queue);
Message in;
for (uint i = 0; i < 10; ++i) {
- BOOST_CHECK(receiver.fetch(in, 5 * DURATION_SEC));
+ BOOST_CHECK(receiver.fetch(in, Duration::SECOND * 5));
BOOST_CHECK_EQUAL(in.getContent(), out.getContent());
BOOST_CHECK_EQUAL(in.getHeaders()["a"].asUint32(), i);
fix.session.acknowledge();
@@ -301,7 +301,7 @@ QPID_AUTO_TEST_CASE(testSimpleTopic)
BOOST_CHECK_EQUAL(fetch(sub1, 4), boost::assign::list_of<std::string>("two")("three")("four")("five"));
BOOST_CHECK_EQUAL(fetch(sub3, 2), boost::assign::list_of<std::string>("four")("five"));
Message in;
- BOOST_CHECK(!sub2.fetch(in, 0));//TODO: or should this raise an error?
+ BOOST_CHECK(!sub2.fetch(in, Duration::IMMEDIATE));//TODO: or should this raise an error?
//TODO: check pending messages...
@@ -324,7 +324,7 @@ QPID_AUTO_TEST_CASE(testNextReceiver)
for (uint i = 0; i < fix.queues.size(); i++) {
Message msg;
- BOOST_CHECK(fix.session.nextReceiver().fetch(msg, DURATION_SEC));
+ BOOST_CHECK(fix.session.nextReceiver().fetch(msg, Duration::SECOND));
BOOST_CHECK_EQUAL(msg.getContent(), (boost::format("Message_%1%") % (i+1)).str());
}
}
@@ -346,7 +346,7 @@ QPID_AUTO_TEST_CASE(testMapMessage)
content.encode();
sender.send(out);
Receiver receiver = fix.session.createReceiver(fix.queue);
- Message in = receiver.fetch(5 * DURATION_SEC);
+ Message in = receiver.fetch(5 * Duration::SECOND);
MapView view(in);
BOOST_CHECK_EQUAL(view["abc"].asString(), "def");
BOOST_CHECK_EQUAL(view["pi"].asFloat(), 3.14f);
@@ -369,7 +369,7 @@ QPID_AUTO_TEST_CASE(testMapMessageWithIn
content.encode();
sender.send(out);
Receiver receiver = fix.session.createReceiver(fix.queue);
- Message in = receiver.fetch(5 * DURATION_SEC);
+ Message in = receiver.fetch(5 * Duration::SECOND);
MapView view(in);
BOOST_CHECK_EQUAL(view["abc"].asString(), "def");
BOOST_CHECK_EQUAL(view["pi"].asFloat(), 3.14f);
@@ -389,7 +389,7 @@ QPID_AUTO_TEST_CASE(testListMessage)
content.encode();
sender.send(out);
Receiver receiver = fix.session.createReceiver(fix.queue);
- Message in = receiver.fetch(5 * DURATION_SEC);
+ Message in = receiver.fetch(5 * Duration::SECOND);
ListView view(in);
BOOST_CHECK_EQUAL(view.size(), content.size());
BOOST_CHECK_EQUAL(view.front().asString(), "abc");
@@ -423,7 +423,7 @@ QPID_AUTO_TEST_CASE(testListMessageWithI
content.encode();
sender.send(out);
Receiver receiver = fix.session.createReceiver(fix.queue);
- Message in = receiver.fetch(5 * DURATION_SEC);
+ Message in = receiver.fetch(5 * Duration::SECOND);
ListView view(in);
BOOST_CHECK_EQUAL(view.size(), content.size());
BOOST_CHECK_EQUAL(view.front().asString(), "abc");
@@ -452,10 +452,10 @@ QPID_AUTO_TEST_CASE(testReject)
Message m2("accept-me");
sender.send(m2);
Receiver receiver = fix.session.createReceiver(fix.queue);
- Message in = receiver.fetch(5 * DURATION_SEC);
+ Message in = receiver.fetch(5 * Duration::SECOND);
BOOST_CHECK_EQUAL(in.getContent(), m1.getContent());
fix.session.reject(in);
- in = receiver.fetch(5 * DURATION_SEC);
+ in = receiver.fetch(5 * Duration::SECOND);
BOOST_CHECK_EQUAL(in.getContent(), m2.getContent());
fix.session.acknowledge();
}
@@ -834,17 +834,17 @@ QPID_AUTO_TEST_CASE(testTx)
send(sender2, 5, 1, "B");
ssn2.commit();
receive(receiver1, 5, 1, "B");//(only those from sender2 should be received)
- BOOST_CHECK(!receiver1.fetch(in, 0));//check there are no more messages
+ BOOST_CHECK(!receiver1.fetch(in, Duration::IMMEDIATE));//check there are no more messages
ssn1.rollback();
receive(receiver2, 5, 1, "B");
- BOOST_CHECK(!receiver2.fetch(in, 0));//check there are no more messages
+ BOOST_CHECK(!receiver2.fetch(in, Duration::IMMEDIATE));//check there are no more messages
ssn2.rollback();
receive(receiver1, 5, 1, "B");
- BOOST_CHECK(!receiver1.fetch(in, 0));//check there are no more messages
+ BOOST_CHECK(!receiver1.fetch(in, Duration::IMMEDIATE));//check there are no more messages
ssn1.commit();
//check neither receiver gets any more messages:
- BOOST_CHECK(!receiver1.fetch(in, 0));
- BOOST_CHECK(!receiver2.fetch(in, 0));
+ BOOST_CHECK(!receiver1.fetch(in, Duration::IMMEDIATE));
+ BOOST_CHECK(!receiver2.fetch(in, Duration::IMMEDIATE));
}
QPID_AUTO_TEST_SUITE_END()
Modified: qpid/trunk/qpid/cpp/src/tests/qpid_recv.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/tests/qpid_recv.cpp?rev=928855&r1=928854&r2=928855&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/tests/qpid_recv.cpp (original)
+++ qpid/trunk/qpid/cpp/src/tests/qpid_recv.cpp Mon Mar 29 18:15:42 2010
@@ -96,8 +96,8 @@ struct Options : public qpid::Options
Duration getTimeout()
{
- if (forever) return INFINITE_DURATION;
- else return timeout*DURATION_SEC;
+ if (forever) return Duration::INFINITE;
+ else return Duration::SECOND*timeout;
}
bool parse(int argc, char** argv)
@@ -173,7 +173,7 @@ int main(int argc, char ** argv)
if (msg.getReplyTo()) std::cout << "ReplyTo: " << msg.getReplyTo() << std::endl;
if (msg.getCorrelationId().size()) std::cout << "CorrelationId: " << msg.getCorrelationId() << std::endl;
if (msg.getUserId().size()) std::cout << "UserId: " << msg.getUserId() << std::endl;
- if (msg.getTtl()) std::cout << "TTL: " << msg.getTtl() << std::endl;
+ if (msg.getTtl().getMilliseconds()) std::cout << "TTL: " << msg.getTtl().getMilliseconds() << std::endl;
if (msg.getDurable()) std::cout << "Durable: true" << std::endl;
if (msg.isRedelivered()) std::cout << "Redelivered: true" << std::endl;
std::cout << "Headers: " << msg.getHeaders() << std::endl;
Modified: qpid/trunk/qpid/cpp/src/tests/qpid_send.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/tests/qpid_send.cpp?rev=928855&r1=928854&r2=928855&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/tests/qpid_send.cpp (original)
+++ qpid/trunk/qpid/cpp/src/tests/qpid_send.cpp Mon Mar 29 18:15:42 2010
@@ -192,7 +192,7 @@ int main(int argc, char ** argv)
Message msg;
msg.setDurable(opts.durable);
if (opts.ttl) {
- msg.setTtl(opts.ttl);
+ msg.setTtl(Duration(opts.ttl));
}
if (!opts.replyto.empty()) msg.setReplyTo(Address(opts.replyto));
if (!opts.userid.empty()) msg.setUserId(opts.userid);
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org