[rhmessaging-commits] rhmessaging commits: r3719 - in mgmt/trunk/cumin/python/cumin: grid and 1 other directories.

rhmessaging-commits at lists.jboss.org rhmessaging-commits at lists.jboss.org
Thu Nov 19 16:27:02 EST 2009


Author: eallen
Date: 2009-11-19 16:27:02 -0500 (Thu, 19 Nov 2009)
New Revision: 3719

Modified:
   mgmt/trunk/cumin/python/cumin/grid/main.py
   mgmt/trunk/cumin/python/cumin/grid/pool.py
   mgmt/trunk/cumin/python/cumin/messaging/main.py
   mgmt/trunk/cumin/python/cumin/widgets.py
Log:
More general implementation of sticky views.

Modified: mgmt/trunk/cumin/python/cumin/grid/main.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/grid/main.py	2009-11-19 17:49:57 UTC (rev 3718)
+++ mgmt/trunk/cumin/python/cumin/grid/main.py	2009-11-19 21:27:02 UTC (rev 3719)
@@ -75,6 +75,7 @@
 
         self.pool = PoolFrame(app, "pool")
         self.add_mode(self.pool)
+        self.sticky = self.pool.view
 
     def render_title(self, session):
         return "Grid"

Modified: mgmt/trunk/cumin/python/cumin/grid/pool.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/grid/pool.py	2009-11-19 17:49:57 UTC (rev 3718)
+++ mgmt/trunk/cumin/python/cumin/grid/pool.py	2009-11-19 21:27:02 UTC (rev 3719)
@@ -139,9 +139,6 @@
 
     def do_process(self, session):
         self.limits.limit_count.process(session)
-        sticky = self.pool.get(session)
-        session.client_session.attributes["sticky_pool"] = sticky
-
         super(PoolView, self).do_process(session)
 
 class PoolSubmissionSet(SubmissionSet):

Modified: mgmt/trunk/cumin/python/cumin/messaging/main.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/messaging/main.py	2009-11-19 17:49:57 UTC (rev 3718)
+++ mgmt/trunk/cumin/python/cumin/messaging/main.py	2009-11-19 21:27:02 UTC (rev 3719)
@@ -85,6 +85,7 @@
 
         self.broker = BrokerFrame(app, "broker")
         self.add_mode(self.broker)
+        self.sticky = self.broker.view
 
         self.broker_group = BrokerGroupFrame(app, "group")
         self.add_mode(self.broker_group)

Modified: mgmt/trunk/cumin/python/cumin/widgets.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/widgets.py	2009-11-19 17:49:57 UTC (rev 3718)
+++ mgmt/trunk/cumin/python/cumin/widgets.py	2009-11-19 21:27:02 UTC (rev 3719)
@@ -73,10 +73,10 @@
         return lsess.marshal()
 
     def render_tab_href(self, session, tab):
-        if tab.name == "grid":
+        if tab.sticky:
             try:
-                pool = session.client_session.attributes["sticky_pool"]
-                return self.page.main.grid.pool.get_href(session, pool)
+                obj = session.client_session.attributes["sticky_%s" % tab.name]
+                return tab.sticky.frame.get_href(session, obj)
             except KeyError:
                 pass
 
@@ -135,6 +135,7 @@
     def __init__(self, app, name):
         super(CuminFrame, self).__init__(app, name)
 
+        self.sticky = None
         self.object = None
         self.__view = None
         self.__add = None
@@ -227,6 +228,17 @@
 
         return html
 
+    def do_process(self, session):
+        for frame in self.ancestors:
+            try:
+                if frame.sticky == self:
+                    session.client_session.attributes["sticky_%s" % \
+                            frame.name] = self.frame.object.get(session)
+            except AttributeError:
+                pass
+
+        super(CuminView, self).do_process(session)
+
 class BackgroundInclude(Widget):
     def __init__(self, app, name):
         super(BackgroundInclude, self).__init__(app, name)



More information about the rhmessaging-commits mailing list