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 2014/07/16 16:09:42 UTC
svn commit: r1611016 - in /qpid/trunk/qpid:
cpp/src/qpid/broker/SessionState.cpp
cpp/src/qpid/broker/amqp/ManagedSession.cpp
cpp/src/qpid/broker/management-schema.xml python/qpid/disp.py
tools/src/py/qpidtoollibs/disp.py
Author: gsim
Date: Wed Jul 16 14:09:41 2014
New Revision: 1611016
URL: http://svn.apache.org/r1611016
Log:
QPID-5850: Support for long session names (patch from Ernie Allen)
Modified:
qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.cpp
qpid/trunk/qpid/cpp/src/qpid/broker/amqp/ManagedSession.cpp
qpid/trunk/qpid/cpp/src/qpid/broker/management-schema.xml
qpid/trunk/qpid/python/qpid/disp.py
qpid/trunk/qpid/tools/src/py/qpidtoollibs/disp.py
Modified: qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.cpp?rev=1611016&r1=1611015&r2=1611016&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.cpp Wed Jul 16 14:09:41 2014
@@ -69,8 +69,12 @@ void SessionState::addManagementObject()
if (parent != 0) {
ManagementAgent* agent = getBroker().getManagementAgent();
if (agent != 0) {
- mgmtObject = _qmf::Session::shared_ptr(new _qmf::Session
- (agent, this, parent, getId().getName()));
+ std::string name(getId().getName());
+ std::string fullName(name);
+ if (name.length() >= std::numeric_limits<uint8_t>::max())
+ name.resize(std::numeric_limits<uint8_t>::max()-1);
+ mgmtObject = _qmf::Session::shared_ptr(new _qmf::Session (agent, this, parent, name));
+ mgmtObject->set_fullName (fullName);
mgmtObject->set_attached (0);
mgmtObject->set_detachedLifespan (0);
mgmtObject->clr_expireTime();
Modified: qpid/trunk/qpid/cpp/src/qpid/broker/amqp/ManagedSession.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/amqp/ManagedSession.cpp?rev=1611016&r1=1611015&r2=1611016&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/amqp/ManagedSession.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/amqp/ManagedSession.cpp Wed Jul 16 14:09:41 2014
@@ -36,7 +36,12 @@ ManagedSession::ManagedSession(Broker& b
{
qpid::management::ManagementAgent* agent = broker.getManagementAgent();
if (agent != 0) {
- session = _qmf::Session::shared_ptr(new _qmf::Session(agent, this, broker.GetVhostObject(), id));
+ std::string name(id);
+ std::string fullName(name);
+ if (name.length() >= std::numeric_limits<uint8_t>::max())
+ name.resize(std::numeric_limits<uint8_t>::max()-1);
+ session = _qmf::Session::shared_ptr(new _qmf::Session(agent, this, broker.GetVhostObject(), name));
+ session->set_fullName(fullName);
session->set_attached(true);
session->set_detachedLifespan(0);
session->clr_expireTime();
Modified: qpid/trunk/qpid/cpp/src/qpid/broker/management-schema.xml
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/management-schema.xml?rev=1611016&r1=1611015&r2=1611016&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/management-schema.xml (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/management-schema.xml Wed Jul 16 14:09:41 2014
@@ -530,6 +530,7 @@
<class name="Session">
<property name="vhostRef" type="objId" references="Vhost" access="RC" index="y" parentRef="y"/>
<property name="name" type="sstr" access="RC" index="y"/>
+ <property name="fullName" type="lstr" access="RO" optional="y"/>
<property name="channelId" type="uint16" access="RO"/>
<property name="connectionRef" type="objId" references="Connection" access="RO"/>
<property name="detachedLifespan" type="uint32" access="RO" unit="second"/>
Modified: qpid/trunk/qpid/python/qpid/disp.py
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/python/qpid/disp.py?rev=1611016&r1=1611015&r2=1611016&view=diff
==============================================================================
--- qpid/trunk/qpid/python/qpid/disp.py (original)
+++ qpid/trunk/qpid/python/qpid/disp.py Wed Jul 16 14:09:41 2014
@@ -151,8 +151,8 @@ class Display:
print line
line = self.tablePrefix
for width in colWidth:
- for i in range (width):
- line = line + "="
+ line = line + "=" * width
+ line = line[:255]
print line
for row in rows:
Modified: qpid/trunk/qpid/tools/src/py/qpidtoollibs/disp.py
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/tools/src/py/qpidtoollibs/disp.py?rev=1611016&r1=1611015&r2=1611016&view=diff
==============================================================================
--- qpid/trunk/qpid/tools/src/py/qpidtoollibs/disp.py (original)
+++ qpid/trunk/qpid/tools/src/py/qpidtoollibs/disp.py Wed Jul 16 14:09:41 2014
@@ -182,8 +182,8 @@ class Display:
print line
line = self.tablePrefix
for width in colWidth:
- for i in range (width):
- line = line + "="
+ line = line + "=" * width
+ line = line[:255]
print line
for row in rows:
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org