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