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/02/26 09:40:16 UTC
svn commit: r631128 - in /incubator/qpid/trunk/qpid/cpp/src/qpid/broker:
SemanticState.cpp SessionContext.h
Author: gsim
Date: Tue Feb 26 00:40:13 2008
New Revision: 631128
URL: http://svn.apache.org/viewvc?rev=631128&view=rev
Log:
Use sessions reference to broker rather than connections in semantic state as the sessions ref is valid even when not attached.
Modified:
incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.cpp
incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionContext.h
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=631128&r1=631127&r2=631128&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.cpp Tue Feb 26 00:40:13 2008
@@ -326,7 +326,7 @@
if(queue) {
queue->cancel(c);
if (queue->canAutoDelete() && !queue->hasExclusiveOwner()) {
- Queue::tryAutoDelete(getSession().getConnection().getBroker(), queue);
+ Queue::tryAutoDelete(session.getBroker(), queue);
}
}
}
@@ -347,7 +347,7 @@
std::string exchangeName = msg->getExchangeName();
msg->getProperties<DeliveryProperties>()->setExchange(exchangeName);
if (!cacheExchange || cacheExchange->getName() != exchangeName){
- cacheExchange = session.getConnection().broker.getExchanges().get(exchangeName);
+ cacheExchange = session.getBroker().getExchanges().get(exchangeName);
}
cacheExchange->route(strategy, msg->getRoutingKey(), msg->getApplicationHeaders());
@@ -579,7 +579,7 @@
if (name.empty()) {
throw NotAllowedException(QPID_MSG("No queue name specified."));
} else {
- queue = session.getConnection().getBroker().getQueues().find(name);
+ queue = session.getBroker().getQueues().find(name);
if (!queue)
throw NotFoundException(QPID_MSG("Queue not found: "<<name));
}
Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionContext.h
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionContext.h?rev=631128&r1=631127&r2=631128&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionContext.h (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionContext.h Tue Feb 26 00:40:13 2008
@@ -40,6 +40,7 @@
virtual ~SessionContext(){}
virtual ConnectionState& getConnection() = 0;
virtual framing::AMQP_ClientProxy& getProxy() = 0;
+ virtual Broker& getBroker() = 0;
};
}} // namespace qpid::broker