[rhmessaging-commits] rhmessaging commits: r1117 - in mgmt: misc and 1 other directories.

rhmessaging-commits at lists.jboss.org rhmessaging-commits at lists.jboss.org
Fri Oct 19 11:16:20 EDT 2007


Author: justi9
Date: 2007-10-19 11:16:19 -0400 (Fri, 19 Oct 2007)
New Revision: 1117

Added:
   mgmt/misc/boneyard.py
   mgmt/misc/boneyard.strings
Modified:
   mgmt/cumin/python/cumin/cluster.py
   mgmt/cumin/python/cumin/cluster.strings
   mgmt/cumin/python/cumin/page.py
   mgmt/cumin/python/cumin/server.py
   mgmt/cumin/python/cumin/server.strings
   mgmt/cumin/python/cumin/servergroup.py
   mgmt/notes/Todo
Log:
Moves out-of-service code to boneyard.py.  Uses the updated server set
in the cluster and group views.



Modified: mgmt/cumin/python/cumin/cluster.py
===================================================================
--- mgmt/cumin/python/cumin/cluster.py	2007-10-19 14:40:44 UTC (rev 1116)
+++ mgmt/cumin/python/cumin/cluster.py	2007-10-19 15:16:19 UTC (rev 1117)
@@ -39,19 +39,6 @@
     def render_server_status(self, session, server):
         return random() < 0.25 and "red" or "green"
 
-class ClusterServerSet(ItemSet):
-    def render_title(self, session, cluster):
-        return "Servers (%i)" % len(cluster.server_items())
-
-    def get_items(self, session, cluster):
-        return sorted_by(cluster.server_items())
-
-    def render_item_link(self, session, server):
-        branch = session.branch()
-        self.page().show_server(branch, server).show_view(branch)
-
-        return mlink(branch.marshal(), "Server", server.name)
-
 class ClusterFrame(CuminFrame):
     def __init__(self, app, name):
         super(ClusterFrame, self).__init__(app, name)
@@ -90,9 +77,9 @@
         self.tabs = TabSet(app, "tabs")
         self.add_child(self.tabs)
 
-        self.tabs.add_tab(self.ServerTab(app, "servers"))
-        self.tabs.add_tab(self.VirtualHostTab(app, "vhosts"))
-        self.tabs.add_tab(self.StatsTab(app, "stats"))
+        self.tabs.add_tab(self.ClusterServerTab(app, "servers"))
+        self.tabs.add_tab(self.ClusterVirtualHostTab(app, "vhosts"))
+        self.tabs.add_tab(self.ClusterStatsTab(app, "stats"))
 
     def render_title(self, session, cluster):
         return "Cluster '%s'" % cluster.name
@@ -100,65 +87,20 @@
     def render_name(self, session, cluster):
         return cluster.name
 
-    class ServerTab(ClusterServerSet):
-        pass
+    class ClusterServerTab(ServerSet):
+        def render_title(self, session, cluster):
+            return "Servers (%i)" % len(cluster.server_items())
 
-    class VirtualHostTab(VirtualHostSet):
+        def get_items(self, session, cluster):
+            return sorted_by(cluster.server_items())
+
+    class ClusterVirtualHostTab(VirtualHostSet):
         def render_title(self, session, cluster):
             return "Functional Hosts (%i)" % len(cluster.virtual_host_items())
 
         def get_items(self, session, cluster):
             return sorted_by(cluster.virtual_host_items())
 
-    class StatsTab(Widget):
+    class ClusterStatsTab(Widget):
         def render_title(self, session, cluster):
             return "Statistics"
-
-class ClusterBrowser(ItemSet):
-    def __init__(self, app, name):
-        super(ClusterBrowser, self).__init__(app, name)
-
-        self.param = ClusterParameter(app, "cluster")
-        self.add_parameter(self.param)
-
-        self.view = ClusterView(app, "view")
-        self.add_child(self.view)
-
-    def get_items(self, session, model):
-        return sorted_by(model.get_clusters())
-
-    def render_item_link(self, session, cluster):
-        class_ = self.param.get(session) is cluster and "selected"
-        
-        branch = session.branch()
-        self.param.set(branch, cluster)
-        return link(branch.marshal(), cluster.name, class_)
-
-    def render_add_cluster_href(self, session, cluster):
-        branch = session.branch()
-        #self.page().show_cluster_add(branch)
-        return branch.marshal()
-
-    def render_edit_cluster_href(self, session, cluster):
-        if cluster:
-            branch = session.branch()
-            #self.page().show_cluster_edit(branch, cluster)
-            return branch.marshal()
-
-    def render_remove_cluster_href(self, session, cluster):
-        if cluster:
-            branch = session.branch()
-            return branch.marshal()
-
-    def render_view(self, session, model):
-        object = self.param.get(session)
-
-        if object:
-            html = self.view.render(session, object)
-        else:
-            html = self.render_none(session, model)
-
-        return html
-
-    def render_none(self, session, model):
-        return none()

Modified: mgmt/cumin/python/cumin/cluster.strings
===================================================================
--- mgmt/cumin/python/cumin/cluster.strings	2007-10-19 14:40:44 UTC (rev 1116)
+++ mgmt/cumin/python/cumin/cluster.strings	2007-10-19 15:16:19 UTC (rev 1117)
@@ -55,29 +55,31 @@
 
 {tabs}
 
-[ServerTab.html]
+[ClusterServerTab.html]
 <ul class="actions">
-  <li><a href="">Add Server</a></li>
+  <li><a href="{add_server_href}">Add Server</a></li>
 </ul>
 
 <table class="mobjects">
   <tr>
     <th>Server</th>
+    <th>Profile</th>
     <th>Status</th>
-    <th></th>
+    <th>Load</th>
   </tr>
 
   {items}
 </table>
 
-[ServerTab.item_html]
+[ClusterServerTab.item_html]
 <tr>
   <td>{item_link}</td>
-  <td>0 errors, 0 warnings</td>
-  <td><a class="action" href="">Remove</a></td>
+  <td>{item_profile_link}</td>
+  <td>{item_status}</td>
+  <td>{item_load}</td>
 </tr>
 
-[VirtualHostTab.html]
+[ClusterVirtualHostTab.html]
 <ul class="actions">
   <li><a href="">Add Functional Host</a></li>
 </ul>
@@ -92,56 +94,9 @@
   {items}
 </table>
 
-[VirtualHostTab.item_html]
+[ClusterVirtualHostTab.item_html]
 <tr>
   <td>{item_link}</td>
   <td>10 queues, 5 exchanges</td>
   <td><a class="action" href="">Remove</a></td>
 </tr>
-
-[ConfigTab.html]
-<ul class="actions">
-  <li><a href="">Edit This Configuration</a></li>
-  <li><a href="">Apply to All Cluster Servers</a></li>
-</ul>
-
-<pre class="code">
-server "$SERVER" {
-    include "/usr/local/cluster/common.conf";
-
-    vhost "default" {
-        store: bdb;
-        transaction: journal;
-    }
-
-    vhost "devel" {
-        max-queue-depth: 10000;
-        store: memory;
-        transaction: memory;
-    }
-
-    vhost "test" {
-    }
-}
-</pre>
-
-[ClusterBrowser.html]
-<table class="browser">
-  <tr>
-    <td class="nav">
-      <ul class="slist">{items}</ul>
-
-      <ul class="actions">
-        <li><a href="{add_cluster_href}">Add Cluster</a></li>
-        <li><a href="{edit_cluster_href}">Edit Cluster</a></li>
-        <li><a href="{remove_cluster_href}">Remove Cluster</a></li>
-      </ul>
-    </td>
-    <td class="view">
-      {view}
-    </td>
-  </tr>
-</div>
-
-[ClusterBrowser.item_html]
-<li>{item_link}</li>

Modified: mgmt/cumin/python/cumin/page.py
===================================================================
--- mgmt/cumin/python/cumin/page.py	2007-10-19 14:40:44 UTC (rev 1116)
+++ mgmt/cumin/python/cumin/page.py	2007-10-19 15:16:19 UTC (rev 1117)
@@ -2,8 +2,9 @@
 from wooly.widgets import *
 from wooly.resources import *
 
+from server import *
+from servergroup import *
 from serverprofile import *
-from server import *
 from cluster import *
 from widgets import *
 from util import *

Modified: mgmt/cumin/python/cumin/server.py
===================================================================
--- mgmt/cumin/python/cumin/server.py	2007-10-19 14:40:44 UTC (rev 1116)
+++ mgmt/cumin/python/cumin/server.py	2007-10-19 15:16:19 UTC (rev 1117)
@@ -1,7 +1,6 @@
 from wooly import *
 from wooly.widgets import *
 
-from servergroup import *
 from configproperty import *
 from virtualhost import *
 from widgets import *
@@ -264,98 +263,6 @@
         def render_title(self, session, server):
             return "Log Messages"
 
-class OldServerBrowser(Widget):
-    def __init__(self, app, name):
-        super(OldServerBrowser, self).__init__(app, name)
-        
-        self.param = ServerGroupParameter(app, "group")
-        self.add_parameter(self.param)
-
-        self.groups = self.BrowserGroups(app, "groups")
-        self.add_child(self.groups)
-
-        self.servers = self.BrowserServers(app, "servers")
-        self.add_child(self.servers)
-
-    def get_object(self, session, object):
-        return self.param.get(session)
-
-    def set_object(self, session, group):
-        return self.param.set(session, group)
-
-    def render_title(self, session, group):
-        return "Servers (%i)" % len(self.app.model.get_servers())
-
-    def render_all_servers_link(self, session, group):
-        class_ = group is None and "selected"
-
-        branch = session.branch()
-        self.set_object(branch, None)
-        return link(branch.marshal(), "All Servers", class_)
-
-    def render_add_group_href(self, session, group):
-        branch = session.branch()
-        self.page().show_server_group_add(branch)
-        return branch.marshal()
-
-    def render_edit_group_href(self, session, group):
-        if group:
-            branch = session.branch()
-            self.page().show_server_group_edit(branch, group)
-            return branch.marshal()
-
-    def render_remove_group_href(self, session, group):
-        if group:
-            branch = session.branch()
-            return branch.marshal()
-
-    def render_groups(self, session, group):
-        return self.groups.render(session, self.app.model)
-
-    class BrowserGroups(Widget):
-        def __init__(self, app, name):
-            super(ServerBrowser.BrowserGroups, self).__init__(app, name)
-
-            self.type_tmpl = Template(self, "type_html")
-            self.group_tmpl = Template(self, "group_html")
-
-        def get_items(self, session, model):
-            return sorted_by(model.get_server_group_types())
-
-        def render_types(self, session, model):
-            writer = Writer()
-
-            for type in self.get_items(session, model):
-                self.type_tmpl.render(session, type, writer)
-
-            return writer.to_string()
-
-        def render_type_name(self, session, type):
-            return type.name
-
-        def render_groups(self, session, type):
-            writer = Writer()
-            
-            for group in sorted_by(type.server_group_items()):
-                self.group_tmpl.render(session, group, writer)
-
-            return writer.to_string()
-
-        def render_group_link(self, session, group):
-            branch = session.branch()
-            self.parent.param.set(branch, group)
-
-            selected = self.parent.param.get(session) is group
-            
-            return mlink(branch.marshal(), "ServerGroup", group.name, selected)
-
-    class BrowserServers(ServerSet):
-        def get_items(self, session, group):
-            if group:
-                return sorted_by(group.server_items())
-            else:
-                return sorted_by(self.app.model.get_servers())
-
 class ServerBrowser(Widget):
     def __init__(self, app, name):
         super(ServerBrowser, self).__init__(app, name)
@@ -384,6 +291,7 @@
             cluster = self.parent.cluster.get(session)
 
             for server in model.get_servers():
+                # XXX simplify with a loop
                 if group and group not in server.server_group_items():
                     servers.remove(server)
 

Modified: mgmt/cumin/python/cumin/server.strings
===================================================================
--- mgmt/cumin/python/cumin/server.strings	2007-10-19 14:40:44 UTC (rev 1116)
+++ mgmt/cumin/python/cumin/server.strings	2007-10-19 15:16:19 UTC (rev 1117)
@@ -116,68 +116,6 @@
   {tabs}
 </div>
 
-[ServerBrowser.css]
-.ServerBrowser.groups {
-  float: left;
-  width: 20%;
-}
-
-.ServerBrowser.groups ul {
-  margin: 0 0 1em 0;
-}
-
-.ServerBrowser.groups ul.groups a:before {
-  content: url(resource?name=radio-button.png);
-  vertical-align: -10%;
-  margin: 0 0.5em 0 0;
-}
-
-.ServerBrowser.groups ul.groups a.selected:before {
-  content: url(resource?name=radio-button-checked.png);
-}
-
-.ServerBrowser.groups h2 {
-  color: #564979;
-  font-size: 0.9em;
-  border-bottom: 1px dotted #ddd;
-  width: 80%;
-  margin: 0 0 0.5em 0;
-}
-
-.ServerBrowser.servers {
-  width: 80%;
-}
-
-[OldServerBrowser.html]
-<div class="ServerBrowser groups">
-  <ul class="groups"><li>{all_servers_link}</li></ul>
-
-  {groups}
-
-  <ul class="actions">
-    <li><a href="{add_group_href}">Add Group</a></li>
-    <li><a href="{edit_group_href}">Edit Group</a></li>
-    <li><a href="{remove_group_href}">Remove Group</a></li>
-  </ul>
-</div>
-<div class="ServerBrowser servers">
-  <ul class="actions">
-    <li><a href="">Register New Servers</a></li>
-  </ul>
-
-  {servers}
-</div>
-
-[BrowserGroups.html]
-{types}
-
-[BrowserGroups.type_html]
-<h2>{type_name}</h2>
-<ul class="groups">{groups}</ul>
-
-[BrowserGroups.group_html]
-<li>{group_link}</li>
-
 [ServerBrowser.html]
 <table class="browser">
   <tr>

Modified: mgmt/cumin/python/cumin/servergroup.py
===================================================================
--- mgmt/cumin/python/cumin/servergroup.py	2007-10-19 14:40:44 UTC (rev 1116)
+++ mgmt/cumin/python/cumin/servergroup.py	2007-10-19 15:16:19 UTC (rev 1117)
@@ -1,6 +1,7 @@
 from wooly import *
 from wooly.widgets import *
 
+from server import ServerSet
 from model import *
 from widgets import *
 from parameters import *
@@ -68,7 +69,10 @@
         self.page().show_server_group(branch, group).show_edit(branch)
         return branch.marshal()
 
-    class GroupServerTab(Widget):
+    class GroupServerTab(ServerSet):
+        def get_items(self, session, group):
+            return sorted_by(group.server_items())
+        
         def render_title(self, session, group):
             return "Servers (%i)" % len(group.server_items())
 

Added: mgmt/misc/boneyard.py
===================================================================
--- mgmt/misc/boneyard.py	                        (rev 0)
+++ mgmt/misc/boneyard.py	2007-10-19 15:16:19 UTC (rev 1117)
@@ -0,0 +1,140 @@
+class ServerBrowser(Widget):
+    def __init__(self, app, name):
+        super(ServerBrowser, self).__init__(app, name)
+        
+        self.param = ServerGroupParameter(app, "group")
+        self.add_parameter(self.param)
+
+        self.groups = self.BrowserGroups(app, "groups")
+        self.add_child(self.groups)
+
+        self.servers = self.BrowserServers(app, "servers")
+        self.add_child(self.servers)
+
+    def get_object(self, session, object):
+        return self.param.get(session)
+
+    def set_object(self, session, group):
+        return self.param.set(session, group)
+
+    def render_title(self, session, group):
+        return "Servers (%i)" % len(self.app.model.get_servers())
+
+    def render_all_servers_link(self, session, group):
+        class_ = group is None and "selected"
+
+        branch = session.branch()
+        self.set_object(branch, None)
+        return link(branch.marshal(), "All Servers", class_)
+
+    def render_add_group_href(self, session, group):
+        branch = session.branch()
+        self.page().show_server_group_add(branch)
+        return branch.marshal()
+
+    def render_edit_group_href(self, session, group):
+        if group:
+            branch = session.branch()
+            self.page().show_server_group_edit(branch, group)
+            return branch.marshal()
+
+    def render_remove_group_href(self, session, group):
+        if group:
+            branch = session.branch()
+            return branch.marshal()
+
+    def render_groups(self, session, group):
+        return self.groups.render(session, self.app.model)
+
+    class BrowserGroups(Widget):
+        def __init__(self, app, name):
+            super(ServerBrowser.BrowserGroups, self).__init__(app, name)
+
+            self.type_tmpl = Template(self, "type_html")
+            self.group_tmpl = Template(self, "group_html")
+
+        def get_items(self, session, model):
+            return sorted_by(model.get_server_group_types())
+
+        def render_types(self, session, model):
+            writer = Writer()
+
+            for type in self.get_items(session, model):
+                self.type_tmpl.render(session, type, writer)
+
+            return writer.to_string()
+
+        def render_type_name(self, session, type):
+            return type.name
+
+        def render_groups(self, session, type):
+            writer = Writer()
+            
+            for group in sorted_by(type.server_group_items()):
+                self.group_tmpl.render(session, group, writer)
+
+            return writer.to_string()
+
+        def render_group_link(self, session, group):
+            branch = session.branch()
+            self.parent.param.set(branch, group)
+
+            selected = self.parent.param.get(session) is group
+            
+            return mlink(branch.marshal(), "ServerGroup", group.name, selected)
+
+    class BrowserServers(ServerSet):
+        def get_items(self, session, group):
+            if group:
+                return sorted_by(group.server_items())
+            else:
+                return sorted_by(self.app.model.get_servers())
+
+class ClusterBrowser(ItemSet):
+    def __init__(self, app, name):
+        super(ClusterBrowser, self).__init__(app, name)
+
+        self.param = ClusterParameter(app, "cluster")
+        self.add_parameter(self.param)
+
+        self.view = ClusterView(app, "view")
+        self.add_child(self.view)
+
+    def get_items(self, session, model):
+        return sorted_by(model.get_clusters())
+
+    def render_item_link(self, session, cluster):
+        class_ = self.param.get(session) is cluster and "selected"
+        
+        branch = session.branch()
+        self.param.set(branch, cluster)
+        return link(branch.marshal(), cluster.name, class_)
+
+    def render_add_cluster_href(self, session, cluster):
+        branch = session.branch()
+        #self.page().show_cluster_add(branch)
+        return branch.marshal()
+
+    def render_edit_cluster_href(self, session, cluster):
+        if cluster:
+            branch = session.branch()
+            #self.page().show_cluster_edit(branch, cluster)
+            return branch.marshal()
+
+    def render_remove_cluster_href(self, session, cluster):
+        if cluster:
+            branch = session.branch()
+            return branch.marshal()
+
+    def render_view(self, session, model):
+        object = self.param.get(session)
+
+        if object:
+            html = self.view.render(session, object)
+        else:
+            html = self.render_none(session, model)
+
+        return html
+
+    def render_none(self, session, model):
+        return none()

Added: mgmt/misc/boneyard.strings
===================================================================
--- mgmt/misc/boneyard.strings	                        (rev 0)
+++ mgmt/misc/boneyard.strings	2007-10-19 15:16:19 UTC (rev 1117)
@@ -0,0 +1,82 @@
+[ServerBrowser.css]
+.ServerBrowser.groups {
+  float: left;
+  width: 20%;
+}
+
+.ServerBrowser.groups ul {
+  margin: 0 0 1em 0;
+}
+
+.ServerBrowser.groups ul.groups a:before {
+  content: url(resource?name=radio-button.png);
+  vertical-align: -10%;
+  margin: 0 0.5em 0 0;
+}
+
+.ServerBrowser.groups ul.groups a.selected:before {
+  content: url(resource?name=radio-button-checked.png);
+}
+
+.ServerBrowser.groups h2 {
+  color: #564979;
+  font-size: 0.9em;
+  border-bottom: 1px dotted #ddd;
+  width: 80%;
+  margin: 0 0 0.5em 0;
+}
+
+.ServerBrowser.servers {
+  width: 80%;
+}
+
+[ServerBrowser.html]
+<div class="ServerBrowser groups">
+  <ul class="groups"><li>{all_servers_link}</li></ul>
+
+  {groups}
+
+  <ul class="actions">
+    <li><a href="{add_group_href}">Add Group</a></li>
+    <li><a href="{edit_group_href}">Edit Group</a></li>
+    <li><a href="{remove_group_href}">Remove Group</a></li>
+  </ul>
+</div>
+<div class="ServerBrowser servers">
+  <ul class="actions">
+    <li><a href="">Register New Servers</a></li>
+  </ul>
+
+  {servers}
+</div>
+
+[BrowserGroups.html]
+{types}
+
+[BrowserGroups.type_html]
+<h2>{type_name}</h2>
+<ul class="groups">{groups}</ul>
+
+[BrowserGroups.group_html]
+<li>{group_link}</li>
+
+[ClusterBrowser.html]
+<table class="browser">
+  <tr>
+    <td class="nav">
+      <ul class="slist">{items}</ul>
+
+      <ul class="actions">
+        <li><a href="{add_cluster_href}">Add Cluster</a></li>
+        <li><a href="{edit_cluster_href}">Edit Cluster</a></li>
+        <li><a href="{remove_cluster_href}">Remove Cluster</a></li>
+      </ul>
+    </td>
+    <td class="view">
+      {view}
+    </td>
+  </tr>
+</div>
+
+[ClusterBrowser.item_html]
+<li>{item_link}</li>

Modified: mgmt/notes/Todo
===================================================================
--- mgmt/notes/Todo	2007-10-19 14:40:44 UTC (rev 1116)
+++ mgmt/notes/Todo	2007-10-19 15:16:19 UTC (rev 1117)
@@ -101,3 +101,5 @@
  * Make the groups browser use common code with the cluster browser
 
  * Rename ServerGroupType to ServerGroupCategory
+
+ * Add a frame() accessor to Widget
\ No newline at end of file




More information about the rhmessaging-commits mailing list