[rhmessaging-commits] rhmessaging commits: r1109 - mgmt/cumin/python/cumin.
rhmessaging-commits at lists.jboss.org
rhmessaging-commits at lists.jboss.org
Wed Oct 17 15:33:06 EDT 2007
Author: justi9
Date: 2007-10-17 15:33:06 -0400 (Wed, 17 Oct 2007)
New Revision: 1109
Modified:
mgmt/cumin/python/cumin/page.py
mgmt/cumin/python/cumin/servergroup.py
mgmt/cumin/python/cumin/servergroup.strings
Log:
Adds a server group frame and connects it to the proposed tab set.
Modified: mgmt/cumin/python/cumin/page.py
===================================================================
--- mgmt/cumin/python/cumin/page.py 2007-10-17 18:48:17 UTC (rev 1108)
+++ mgmt/cumin/python/cumin/page.py 2007-10-17 19:33:06 UTC (rev 1109)
@@ -31,8 +31,8 @@
self.server = ServerFrame(app, "server")
self.add_mode(self.server)
- self.cluster = ClusterFrame(app, "cluster")
- self.add_mode(self.cluster)
+ self.group = ServerGroupFrame(app, "group")
+ self.add_mode(self.group)
self.group_add = ServerGroupAdd(app, "groupadd")
self.add_mode(self.group_add)
@@ -43,6 +43,9 @@
self.profile = ServerProfileFrame(app, "profile")
self.add_mode(self.profile)
+ self.cluster = ClusterFrame(app, "cluster")
+ self.add_mode(self.cluster)
+
def save_session(self, session):
if self.app.debug:
self.app.debug.sessions.append(session)
@@ -77,10 +80,9 @@
return self.page().set_current_frame(session, frame)
def show_server_group(self, session, group):
- mode = self.show_view(session)
- mode.show_server_group(session, group)
- self.page().set_current_frame(session, self)
- return mode
+ frame = self.show_mode(session, self.group)
+ frame.set_object(session, group)
+ return self.page().set_current_frame(session, frame)
def show_server_group_add(self, session):
frame = self.show_mode(session, self.group_add)
@@ -126,6 +128,11 @@
frame = frame.show_exchange(session, exchange)
return self.set_current_frame(session, frame)
+ def server_group_href(self, session, group):
+ branch = session.branch()
+ self.show_server_group(branch, group).show_view(branch)
+ return branch.marshal()
+
def render_class(self, session, object):
return self.modal.get(session) and "modal"
@@ -173,6 +180,7 @@
self.add_tab(self.proposed)
#self.proposed.add_tab(self.PServerTab(app, "servers"))
+ self.proposed.add_tab(self.ServerGroupTab(app, "groups"))
self.proposed.add_tab(self.ProfileTab(app, "profiles"))
self.proposed.add_tab(self.PClusterTab(app, "clusters"))
@@ -200,10 +208,6 @@
def render_title(self, session, model):
return "Clusters (%i)" % len(model.get_clusters())
- class PClusterTab(ClusterSet):
- def render_title(self, session, model):
- return "Clusters (%i)" % len(model.get_clusters())
-
class ProfileTab(Widget):
def __init__(self, app, name):
super(MainView.ProfileTab, self).__init__(app, name)
@@ -213,3 +217,12 @@
def render_title(self, session, model):
return "Server Profiles (%i)" % len(model.get_server_profiles())
+
+ class ServerGroupTab(ServerGroupSet):
+ def render_title(self, session, model):
+ return "Server Groups (%i)" % len(model.get_server_groups())
+
+ class PClusterTab(ClusterSet):
+ def render_title(self, session, model):
+ return "Clusters (%i)" % len(model.get_clusters())
+
Modified: mgmt/cumin/python/cumin/servergroup.py
===================================================================
--- mgmt/cumin/python/cumin/servergroup.py 2007-10-17 18:48:17 UTC (rev 1108)
+++ mgmt/cumin/python/cumin/servergroup.py 2007-10-17 19:33:06 UTC (rev 1109)
@@ -8,15 +8,65 @@
strings = StringCatalog(__file__)
class ServerGroupSet(ItemSet):
- def render_item_content(self, session, group):
- branch = session.branch()
- self.page().show_server_group(branch, group).show_view(branch)
+ def get_items(self, session, model):
+ return sorted_by(model.get_server_groups())
+
+ def render_item_link(self, session, group):
+ href = self.page().server_group_href(session, group)
+ return mlink(href, "ServerGroup", group.name)
- return mlink(branch.marshal(), "ServerGroup", group.name)
+ def render_item_config(self, session, group):
+ count = len(group.server_items())
+ return "%i server%s" % (count, count == 1 and "" or "s")
+ def render_item_status(self, session, group):
+ return "0 errors, 0 warnings"
+
def render_none(self, session, group):
return none()
+class ServerGroupFrame(CuminFrame):
+ def __init__(self, app, name):
+ super(ServerGroupFrame, self).__init__(app, name)
+
+ self.param = ServerGroupParameter(app, "id")
+ self.add_parameter(self.param)
+ self.set_object_parameter(self.param)
+
+ self.view = ServerGroupView(app, "view")
+ self.add_child(self.view)
+
+ self.edit = ServerGroupEdit(app, "edit")
+ self.add_child(self.edit)
+
+ def show_view(self, session):
+ return self.show_mode(session, self.view)
+
+ def render_title(self, session, group):
+ return "Server Group '%s'" % group.name
+
+ def render_href(self, session, group):
+ return self.page().server_group_href(session, group)
+
+class ServerGroupView(Widget):
+ def __init__(self, app, name):
+ super(ServerGroupView, self).__init__(app, name)
+
+ self.tabs = TabSet(app, "tabs")
+ self.add_child(self.tabs)
+
+ self.tabs.add_tab(self.GroupServerTab(app, "servers"))
+
+ def render_title(self, session, group):
+ return "Server Group '%s'" % group.name
+
+ def render_name(self, session, group):
+ return group.name
+
+ class GroupServerTab(Widget):
+ def render_title(self, session, group):
+ return "Servers (%i)" % len(group.server_items())
+
class ServerGroupForm(CuminForm):
def __init__(self, app, name):
super(ServerGroupForm, self).__init__(app, name)
Modified: mgmt/cumin/python/cumin/servergroup.strings
===================================================================
--- mgmt/cumin/python/cumin/servergroup.strings 2007-10-17 18:48:17 UTC (rev 1108)
+++ mgmt/cumin/python/cumin/servergroup.strings 2007-10-17 19:33:06 UTC (rev 1109)
@@ -1,3 +1,40 @@
+[ServerGroupSet.html]
+<table class="mobjects">
+ <tr>
+ <th>Server</th>
+ <th>Configuration</th>
+ <th>Status</th>
+ </tr>
+
+ {items}
+</table>
+
+[ServerGroupSet.item_html]
+<tr>
+ <td>{item_link}</td>
+ <td>{item_config}</td>
+ <td>{item_status}</td>
+</tr>
+
+[ServerGroupView.html]
+<div class="mstatus green" id="{id}">
+ <h2>Server Group Status</h2>
+
+ <div>0 errors, 0 warnings</div>
+</div>
+
+<h1>{title}</h1>
+
+<dl class="properties">
+ <dt>Name</dt><dd>{name}</dd>
+</dl>
+
+<ul class="actions">
+ <li><a href="">Edit This Server Group</a></li>
+</ul>
+
+{tabs}
+
[ServerGroupForm.html]
<form id="{id}" class="ServerGroupForm mform" method="post" action="?">
<div class="head">
More information about the rhmessaging-commits
mailing list