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 2008/10/22 01:30:32 UTC

svn commit: r706811 - in /incubator/qpid/trunk/qpid/cpp/src: ./ qpid/broker/ qpid/management/ tests/

Author: gsim
Date: Tue Oct 21 16:30:32 2008
New Revision: 706811

URL: http://svn.apache.org/viewvc?rev=706811&view=rev
Log:
Refactored DeliveryRecord and delivery path to remove some redundant code.


Removed:
    incubator/qpid/trunk/qpid/cpp/src/qpid/broker/DeliveryToken.h
    incubator/qpid/trunk/qpid/cpp/src/qpid/broker/MessageDelivery.cpp
    incubator/qpid/trunk/qpid/cpp/src/qpid/broker/MessageDelivery.h
Modified:
    incubator/qpid/trunk/qpid/cpp/src/Makefile.am
    incubator/qpid/trunk/qpid/cpp/src/qpid/broker/DeliveryAdapter.h
    incubator/qpid/trunk/qpid/cpp/src/qpid/broker/DeliveryRecord.cpp
    incubator/qpid/trunk/qpid/cpp/src/qpid/broker/DeliveryRecord.h
    incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.cpp
    incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.h
    incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionAdapter.cpp
    incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.cpp
    incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.h
    incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementBroker.cpp
    incubator/qpid/trunk/qpid/cpp/src/tests/DeliveryRecordTest.cpp
    incubator/qpid/trunk/qpid/cpp/src/tests/MessageUtils.h
    incubator/qpid/trunk/qpid/cpp/src/tests/QueuePolicyTest.cpp
    incubator/qpid/trunk/qpid/cpp/src/tests/run_federation_tests

Modified: incubator/qpid/trunk/qpid/cpp/src/Makefile.am
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/Makefile.am?rev=706811&r1=706810&r2=706811&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/Makefile.am (original)
+++ incubator/qpid/trunk/qpid/cpp/src/Makefile.am Tue Oct 21 16:30:32 2008
@@ -328,7 +328,6 @@
   qpid/broker/Message.cpp \
   qpid/broker/MessageAdapter.cpp \
   qpid/broker/MessageBuilder.cpp \
-  qpid/broker/MessageDelivery.cpp \
   qpid/broker/MessageStoreModule.cpp \
   qpid/broker/NameGenerator.cpp \
   qpid/broker/NullMessageStore.cpp \
@@ -446,7 +445,6 @@
   qpid/broker/DeliveryAdapter.h \
   qpid/broker/DeliveryId.h \
   qpid/broker/DeliveryRecord.h \
-  qpid/broker/DeliveryToken.h \
   qpid/broker/DirectExchange.h \
   qpid/broker/DtxAck.h \
   qpid/broker/DtxBuffer.h \
@@ -464,7 +462,6 @@
   qpid/broker/Message.h \
   qpid/broker/MessageAdapter.h \
   qpid/broker/MessageBuilder.h \
-  qpid/broker/MessageDelivery.h \
   qpid/broker/MessageStore.h \
   qpid/broker/MessageStoreModule.h \
   qpid/broker/NameGenerator.h \

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/broker/DeliveryAdapter.h
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/broker/DeliveryAdapter.h?rev=706811&r1=706810&r2=706811&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/broker/DeliveryAdapter.h (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/broker/DeliveryAdapter.h Tue Oct 21 16:30:32 2008
@@ -22,29 +22,30 @@
 #define _DeliveryAdapter_
 
 #include "DeliveryId.h"
-#include "DeliveryToken.h"
 #include "Message.h"
 #include "qpid/framing/amqp_types.h"
 
 namespace qpid {
 namespace broker {
 
-    /**
-     * The intention behind this interface is to separate the generic
-     * handling of some form of message delivery to clients that is
-     * contained in the version independent Channel class from the
-     * details required for a particular situation or
-     * version. i.e. where the existing adapters allow (through
-     * supporting the generated interface for a version of the
-     * protocol) inputs of a channel to be adapted to the version
-     * independent part, this does the same for the outputs.
-     */
-    class DeliveryAdapter
-    {
-    public:
-        virtual DeliveryId deliver(QueuedMessage& msg, DeliveryToken::shared_ptr token) = 0;
-        virtual ~DeliveryAdapter(){}
-    };
+class DeliveryRecord;
+
+/**
+ * The intention behind this interface is to separate the generic
+ * handling of some form of message delivery to clients that is
+ * contained in the version independent Channel class from the
+ * details required for a particular situation or
+ * version. i.e. where the existing adapters allow (through
+ * supporting the generated interface for a version of the
+ * protocol) inputs of a channel to be adapted to the version
+ * independent part, this does the same for the outputs.
+ */
+class DeliveryAdapter
+{
+  public:
+    virtual void deliver(DeliveryRecord&) = 0;
+    virtual ~DeliveryAdapter(){}
+};
 
 }}
 

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/broker/DeliveryRecord.cpp
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/broker/DeliveryRecord.cpp?rev=706811&r1=706810&r2=706811&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/broker/DeliveryRecord.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/broker/DeliveryRecord.cpp Tue Oct 21 16:30:32 2008
@@ -23,32 +23,29 @@
 #include "SemanticState.h"
 #include "Exchange.h"
 #include "qpid/log/Statement.h"
+#include "qpid/framing/FrameHandler.h"
+#include "qpid/framing/MessageTransferBody.h"
 
 using namespace qpid::broker;
+using namespace qpid::framing;
 using std::string;
 
 DeliveryRecord::DeliveryRecord(const QueuedMessage& _msg, 
                                Queue::shared_ptr _queue, 
                                const std::string _tag,
-                               DeliveryToken::shared_ptr _token, 
-                               const DeliveryId _id,
                                bool _acquired, bool accepted, 
                                bool _windowing) : msg(_msg), 
                                                   queue(_queue), 
                                                   tag(_tag),
-                                                  token(_token),
-                                                  id(_id),
                                                   acquired(_acquired),
-                                                  pull(false), 
+                                                  acceptExpected(!accepted),
                                                   cancelled(false),
                                                   credit(msg.payload ? msg.payload->getRequiredCredit() : 0),
                                                   size(msg.payload ? msg.payload->contentSize() : 0),
                                                   completed(false),
                                                   ended(accepted),
                                                   windowing(_windowing)
-{
-    if (accepted) setEnded();
-}
+{}
 
 void DeliveryRecord::setEnded()
 {
@@ -77,20 +74,31 @@
 
 void DeliveryRecord::redeliver(SemanticState* const session) {
     if (!ended) {
-        if(pull || cancelled){
-            //if message was originally sent as response to get, we must requeue it
-
-            //or if subscription was cancelled, requeue it (waiting for
+        if(cancelled){
+            //if subscription was cancelled, requeue it (waiting for
             //final confirmation for AMQP WG on this case)
-
             requeue();
         }else{
             msg.payload->redeliver();//mark as redelivered
-            id = session->redeliver(msg, token);
+            session->deliver(*this);
         }
     }
 }
 
+void DeliveryRecord::deliver(framing::FrameHandler& h, DeliveryId deliveryId, uint16_t framesize)
+{
+    id = deliveryId;
+    if (msg.payload->getRedelivered()){
+        msg.payload->getProperties<DeliveryProperties>()->setRedelivered(true);
+    }
+
+    AMQFrame method(in_place<MessageTransferBody>(ProtocolVersion(), tag, acceptExpected ? 0 : 1, acquired ? 0 : 1));
+    method.setEof(false);
+    h.handle(method);
+    msg.payload->sendHeader(h, framesize);
+    msg.payload->sendContent(*queue, h, framesize);
+}
+
 void DeliveryRecord::requeue() const
 {
     if (acquired && !ended) {

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/broker/DeliveryRecord.h
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/broker/DeliveryRecord.h?rev=706811&r1=706810&r2=706811&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/broker/DeliveryRecord.h (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/broker/DeliveryRecord.h Tue Oct 21 16:30:32 2008
@@ -27,9 +27,8 @@
 #include <ostream>
 #include "qpid/framing/SequenceSet.h"
 #include "Queue.h"
-#include "Consumer.h"
+#include "QueuedMessage.h"
 #include "DeliveryId.h"
-#include "DeliveryToken.h"
 #include "Message.h"
 
 namespace qpid {
@@ -43,10 +42,9 @@
     QueuedMessage msg;
     mutable Queue::shared_ptr queue;
     const std::string tag;
-    DeliveryToken::shared_ptr token;
     DeliveryId id;
     bool acquired;
-    const bool pull;
+    bool acceptExpected;
     bool cancelled;
     const uint32_t credit;
     const uint64_t size;
@@ -56,13 +54,14 @@
     const bool windowing;
 
   public:
-    DeliveryRecord(const QueuedMessage& msg, Queue::shared_ptr queue, const std::string tag, DeliveryToken::shared_ptr token, 
-                   const DeliveryId id, bool acquired, bool confirmed, bool windowing);
+    DeliveryRecord(const QueuedMessage& msg, Queue::shared_ptr queue, 
+                   const std::string tag,
+                   bool acquired, bool confirmed, bool windowing);
     bool matches(DeliveryId tag) const;
     bool matchOrAfter(DeliveryId tag) const;
     bool after(DeliveryId tag) const;
     bool coveredBy(const framing::SequenceSet* const range) const;
-
+    
     void dequeue(TransactionContext* ctxt = 0) const;
     void requeue() const;
     void release(bool setRedelivered);
@@ -80,7 +79,10 @@
 
     uint32_t getCredit() const;
     const std::string& getTag() const { return tag; } 
-    bool isPull() const { return pull; }
+
+    void deliver(framing::FrameHandler& h, DeliveryId deliveryId, uint16_t framesize);
+    void setId(DeliveryId _id) { id = _id; }
+
     friend bool operator<(const DeliveryRecord&, const DeliveryRecord&);         
     friend std::ostream& operator<<(std::ostream&, const DeliveryRecord&);
 };

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.cpp
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.cpp?rev=706811&r1=706810&r2=706811&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.cpp Tue Oct 21 16:30:32 2008
@@ -84,16 +84,14 @@
     return consumers.find(consumerTag) != consumers.end();
 }
 
-void SemanticState::consume(DeliveryToken::shared_ptr token, string& tagInOut, 
-                            Queue::shared_ptr queue, bool nolocal, bool ackRequired, bool acquire,
+void SemanticState::consume(const string& tag, 
+                            Queue::shared_ptr queue, bool ackRequired, bool acquire,
                             bool exclusive, const string& resumeId, uint64_t resumeTtl, const FieldTable& arguments)
 {
-    if(tagInOut.empty())
-        tagInOut = tagGenerator.generate();
-    ConsumerImpl::shared_ptr c(new ConsumerImpl(this, token, tagInOut, queue, ackRequired, nolocal, acquire, exclusive, resumeId, resumeTtl, arguments));
+    ConsumerImpl::shared_ptr c(new ConsumerImpl(this, tag, queue, ackRequired, acquire, exclusive, resumeId, resumeTtl, arguments));
     queue->consume(c, exclusive);//may throw exception
     outputTasks.addOutputTask(c.get());
-    consumers[tagInOut] = c;
+    consumers[tag] = c;
 }
 
 void SemanticState::cancel(const string& tag){
@@ -233,11 +231,9 @@
 }
 
 SemanticState::ConsumerImpl::ConsumerImpl(SemanticState* _parent, 
-                                          DeliveryToken::shared_ptr _token,
                                           const string& _name, 
                                           Queue::shared_ptr _queue, 
                                           bool ack,
-                                          bool _nolocal,
                                           bool _acquire,
                                           bool _exclusive,
                                           const string& _resumeId,
@@ -248,11 +244,9 @@
 ) : 
     Consumer(_acquire),
     parent(_parent), 
-    token(_token), 
     name(_name), 
     queue(_queue), 
     ackExpected(ack), 
-    nolocal(_nolocal),
     acquire(_acquire),
     blocked(true), 
     windowing(true),
@@ -272,10 +266,11 @@
 bool SemanticState::ConsumerImpl::deliver(QueuedMessage& msg)
 {
     allocateCredit(msg.payload);
-    DeliveryId deliveryTag =
-        parent->deliveryAdapter.deliver(msg, token);
+    DeliveryRecord record(msg, queue, name, acquire, !ackExpected, windowing);
+    parent->deliver(record);
+    if (!ackExpected) record.setEnded();//allows message to be released now its been delivered
     if (windowing || ackExpected || !acquire) {
-        parent->record(DeliveryRecord(msg, queue, name, token, deliveryTag, acquire, !ackExpected, windowing));
+        parent->record(record);
     } 
     if (acquire && !ackExpected) {
         queue->dequeue(0, msg);
@@ -283,10 +278,9 @@
     return true;
 }
 
-bool SemanticState::ConsumerImpl::filter(intrusive_ptr<Message> msg)
+bool SemanticState::ConsumerImpl::filter(intrusive_ptr<Message>)
 {
-    return !(nolocal &&
-             &parent->getSession().getConnection() == msg->getPublisher());
+    return true;
 }
 
 bool SemanticState::ConsumerImpl::accept(intrusive_ptr<Message> msg)
@@ -454,9 +448,9 @@
     }
 }
 
-DeliveryId SemanticState::redeliver(QueuedMessage& msg, DeliveryToken::shared_ptr token)
+void SemanticState::deliver(DeliveryRecord& msg)
 {
-    return deliveryAdapter.deliver(msg, token);
+    return deliveryAdapter.deliver(msg);
 }
 
 SemanticState::ConsumerImpl& SemanticState::find(const std::string& destination)

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.h
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.h?rev=706811&r1=706810&r2=706811&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.h (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.h Tue Oct 21 16:30:32 2008
@@ -26,7 +26,6 @@
 #include "Deliverable.h"
 #include "DeliveryAdapter.h"
 #include "DeliveryRecord.h"
-#include "DeliveryToken.h"
 #include "DtxBuffer.h"
 #include "DtxManager.h"
 #include "NameGenerator.h"
@@ -65,11 +64,9 @@
     {
         qpid::sys::Mutex lock;
         SemanticState* const parent;
-        const DeliveryToken::shared_ptr token;
         const string name;
         const Queue::shared_ptr queue;
         const bool ackExpected;
-        const bool nolocal;
         const bool acquire;
         bool blocked;
         bool windowing;
@@ -87,9 +84,9 @@
       public:
         typedef boost::shared_ptr<ConsumerImpl> shared_ptr;
 
-        ConsumerImpl(SemanticState* parent, DeliveryToken::shared_ptr token, 
+        ConsumerImpl(SemanticState* parent, 
                      const string& name, Queue::shared_ptr queue,
-                     bool ack, bool nolocal, bool acquire, bool exclusive,
+                     bool ack, bool acquire, bool exclusive,
                      const std::string& resumeId, uint64_t resumeTtl, const framing::FieldTable& arguments);
         ~ConsumerImpl();
         OwnershipToken* getSession();
@@ -177,11 +174,9 @@
     
     bool exists(const string& consumerTag);
 
-    /**
-     *@param tagInOut - if empty it is updated with the generated token.
-     */
-    void consume(DeliveryToken::shared_ptr token, string& tagInOut, Queue::shared_ptr queue, 
-                 bool nolocal, bool ackRequired, bool acquire, bool exclusive,
+    void consume(const string& destination, 
+                 Queue::shared_ptr queue, 
+                 bool ackRequired, bool acquire, bool exclusive,
                  const string& resumeId=string(), uint64_t resumeTtl=0,
                  const framing::FieldTable& = framing::FieldTable());
 
@@ -203,7 +198,7 @@
     void suspendDtx(const std::string& xid);
     void resumeDtx(const std::string& xid);
     void recover(bool requeue);
-    DeliveryId redeliver(QueuedMessage& msg, DeliveryToken::shared_ptr token);            
+    void deliver(DeliveryRecord& message);            
     void acquire(DeliveryId first, DeliveryId last, DeliveryIds& acquired);
     void release(DeliveryId first, DeliveryId last, bool setRedelivered);
     void reject(DeliveryId first, DeliveryId last);

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionAdapter.cpp
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionAdapter.cpp?rev=706811&r1=706810&r2=706811&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionAdapter.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionAdapter.cpp Tue Oct 21 16:30:32 2008
@@ -17,8 +17,6 @@
  */
 #include "SessionAdapter.h"
 #include "Connection.h"
-#include "DeliveryToken.h"
-#include "MessageDelivery.h"
 #include "Queue.h"
 #include "qpid/Exception.h"
 #include "qpid/framing/reply_exceptions.h"
@@ -478,10 +476,9 @@
     if(!destination.empty() && state.exists(destination))
         throw NotAllowedException(QPID_MSG("Consumer tags must be unique"));
 
-    string tag = destination;
-    state.consume(MessageDelivery::getMessageDeliveryToken(destination, acceptMode, acquireMode), 
-                  tag, queue, false, //TODO get rid of no-local
-                  acceptMode == 0, acquireMode == 0, exclusive, resumeId, resumeTtl, arguments);
+    state.consume(destination, queue, 
+                  acceptMode == 0, acquireMode == 0, exclusive, 
+                  resumeId, resumeTtl, arguments);
 
     ManagementAgent* agent = ManagementAgent::Singleton::getInstance();
     if (agent)

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.cpp
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.cpp?rev=706811&r1=706810&r2=706811&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.cpp Tue Oct 21 16:30:32 2008
@@ -21,7 +21,7 @@
 #include "SessionState.h"
 #include "Broker.h"
 #include "ConnectionState.h"
-#include "MessageDelivery.h"
+#include "DeliveryRecord.h"
 #include "SessionManager.h"
 #include "SessionHandler.h"
 #include "qpid/framing/AMQContentBody.h"
@@ -230,14 +230,13 @@
     handler->out(frame);
 }
 
-DeliveryId SessionState::deliver(QueuedMessage& msg, DeliveryToken::shared_ptr token)
+void SessionState::deliver(DeliveryRecord& msg)
 {
     uint32_t maxFrameSize = getConnection().getFrameMax();
     assert(senderGetCommandPoint().offset == 0);
     SequenceNumber commandId = senderGetCommandPoint().command;
-    MessageDelivery::deliver(msg, getProxy().getHandler(), commandId, token, maxFrameSize);
+    msg.deliver(getProxy().getHandler(), commandId, maxFrameSize);
     assert(senderGetCommandPoint() == SessionPoint(commandId+1, 0)); // Delivery has moved sendPoint.
-    return commandId;
 }
 
 void SessionState::sendCompletion() { handler->sendCompletion(); }

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.h
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.h?rev=706811&r1=706810&r2=706811&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.h (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.h Tue Oct 21 16:30:32 2008
@@ -91,7 +91,7 @@
     void sendCompletion();
 
     //delivery adapter methods:
-    DeliveryId deliver(QueuedMessage& msg, DeliveryToken::shared_ptr token);
+    void deliver(DeliveryRecord&);
 
     // Manageable entry points
     management::ManagementObject* GetManagementObject (void) const;

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementBroker.cpp
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementBroker.cpp?rev=706811&r1=706810&r2=706811&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementBroker.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/management/ManagementBroker.cpp Tue Oct 21 16:30:32 2008
@@ -23,7 +23,6 @@
 #include "qpid/broker/DeliverableMessage.h"
 #include "qpid/log/Statement.h"
 #include <qpid/broker/Message.h>
-#include <qpid/broker/MessageDelivery.h>
 #include "qpid/framing/MessageTransferBody.h"
 #include "qpid/sys/Time.h"
 #include "qpid/broker/ConnectionState.h"

Modified: incubator/qpid/trunk/qpid/cpp/src/tests/DeliveryRecordTest.cpp
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/DeliveryRecordTest.cpp?rev=706811&r1=706810&r2=706811&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/tests/DeliveryRecordTest.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/tests/DeliveryRecordTest.cpp Tue Oct 21 16:30:32 2008
@@ -45,7 +45,9 @@
 
     list<DeliveryRecord> records;
     for (list<SequenceNumber>::iterator i = ids.begin(); i != ids.end(); i++) {
-        records.push_back(DeliveryRecord(QueuedMessage(0), Queue::shared_ptr(), "tag", DeliveryToken::shared_ptr(), *i, false, false, false));
+        DeliveryRecord r(QueuedMessage(0), Queue::shared_ptr(), "tag", false, false, false);
+        r.setId(*i);
+        records.push_back(r);
     }
     records.sort();
 

Modified: incubator/qpid/trunk/qpid/cpp/src/tests/MessageUtils.h
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/MessageUtils.h?rev=706811&r1=706810&r2=706811&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/tests/MessageUtils.h (original)
+++ incubator/qpid/trunk/qpid/cpp/src/tests/MessageUtils.h Tue Oct 21 16:30:32 2008
@@ -20,7 +20,6 @@
  */
 
 #include "qpid/broker/Message.h"
-#include "qpid/broker/MessageDelivery.h"
 #include "qpid/framing/AMQFrame.h"
 #include "qpid/framing/MessageTransferBody.h"
 #include "qpid/framing/Uuid.h"

Modified: incubator/qpid/trunk/qpid/cpp/src/tests/QueuePolicyTest.cpp
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/QueuePolicyTest.cpp?rev=706811&r1=706810&r2=706811&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/tests/QueuePolicyTest.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/tests/QueuePolicyTest.cpp Tue Oct 21 16:30:32 2008
@@ -23,6 +23,7 @@
 
 #include "qpid/broker/QueuePolicy.h"
 #include "qpid/sys/Time.h"
+#include "qpid/framing/reply_exceptions.h"
 #include "MessageUtils.h"
 #include "BrokerFixture.h"
 

Modified: incubator/qpid/trunk/qpid/cpp/src/tests/run_federation_tests
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/run_federation_tests?rev=706811&r1=706810&r2=706811&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/tests/run_federation_tests (original)
+++ incubator/qpid/trunk/qpid/cpp/src/tests/run_federation_tests Tue Oct 21 16:30:32 2008
@@ -22,7 +22,7 @@
     echo "Running federation tests using brokers on ports $LOCAL_PORT $REMOTE_PORT"
     PYTHONPATH=${PYTHON_DIR}
     export PYTHONPATH
-    ${MY_DIR}/federation.py -v -s ${MY_DIR}/../../../specs/amqp.0-10-qpid-errata.xml -b localhost:$LOCAL_PORT --remote-port $REMOTE_PORT
+    ${MY_DIR}/federation.py -v -s ${MY_DIR}/../../../specs/amqp.0-10-qpid-errata.xml -b localhost:$LOCAL_PORT --remote-port $REMOTE_PORT $@
     RETCODE=$?
     stop_brokers
     if test x$RETCODE != x0; then