rhmessaging commits: r1158 - in mgmt: notes and 1 other directory.
by rhmessaging-commits@lists.jboss.org
Author: justi9
Date: 2007-10-24 12:49:23 -0400 (Wed, 24 Oct 2007)
New Revision: 1158
Modified:
mgmt/cumin/python/cumin/broker.py
mgmt/cumin/python/cumin/broker.strings
mgmt/cumin/python/cumin/brokercluster.py
mgmt/cumin/python/cumin/brokerprofile.py
mgmt/cumin/python/cumin/exchange.py
mgmt/cumin/python/cumin/queue.py
mgmt/cumin/python/cumin/virtualhost.py
mgmt/cumin/python/cumin/widgets.py
mgmt/notes/Todo
Log:
Removes duplicate show_view methods.
Modified: mgmt/cumin/python/cumin/broker.py
===================================================================
--- mgmt/cumin/python/cumin/broker.py 2007-10-24 16:10:02 UTC (rev 1157)
+++ mgmt/cumin/python/cumin/broker.py 2007-10-24 16:49:23 UTC (rev 1158)
@@ -20,7 +20,6 @@
def render_item_link(self, session, broker):
branch = session.branch()
self.page().show_broker(branch, broker).show_view(branch)
-
return mlink(branch.marshal(), "Broker", broker.name)
def render_item_group_link(self, session, broker):
@@ -29,7 +28,6 @@
if group:
branch = session.branch()
self.page().show_broker_group(branch, group).show_view(branch)
-
return mlink(branch.marshal(), "BrokerGroup", group.name)
else:
return none()
@@ -40,7 +38,6 @@
if profile:
branch = session.branch()
self.page().show_broker_profile(branch, profile).show_view(branch)
-
return mlink(branch.marshal(), "BrokerProfile", profile.name)
else:
return none()
@@ -51,7 +48,6 @@
if cluster:
branch = session.branch()
self.page().show_broker_cluster(branch, cluster).show_view(branch)
-
return mlink(branch.marshal(), "Cluster", cluster.name)
else:
return none()
@@ -109,6 +105,7 @@
self.view = BrokerView(app, "view")
self.add_mode(self.view)
+ self.set_view_mode(self.view)
self.vhost = VirtualHostFrame(app, "vhost")
self.add_mode(self.vhost)
@@ -116,9 +113,6 @@
self.prop = BrokerConfigPropertyForm(app, "prop")
self.add_mode(self.prop)
- def show_view(self, session):
- return self.show_mode(session, self.view)
-
def show_virtual_host(self, session, vhost):
self.vhost.set_object(session, vhost)
return self.show_mode(session, self.vhost)
@@ -240,11 +234,9 @@
if cluster:
branch = session.branch()
self.page().show_broker_cluster(branch, cluster).show_view(branch)
- html = mlink(branch.marshal(), "Cluster", cluster.name)
+ return mlink(branch.marshal(), "Cluster", cluster.name)
else:
- html = none()
-
- return html
+ return none()
def render_profile_link(self, session, broker):
profile = broker.get_broker_profile()
@@ -252,12 +244,10 @@
if profile:
branch = session.branch()
self.page().show_broker_profile(branch, profile).show_view(branch)
- html = mlink(branch.marshal(), "BrokerProfile", profile.name)
+ return mlink(branch.marshal(), "BrokerProfile", profile.name)
else:
- html = none()
+ return none()
- return html
-
def render_version(self, session, broker):
return "1.0"
Modified: mgmt/cumin/python/cumin/broker.strings
===================================================================
--- mgmt/cumin/python/cumin/broker.strings 2007-10-24 16:10:02 UTC (rev 1157)
+++ mgmt/cumin/python/cumin/broker.strings 2007-10-24 16:49:23 UTC (rev 1158)
@@ -149,9 +149,9 @@
<dl class="properties">
<dt>Name</dt><dd>{name}</dd>
- <dt>Broker Cluster</dt><dd>{cluster_link}</dd>
- <dt>Broker Profile</dt><dd>{profile_link}</dd>
- <dt>Software Version</dt><dd>{version}</dd>
+ <dt>Cluster</dt><dd>{cluster_link}</dd>
+ <dt>Profile</dt><dd>{profile_link}</dd>
+ <dt>Version</dt><dd>{version}</dd>
</dl>
<ul class="actions">
Modified: mgmt/cumin/python/cumin/brokercluster.py
===================================================================
--- mgmt/cumin/python/cumin/brokercluster.py 2007-10-24 16:10:02 UTC (rev 1157)
+++ mgmt/cumin/python/cumin/brokercluster.py 2007-10-24 16:49:23 UTC (rev 1158)
@@ -25,7 +25,6 @@
def render_item_link(self, session, cluster):
branch = session.branch()
self.page().show_broker_cluster(branch, cluster).show_view(branch)
-
return mlink(branch.marshal(), "BrokerCluster", cluster.name)
def render_item_broker_lights(self, session, cluster):
@@ -49,6 +48,7 @@
self.view = BrokerClusterView(app, "view")
self.add_mode(self.view)
+ self.set_view_mode(self.view)
self.broker = BrokerFrame(app, "broker")
self.add_mode(self.broker)
@@ -56,9 +56,6 @@
self.vhost = VirtualHostFrame(app, "vhost")
self.add_mode(self.vhost)
- def show_view(self, session):
- return self.show_mode(session, self.view)
-
def show_broker(self, session, broker):
self.broker.set_object(session, broker)
return self.show_mode(session, self.broker)
Modified: mgmt/cumin/python/cumin/brokerprofile.py
===================================================================
--- mgmt/cumin/python/cumin/brokerprofile.py 2007-10-24 16:10:02 UTC (rev 1157)
+++ mgmt/cumin/python/cumin/brokerprofile.py 2007-10-24 16:49:23 UTC (rev 1158)
@@ -15,8 +15,7 @@
def render_item_link(self, session, profile):
branch = session.branch()
- frame = self.page().show_broker_profile(branch, profile)
- frame.show_view(branch)
+ self.page().show_broker_profile(branch, profile).show_view(branch)
return mlink(branch.marshal(), "BrokerProfile", profile.name)
class BrokerProfileFrame(CuminFrame):
@@ -29,10 +28,8 @@
self.view = BrokerProfileView(app, "view")
self.add_mode(self.view)
+ self.set_view_mode(self.view)
- def show_view(self, session):
- return self.show_mode(session, self.view)
-
def render_title(self, session, profile):
return "Broker Profile '%s'" % profile.name
Modified: mgmt/cumin/python/cumin/exchange.py
===================================================================
--- mgmt/cumin/python/cumin/exchange.py 2007-10-24 16:10:02 UTC (rev 1157)
+++ mgmt/cumin/python/cumin/exchange.py 2007-10-24 16:49:23 UTC (rev 1158)
@@ -41,7 +41,6 @@
def render_item_link(self, session, exchange):
branch = session.branch()
self.page().show_exchange(branch, exchange).show_view(branch)
-
return mlink(branch.marshal(), "Exchange", exchange.name)
def render_item_config(self, session, exchange):
@@ -73,10 +72,8 @@
self.view = ExchangeView(app, "view")
self.add_mode(self.view)
+ self.set_view_mode(self.view)
- def show_view(self, session):
- return self.show_mode(session, self.view)
-
def render_title(self, session, exchange):
return "Exchange '%s'" % exchange.name
Modified: mgmt/cumin/python/cumin/queue.py
===================================================================
--- mgmt/cumin/python/cumin/queue.py 2007-10-24 16:10:02 UTC (rev 1157)
+++ mgmt/cumin/python/cumin/queue.py 2007-10-24 16:49:23 UTC (rev 1158)
@@ -39,7 +39,6 @@
def render_item_link(self, session, queue):
branch = session.branch()
self.page().show_queue(branch, queue).show_view(branch)
-
return mlink(branch.marshal(), "Queue", queue.name)
def render_item_name(self, session, queue):
@@ -73,10 +72,8 @@
self.view = QueueView(app, "view")
self.add_mode(self.view)
+ self.set_view_mode(self.view)
- def show_view(self, session):
- return self.show_mode(session, self.view)
-
def render_title(self, session, queue):
return "Queue '%s'" % queue.name
Modified: mgmt/cumin/python/cumin/virtualhost.py
===================================================================
--- mgmt/cumin/python/cumin/virtualhost.py 2007-10-24 16:10:02 UTC (rev 1157)
+++ mgmt/cumin/python/cumin/virtualhost.py 2007-10-24 16:49:23 UTC (rev 1158)
@@ -20,7 +20,6 @@
def render_item_link(self, session, vhost):
branch = session.branch()
self.page().show_virtual_host(branch, vhost).show_view(branch)
-
return mlink(branch.marshal(), "VirtualHost", vhost.name)
class VirtualHostFrame(CuminFrame):
@@ -31,6 +30,10 @@
self.add_parameter(self.param)
self.set_object_parameter(self.param)
+ self.view = VirtualHostView(app, "view")
+ self.add_mode(self.view)
+ self.set_view_mode(self.view)
+
self.queue = QueueFrame(app, "queue")
self.add_mode(self.queue)
@@ -40,12 +43,6 @@
self.client = ClientFrame(app, "client")
self.add_mode(self.client)
- self.view = VirtualHostView(app, "view")
- self.add_mode(self.view)
-
- def show_view(self, session):
- return self.show_mode(session, self.view)
-
def show_queue(self, session, queue):
self.queue.set_object(session, queue)
return self.show_mode(session, self.queue)
@@ -84,7 +81,6 @@
if broker:
branch = session.branch()
self.page().show_broker(branch, broker).show_view(branch)
-
return mlink(branch.marshal(), "Broker", broker.name)
else:
return none()
@@ -95,7 +91,6 @@
if cluster:
branch = session.branch()
self.page().show_broker_cluster(branch, cluster).show_view(branch)
-
return mlink(branch.marshal(), "Cluster", cluster.name)
else:
return none()
Modified: mgmt/cumin/python/cumin/widgets.py
===================================================================
--- mgmt/cumin/python/cumin/widgets.py 2007-10-24 16:10:02 UTC (rev 1157)
+++ mgmt/cumin/python/cumin/widgets.py 2007-10-24 16:49:23 UTC (rev 1158)
@@ -35,13 +35,13 @@
self.__view_mode = mode
def show_view(self, session):
- self.show_mode(session, self.__view_mode)
+ return self.show_mode(session, self.__view_mode)
def set_edit_mode(self, mode):
self.__edit_mode = mode
def show_edit(self, session):
- self.show_mode(session, self.__edit_mode)
+ return self.show_mode(session, self.__edit_mode)
def do_process(self, session, object):
self.page().get_frames(session).append(self)
Modified: mgmt/notes/Todo
===================================================================
--- mgmt/notes/Todo 2007-10-24 16:10:02 UTC (rev 1157)
+++ mgmt/notes/Todo 2007-10-24 16:49:23 UTC (rev 1158)
@@ -96,8 +96,6 @@
* Add a sanity check traversal to the widget tree and to the
registered sets of widgets and parameters
- * Remove legacy show_view methods now that we have set_view_mode
-
* Add more bindings to the demo data
* Add producers to the default exchange
@@ -107,3 +105,5 @@
* exch: link bindings, producers stats to respective views
* model: get rid of the old *_count stat fields and use the new ones
+
+ * Add rates to stats views
18 years, 6 months
rhmessaging commits: r1157 - in mgmt: notes and 1 other directory.
by rhmessaging-commits@lists.jboss.org
Author: justi9
Date: 2007-10-24 12:10:02 -0400 (Wed, 24 Oct 2007)
New Revision: 1157
Added:
mgmt/cumin/python/cumin/brokercluster.py
mgmt/cumin/python/cumin/brokercluster.strings
Removed:
mgmt/cumin/python/cumin/cluster.py
mgmt/cumin/python/cumin/cluster.strings
Modified:
mgmt/cumin/python/cumin/broker.py
mgmt/cumin/python/cumin/broker.strings
mgmt/cumin/python/cumin/demo.py
mgmt/cumin/python/cumin/model.py
mgmt/cumin/python/cumin/page.py
mgmt/cumin/python/cumin/page.strings
mgmt/cumin/python/cumin/parameters.py
mgmt/cumin/python/cumin/virtualhost.py
mgmt/cumin/python/cumin/virtualhost.strings
mgmt/notes/Todo
Log:
Renames cluster to broker cluster in order to be more consistent and
to avoid any possible conflict in the future with clusters of other
things such as systems.
Modified: mgmt/cumin/python/cumin/broker.py
===================================================================
--- mgmt/cumin/python/cumin/broker.py 2007-10-24 15:38:06 UTC (rev 1156)
+++ mgmt/cumin/python/cumin/broker.py 2007-10-24 16:10:02 UTC (rev 1157)
@@ -46,11 +46,11 @@
return none()
def render_item_cluster_link(self, session, broker):
- cluster = broker.get_cluster()
+ cluster = broker.get_broker_cluster()
if cluster:
branch = session.branch()
- self.page().show_cluster(branch, cluster).show_view(branch)
+ self.page().show_broker_cluster(branch, cluster).show_view(branch)
return mlink(branch.marshal(), "Cluster", cluster.name)
else:
@@ -235,11 +235,11 @@
return broker.name
def render_cluster_link(self, session, broker):
- cluster = broker.get_cluster()
+ cluster = broker.get_broker_cluster()
if cluster:
branch = session.branch()
- self.page().show_cluster(branch, cluster).show_view(branch)
+ self.page().show_broker_cluster(branch, cluster).show_view(branch)
html = mlink(branch.marshal(), "Cluster", cluster.name)
else:
html = none()
@@ -317,7 +317,7 @@
self.profile = BrokerProfileParameter(app, "profile")
self.add_parameter(self.profile)
- self.cluster = ClusterParameter(app, "cluster")
+ self.cluster = BrokerClusterParameter(app, "cluster")
self.add_parameter(self.cluster)
self.brokers = self.BrowserBrokers(app, "brokers")
@@ -340,7 +340,7 @@
except ValueError:
pass
- if cluster and cluster is not broker.get_cluster():
+ if cluster and cluster is not broker.get_broker_cluster():
try:
brokers.remove(broker)
except ValueError:
@@ -373,7 +373,7 @@
return self._render_filter_link(session, profile, self.profile)
def render_cluster_filters(self, session, model):
- clusters = sorted_by(model.get_clusters())
+ clusters = sorted_by(model.get_broker_clusters())
return self._render_filters(session, clusters, self.cluster_tmpl)
def render_cluster_link(self, session, cluster):
Modified: mgmt/cumin/python/cumin/broker.strings
===================================================================
--- mgmt/cumin/python/cumin/broker.strings 2007-10-24 15:38:06 UTC (rev 1156)
+++ mgmt/cumin/python/cumin/broker.strings 2007-10-24 16:10:02 UTC (rev 1157)
@@ -149,7 +149,7 @@
<dl class="properties">
<dt>Name</dt><dd>{name}</dd>
- <dt>Cluster</dt><dd>{cluster_link}</dd>
+ <dt>Broker Cluster</dt><dd>{cluster_link}</dd>
<dt>Broker Profile</dt><dd>{profile_link}</dd>
<dt>Software Version</dt><dd>{version}</dd>
</dl>
Copied: mgmt/cumin/python/cumin/brokercluster.py (from rev 1155, mgmt/cumin/python/cumin/cluster.py)
===================================================================
--- mgmt/cumin/python/cumin/brokercluster.py (rev 0)
+++ mgmt/cumin/python/cumin/brokercluster.py 2007-10-24 16:10:02 UTC (rev 1157)
@@ -0,0 +1,106 @@
+from wooly import *
+from wooly.widgets import *
+from random import random
+
+from virtualhost import *
+from broker import *
+from widgets import *
+from parameters import *
+from util import *
+
+strings = StringCatalog(__file__)
+
+class BrokerClusterSet(ItemSet):
+ def __init__(self, app, name):
+ super(BrokerClusterSet, self).__init__(app, name)
+
+ self.broker_tmpl = Template(self, "broker_html")
+
+ def render_title(self, session, model):
+ return "Broker Clusters (%i)" % len(model.get_broker_clusters())
+
+ def get_items(self, session, model):
+ return sorted_by(model.get_broker_clusters())
+
+ def render_item_link(self, session, cluster):
+ branch = session.branch()
+ self.page().show_broker_cluster(branch, cluster).show_view(branch)
+
+ return mlink(branch.marshal(), "BrokerCluster", cluster.name)
+
+ def render_item_broker_lights(self, session, cluster):
+ writer = Writer()
+
+ for broker in sorted_by(cluster.broker_items()):
+ self.broker_tmpl.render(session, broker, writer)
+
+ return writer.to_string()
+
+ def render_broker_status(self, session, broker):
+ return random() < 0.25 and "red" or "green"
+
+class BrokerClusterFrame(CuminFrame):
+ def __init__(self, app, name):
+ super(BrokerClusterFrame, self).__init__(app, name)
+
+ self.param = BrokerClusterParameter(app, "id")
+ self.add_parameter(self.param)
+ self.set_object_parameter(self.param)
+
+ self.view = BrokerClusterView(app, "view")
+ self.add_mode(self.view)
+
+ self.broker = BrokerFrame(app, "broker")
+ self.add_mode(self.broker)
+
+ self.vhost = VirtualHostFrame(app, "vhost")
+ self.add_mode(self.vhost)
+
+ def show_view(self, session):
+ return self.show_mode(session, self.view)
+
+ def show_broker(self, session, broker):
+ self.broker.set_object(session, broker)
+ return self.show_mode(session, self.broker)
+
+ def show_virtual_host(self, session, vhost):
+ self.vhost.set_object(session, vhost)
+ return self.show_mode(session, self.vhost)
+
+ def render_title(self, session, cluster):
+ return "Broker Cluster '%s'" % cluster.name
+
+class BrokerClusterView(Widget):
+ def __init__(self, app, name):
+ super(BrokerClusterView, self).__init__(app, name)
+
+ self.tabs = TabSet(app, "tabs")
+ self.add_child(self.tabs)
+
+ self.tabs.add_tab(self.ClusterBrokerTab(app, "brokers"))
+ self.tabs.add_tab(self.ClusterVirtualHostTab(app, "vhosts"))
+ self.tabs.add_tab(self.ClusterStatsTab(app, "stats"))
+
+ def render_title(self, session, cluster):
+ return "Broker Cluster '%s'" % cluster.name
+
+ def render_name(self, session, cluster):
+ return cluster.name
+
+ class ClusterBrokerTab(BrokerSet):
+ def render_title(self, session, cluster):
+ return "Brokers (%i)" % len(cluster.broker_items())
+
+ def get_items(self, session, cluster):
+ return sorted_by(cluster.broker_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 ClusterStatsTab(Widget):
+ def render_title(self, session, cluster):
+ return "Statistics"
Copied: mgmt/cumin/python/cumin/brokercluster.strings (from rev 1155, mgmt/cumin/python/cumin/cluster.strings)
===================================================================
--- mgmt/cumin/python/cumin/brokercluster.strings (rev 0)
+++ mgmt/cumin/python/cumin/brokercluster.strings 2007-10-24 16:10:02 UTC (rev 1157)
@@ -0,0 +1,102 @@
+[BrokerClusterSet.css]
+div.brokerlight {
+ float: left;
+ width: 1em;
+ height: 1em;
+ margin: 0.25em 1px 0 0;
+ padding: 0;
+ background-color: #6f6;
+}
+
+div.brokerlight.red {
+ background-color: red;
+}
+
+[BrokerClusterSet.html]
+<table class="BrokerClusterSet mobjects">
+ <tr>
+ <th>Broker Cluster</th>
+ <th>Configuration</th>
+ <th>Status</th>
+ </tr>
+
+ {items}
+</table>
+
+[BrokerClusterSet.item_html]
+<tr>
+ <td>{item_link}</td>
+ <td>3 brokers</td>
+ <td>
+ <div>0 errors, 0 warnings</div>
+ <div>{item_broker_lights}</div>
+ </td>
+</tr>
+
+[BrokerClusterSet.broker_html]
+<div class="brokerlight {broker_status}"></div>
+
+[BrokerClusterView.html]
+<div class="mstatus green" id="{id}">
+ <h2>Broker Cluster 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="">Shutdown This Cluster</a></li>
+</ul>
+
+{tabs}
+
+[ClusterBrokerTab.html]
+<ul class="actions">
+ <li><a href="{add_broker_href}">Add Broker</a></li>
+</ul>
+
+<table class="mobjects">
+ <tr>
+ <th>Broker</th>
+ <th>Profile</th>
+ <th>Status</th>
+ <th>Load</th>
+ </tr>
+
+ {items}
+</table>
+
+[ClusterBrokerTab.item_html]
+<tr>
+ <td>{item_link}</td>
+ <td>{item_profile_link}</td>
+ <td>{item_status}</td>
+ <td>{item_load}</td>
+</tr>
+
+[ClusterVirtualHostTab.html]
+<ul class="actions">
+ <li><a href="">Add Functional Host</a></li>
+</ul>
+
+<table class="mobjects">
+ <tr>
+ <th>Functional Host</th>
+ <th>Configuration</th>
+ <th></th>
+ </tr>
+
+ {items}
+</table>
+
+[ClusterVirtualHostTab.item_html]
+<tr>
+ <td>{item_link}</td>
+ <td>10 queues, 5 exchanges</td>
+ <td><a class="action" href="">Remove</a></td>
+</tr>
Deleted: mgmt/cumin/python/cumin/cluster.py
===================================================================
--- mgmt/cumin/python/cumin/cluster.py 2007-10-24 15:38:06 UTC (rev 1156)
+++ mgmt/cumin/python/cumin/cluster.py 2007-10-24 16:10:02 UTC (rev 1157)
@@ -1,106 +0,0 @@
-from wooly import *
-from wooly.widgets import *
-from random import random
-
-from virtualhost import *
-from broker import *
-from widgets import *
-from parameters import *
-from util import *
-
-strings = StringCatalog(__file__)
-
-class ClusterSet(ItemSet):
- def __init__(self, app, name):
- super(ClusterSet, self).__init__(app, name)
-
- self.broker_tmpl = Template(self, "broker_html")
-
- def render_title(self, session, model):
- return "Clusters (%i)" % len(model.get_clusters())
-
- def get_items(self, session, model):
- return sorted_by(model.get_clusters())
-
- def render_item_link(self, session, cluster):
- branch = session.branch()
- self.page().show_cluster(branch, cluster).show_view(branch)
-
- return mlink(branch.marshal(), "Cluster", cluster.name)
-
- def render_item_broker_lights(self, session, cluster):
- writer = Writer()
-
- for broker in sorted_by(cluster.broker_items()):
- self.broker_tmpl.render(session, broker, writer)
-
- return writer.to_string()
-
- def render_broker_status(self, session, broker):
- return random() < 0.25 and "red" or "green"
-
-class ClusterFrame(CuminFrame):
- def __init__(self, app, name):
- super(ClusterFrame, self).__init__(app, name)
-
- self.param = ClusterParameter(app, "id")
- self.add_parameter(self.param)
- self.set_object_parameter(self.param)
-
- self.view = ClusterView(app, "view")
- self.add_mode(self.view)
-
- self.broker = BrokerFrame(app, "broker")
- self.add_mode(self.broker)
-
- self.vhost = VirtualHostFrame(app, "vhost")
- self.add_mode(self.vhost)
-
- def show_view(self, session):
- return self.show_mode(session, self.view)
-
- def show_broker(self, session, broker):
- self.broker.set_object(session, broker)
- return self.show_mode(session, self.broker)
-
- def show_virtual_host(self, session, vhost):
- self.vhost.set_object(session, vhost)
- return self.show_mode(session, self.vhost)
-
- def render_title(self, session, cluster):
- return "Cluster '%s'" % cluster.name
-
-class ClusterView(Widget):
- def __init__(self, app, name):
- super(ClusterView, self).__init__(app, name)
-
- self.tabs = TabSet(app, "tabs")
- self.add_child(self.tabs)
-
- self.tabs.add_tab(self.ClusterBrokerTab(app, "brokers"))
- 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
-
- def render_name(self, session, cluster):
- return cluster.name
-
- class ClusterBrokerTab(BrokerSet):
- def render_title(self, session, cluster):
- return "Brokers (%i)" % len(cluster.broker_items())
-
- def get_items(self, session, cluster):
- return sorted_by(cluster.broker_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 ClusterStatsTab(Widget):
- def render_title(self, session, cluster):
- return "Statistics"
Deleted: mgmt/cumin/python/cumin/cluster.strings
===================================================================
--- mgmt/cumin/python/cumin/cluster.strings 2007-10-24 15:38:06 UTC (rev 1156)
+++ mgmt/cumin/python/cumin/cluster.strings 2007-10-24 16:10:02 UTC (rev 1157)
@@ -1,102 +0,0 @@
-[ClusterSet.css]
-div.brokerlight {
- float: left;
- width: 1em;
- height: 1em;
- margin: 0.25em 1px 0 0;
- padding: 0;
- background-color: #6f6;
-}
-
-div.brokerlight.red {
- background-color: red;
-}
-
-[ClusterSet.html]
-<table class="ClusterSet mobjects">
- <tr>
- <th>Cluster</th>
- <th>Configuration</th>
- <th>Status</th>
- </tr>
-
- {items}
-</table>
-
-[ClusterSet.item_html]
-<tr>
- <td>{item_link}</td>
- <td>3 brokers</td>
- <td>
- <div>0 errors, 0 warnings</div>
- <div>{item_broker_lights}</div>
- </td>
-</tr>
-
-[ClusterSet.broker_html]
-<div class="brokerlight {broker_status}"></div>
-
-[ClusterView.html]
-<div class="mstatus green" id="{id}">
- <h2>Cluster 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="">Shutdown This Cluster</a></li>
-</ul>
-
-{tabs}
-
-[ClusterBrokerTab.html]
-<ul class="actions">
- <li><a href="{add_broker_href}">Add Broker</a></li>
-</ul>
-
-<table class="mobjects">
- <tr>
- <th>Broker</th>
- <th>Profile</th>
- <th>Status</th>
- <th>Load</th>
- </tr>
-
- {items}
-</table>
-
-[ClusterBrokerTab.item_html]
-<tr>
- <td>{item_link}</td>
- <td>{item_profile_link}</td>
- <td>{item_status}</td>
- <td>{item_load}</td>
-</tr>
-
-[ClusterVirtualHostTab.html]
-<ul class="actions">
- <li><a href="">Add Functional Host</a></li>
-</ul>
-
-<table class="mobjects">
- <tr>
- <th>Functional Host</th>
- <th>Configuration</th>
- <th></th>
- </tr>
-
- {items}
-</table>
-
-[ClusterVirtualHostTab.item_html]
-<tr>
- <td>{item_link}</td>
- <td>10 queues, 5 exchanges</td>
- <td><a class="action" href="">Remove</a></td>
-</tr>
Modified: mgmt/cumin/python/cumin/demo.py
===================================================================
--- mgmt/cumin/python/cumin/demo.py 2007-10-24 15:38:06 UTC (rev 1156)
+++ mgmt/cumin/python/cumin/demo.py 2007-10-24 16:10:02 UTC (rev 1157)
@@ -53,18 +53,18 @@
clusters = list()
for cluster_count in range(3):
- cluster = Cluster(self.model)
+ cluster = BrokerCluster(self.model)
cluster.name = fmt("cluster", cluster_count)
clusters.append(cluster)
vhost = VirtualHost(self.model)
vhost.name = "default"
- vhost.set_cluster(cluster)
+ vhost.set_broker_cluster(cluster)
for name in ("test", "devel"):
vhost = VirtualHost(self.model)
vhost.name = name
- vhost.set_cluster(cluster)
+ vhost.set_broker_cluster(cluster)
self.load_vhost(vhost)
@@ -76,7 +76,7 @@
index = broker_count % 4
if index < 3:
- broker.set_cluster(clusters[index])
+ broker.set_broker_cluster(clusters[index])
index = broker_count % 3
if index < 2:
Modified: mgmt/cumin/python/cumin/model.py
===================================================================
--- mgmt/cumin/python/cumin/model.py 2007-10-24 15:38:06 UTC (rev 1156)
+++ mgmt/cumin/python/cumin/model.py 2007-10-24 16:10:02 UTC (rev 1157)
@@ -5,8 +5,8 @@
def __init__(self):
super(CuminModel, self).__init__()
- self.cluster = ModelClass(self, "cluster")
self.broker = ModelClass(self, "broker")
+ self.broker_cluster = ModelClass(self, "broker_cluster")
self.broker_profile = ModelClass(self, "broker_profile")
self.config_property = ModelClass(self, "config_property")
self.broker_group = ModelClass(self, "broker_group")
@@ -22,9 +22,9 @@
self.realm = ModelClass(self, "realm")
self.binding = ModelClass(self, "binding")
- assoc = ModelAssociation(self, "cluster_to_brokers")
- assoc.add_endpoint(self.broker, "cluster", "0..1")
- assoc.add_endpoint(self.cluster, "broker", "0..n")
+ assoc = ModelAssociation(self, "broker_cluster_to_brokers")
+ assoc.add_endpoint(self.broker, "broker_cluster", "0..1")
+ assoc.add_endpoint(self.broker_cluster, "broker", "0..n")
assoc = ModelAssociation(self, "broker_profile_to_brokers")
assoc.add_endpoint(self.broker, "broker_profile", "0..1")
@@ -34,9 +34,9 @@
assoc.add_endpoint(self.config_property, "broker_profile", "0..1")
assoc.add_endpoint(self.broker_profile, "config_property", "0..n")
- assoc = ModelAssociation(self, "cluster_to_virtual_hosts")
- assoc.add_endpoint(self.virtual_host, "cluster", "0..1")
- assoc.add_endpoint(self.cluster, "virtual_host", "0..n")
+ assoc = ModelAssociation(self, "broker_cluster_to_virtual_hosts")
+ assoc.add_endpoint(self.virtual_host, "broker_cluster", "0..1")
+ assoc.add_endpoint(self.broker_cluster, "virtual_host", "0..n")
assoc = ModelAssociation(self, "broker_to_config_properties")
assoc.add_endpoint(self.config_property, "broker", "0..1")
@@ -111,11 +111,11 @@
assoc.add_endpoint(self.exchange, "binding", "0..n")
assoc.add_endpoint(self.binding, "exchange", "0..1")
- def get_cluster(self, id):
- return self.get_index(self.cluster).get(id)
+ def get_broker_cluster(self, id):
+ return self.get_index(self.broker_cluster).get(id)
- def get_clusters(self):
- return self.get_index(self.cluster).values()
+ def get_broker_clusters(self):
+ return self.get_index(self.broker_cluster).values()
def get_broker(self, id):
return self.get_index(self.broker).get(id)
@@ -152,7 +152,7 @@
def get_virtual_host_templates(self):
return [i for i in self.get_virtual_hosts() \
- if not i.get_cluster() and not i.get_broker()]
+ if not i.get_cluster() and not i.get_broker_cluster()]
def get_virtual_host_group(self, id):
return self.get_index(self.virtual_host_group).get(id)
@@ -186,9 +186,9 @@
if measure.name == name:
return measure
-class Cluster(ModelObject):
+class BrokerCluster(ModelObject):
def __init__(self, model):
- super(Cluster, self).__init__(model, model.cluster)
+ super(BrokerCluster, self).__init__(model, model.broker_cluster)
self.name = None
Modified: mgmt/cumin/python/cumin/page.py
===================================================================
--- mgmt/cumin/python/cumin/page.py 2007-10-24 15:38:06 UTC (rev 1156)
+++ mgmt/cumin/python/cumin/page.py 2007-10-24 16:10:02 UTC (rev 1157)
@@ -5,7 +5,7 @@
from broker import *
from brokergroup import *
from brokerprofile import *
-from cluster import *
+from brokercluster import *
from widgets import *
from util import *
@@ -41,7 +41,7 @@
self.profile = BrokerProfileFrame(app, "profile")
self.add_mode(self.profile)
- self.cluster = ClusterFrame(app, "cluster")
+ self.cluster = BrokerClusterFrame(app, "cluster")
self.add_mode(self.cluster)
def save_session(self, session):
@@ -66,10 +66,10 @@
return self.show_mode(session, self.view)
def show_broker(self, session, broker):
- cluster = broker.get_cluster()
+ cluster = broker.get_broker_cluster()
if cluster:
- frame = self.show_cluster(session, cluster)
+ frame = self.show_broker_cluster(session, cluster)
frame = frame.show_broker(session, broker)
else:
frame = self.show_mode(session, self.broker)
@@ -86,7 +86,7 @@
frame = self.show_mode(session, self.group_add)
return self.set_current_frame(session, frame)
- def show_cluster(self, session, cluster):
+ def show_broker_cluster(self, session, cluster):
frame = self.show_mode(session, self.cluster)
frame.set_object(session, cluster)
return self.set_current_frame(session, frame)
@@ -98,12 +98,12 @@
def show_virtual_host(self, session, vhost):
broker = vhost.get_broker()
- cluster = vhost.get_cluster()
+ cluster = vhost.get_broker_cluster()
if broker:
frame = self.show_broker(session, broker)
elif cluster:
- frame = self.show_cluster(session, cluster)
+ frame = self.show_broker_cluster(session, cluster)
else:
raise Exception()
@@ -166,7 +166,7 @@
self.add_tab(self.BrokerTab(app, "brokers"))
self.add_tab(BrokerGroupSet(app, "groups"))
self.add_tab(self.BrokerProfileTab(app, "profiles"))
- self.add_tab(self.ClusterTab(app, "clusters"))
+ self.add_tab(self.BrokerClusterTab(app, "clusters"))
self.add_tab(self.TagTab(app, "tags"))
def show_broker_group(self, session, group):
@@ -185,9 +185,9 @@
def render_title(self, session, model):
return "Broker Profiles (%i)" % len(model.get_broker_profiles())
- class ClusterTab(ClusterSet):
+ class BrokerClusterTab(BrokerClusterSet):
def render_title(self, session, model):
- return "Clusters (%i)" % len(model.get_clusters())
+ return "Broker Clusters (%i)" % len(model.get_broker_clusters())
class TagTab(Widget):
def render_title(self, session, model):
Modified: mgmt/cumin/python/cumin/page.strings
===================================================================
--- mgmt/cumin/python/cumin/page.strings 2007-10-24 15:38:06 UTC (rev 1156)
+++ mgmt/cumin/python/cumin/page.strings 2007-10-24 16:10:02 UTC (rev 1157)
@@ -383,7 +383,7 @@
margin: 0 0 1em 0;
}
-.ClusterBrowser.groups h2 {
+.BrokerClusterBrowser.groups h2 {
color: #564979;
font-size: 0.9em;
border-bottom: 1px dotted #ddd;
@@ -443,14 +443,8 @@
[MainView.html]
<div class="oblock">
- <div class="mstatus green" id="{id}">
- <div>0 errors, 0 warnings</div>
- </div>
-
<h1>{title}</h1>
- <br/>
-
<ul class="TabSet tabs">{tabs}</ul>
<div class="TabSet mode">{mode}</div>
</div>
@@ -468,14 +462,14 @@
{items}
</table>
-[ClusterTab.html]
+[BrokerClusterTab.html]
<ul class="actions">
- <li><a href="">Add Cluster</a></li>
+ <li><a href="">Add Broker Cluster</a></li>
</ul>
-<table class="ClusterSet mobjects">
+<table class="BrokerClusterSet mobjects">
<tr>
- <th>Cluster</th>
+ <th>Broker Cluster</th>
<th>Configuration</th>
<th>Status</th>
</tr>
Modified: mgmt/cumin/python/cumin/parameters.py
===================================================================
--- mgmt/cumin/python/cumin/parameters.py 2007-10-24 15:38:06 UTC (rev 1156)
+++ mgmt/cumin/python/cumin/parameters.py 2007-10-24 16:10:02 UTC (rev 1157)
@@ -1,5 +1,12 @@
from wooly import *
+class BrokerClusterParameter(Parameter):
+ def do_unmarshal(self, string):
+ return self.app.model.get_broker_cluster(int(string))
+
+ def do_marshal(self, cluster):
+ return str(cluster.id)
+
class BrokerGroupParameter(Parameter):
def do_unmarshal(self, string):
return self.app.model.get_broker_group(int(string))
@@ -28,13 +35,6 @@
def do_marshal(self, client):
return str(client.id)
-class ClusterParameter(Parameter):
- def do_unmarshal(self, string):
- return self.app.model.get_cluster(int(string))
-
- def do_marshal(self, cluster):
- return str(cluster.id)
-
class ConfigPropertyParameter(Parameter):
def do_unmarshal(self, string):
return self.app.model.get_config_property(int(string))
Modified: mgmt/cumin/python/cumin/virtualhost.py
===================================================================
--- mgmt/cumin/python/cumin/virtualhost.py 2007-10-24 15:38:06 UTC (rev 1156)
+++ mgmt/cumin/python/cumin/virtualhost.py 2007-10-24 16:10:02 UTC (rev 1157)
@@ -89,12 +89,12 @@
else:
return none()
- def render_cluster(self, session, vhost):
- cluster = vhost.get_cluster()
+ def render_broker_cluster(self, session, vhost):
+ cluster = vhost.get_broker_cluster()
if cluster:
branch = session.branch()
- self.page().show_cluster(branch, cluster).show_view(branch)
+ self.page().show_broker_cluster(branch, cluster).show_view(branch)
return mlink(branch.marshal(), "Cluster", cluster.name)
else:
Modified: mgmt/cumin/python/cumin/virtualhost.strings
===================================================================
--- mgmt/cumin/python/cumin/virtualhost.strings 2007-10-24 15:38:06 UTC (rev 1156)
+++ mgmt/cumin/python/cumin/virtualhost.strings 2007-10-24 16:10:02 UTC (rev 1157)
@@ -29,7 +29,7 @@
<dl class="properties">
<dt>Name</dt><dd>{name}</dd>
<dt>Broker</dt><dd>{broker}</dd>
- <dt>Cluster</dt><dd>{cluster}</dd>
+ <dt>Broker Cluster</dt><dd>{broker_cluster}</dd>
</dl>
{tabs}
Modified: mgmt/notes/Todo
===================================================================
--- mgmt/notes/Todo 2007-10-24 15:38:06 UTC (rev 1156)
+++ mgmt/notes/Todo 2007-10-24 16:10:02 UTC (rev 1157)
@@ -107,6 +107,3 @@
* exch: link bindings, producers stats to respective views
* model: get rid of the old *_count stat fields and use the new ones
-
- * Rename cluster to broker cluster, to avoid any future conflicts
- with system clusters
18 years, 6 months
rhmessaging commits: r1156 - in mgmt: notes and 1 other directory.
by rhmessaging-commits@lists.jboss.org
Author: justi9
Date: 2007-10-24 11:38:06 -0400 (Wed, 24 Oct 2007)
New Revision: 1156
Added:
mgmt/cumin/python/cumin/broker.py
mgmt/cumin/python/cumin/broker.strings
mgmt/cumin/python/cumin/brokergroup.py
mgmt/cumin/python/cumin/brokergroup.strings
mgmt/cumin/python/cumin/brokerprofile.py
mgmt/cumin/python/cumin/brokerprofile.strings
Removed:
mgmt/cumin/python/cumin/server.py
mgmt/cumin/python/cumin/server.strings
mgmt/cumin/python/cumin/servergroup.py
mgmt/cumin/python/cumin/servergroup.strings
mgmt/cumin/python/cumin/serverprofile.py
mgmt/cumin/python/cumin/serverprofile.strings
Modified:
mgmt/notes/Todo
Log:
Completion of the server->broker rename.
Copied: mgmt/cumin/python/cumin/broker.py (from rev 1155, mgmt/cumin/python/cumin/server.py)
===================================================================
--- mgmt/cumin/python/cumin/broker.py (rev 0)
+++ mgmt/cumin/python/cumin/broker.py 2007-10-24 15:38:06 UTC (rev 1156)
@@ -0,0 +1,401 @@
+from wooly import *
+from wooly.widgets import *
+
+from configproperty import *
+from virtualhost import *
+from widgets import *
+from parameters import *
+from util import *
+from random import random
+
+strings = StringCatalog(__file__)
+
+class BrokerSet(ItemSet):
+ def render_title(self, session, model):
+ return "Brokers (%i)" % len(model.get_brokers())
+
+ def get_items(self, session, model):
+ return sorted_by(model.get_brokers())
+
+ def render_item_link(self, session, broker):
+ branch = session.branch()
+ self.page().show_broker(branch, broker).show_view(branch)
+
+ return mlink(branch.marshal(), "Broker", broker.name)
+
+ def render_item_group_link(self, session, broker):
+ group = broker.get_broker_group()
+
+ if group:
+ branch = session.branch()
+ self.page().show_broker_group(branch, group).show_view(branch)
+
+ return mlink(branch.marshal(), "BrokerGroup", group.name)
+ else:
+ return none()
+
+ def render_item_profile_link(self, session, broker):
+ profile = broker.get_broker_profile()
+
+ if profile:
+ branch = session.branch()
+ self.page().show_broker_profile(branch, profile).show_view(branch)
+
+ return mlink(branch.marshal(), "BrokerProfile", profile.name)
+ else:
+ return none()
+
+ def render_item_cluster_link(self, session, broker):
+ cluster = broker.get_cluster()
+
+ if cluster:
+ branch = session.branch()
+ self.page().show_cluster(branch, cluster).show_view(branch)
+
+ return mlink(branch.marshal(), "Cluster", cluster.name)
+ else:
+ return none()
+
+ def render_item_status(self, session, broker):
+ return "0 errors, 0 warnings"
+
+ def render_item_load(self, session, broker):
+ return "%.2f" % random()
+
+class BrokerSetForm(BrokerSet, Form):
+ def __init__(self, app, name):
+ super(BrokerSetForm, self).__init__(app, name)
+
+ self.broker = BrokerParameter(app, "param")
+ self.add_parameter(self.broker)
+ self.add_form_parameter(self.broker)
+
+ self.brokers = ListParameter(app, "ids", self.broker)
+ self.add_parameter(self.brokers)
+ self.add_form_parameter(self.brokers)
+
+ self.submit = self.Submit(app, "submit", self)
+ self.add_child(self.submit)
+
+ def do_process(self, session, model):
+ if self.submit.get(session):
+ self.submit.set(session, False)
+
+ for broker in self.brokers.get(session):
+ print "broker", broker
+
+ session.set_redirect(session.marshal())
+
+ def render_item_checkbox_name(self, session, broker):
+ return self.brokers.path()
+
+ def render_item_checkbox_value(self, session, broker):
+ return self.broker.marshal(broker)
+
+ def render_item_checkbox_checked_attr(self, session, broker):
+ return broker in self.brokers.get(session) and "checked=\"checked\""
+
+ class Submit(FormButton):
+ def render_content(self, session, model):
+ return "Submit"
+
+class BrokerFrame(CuminFrame):
+ def __init__(self, app, name):
+ super(BrokerFrame, self).__init__(app, name)
+
+ self.param = BrokerParameter(app, "id")
+ self.add_parameter(self.param)
+ self.set_object_parameter(self.param)
+
+ self.view = BrokerView(app, "view")
+ self.add_mode(self.view)
+
+ self.vhost = VirtualHostFrame(app, "vhost")
+ self.add_mode(self.vhost)
+
+ self.prop = BrokerConfigPropertyForm(app, "prop")
+ self.add_mode(self.prop)
+
+ def show_view(self, session):
+ return self.show_mode(session, self.view)
+
+ def show_virtual_host(self, session, vhost):
+ self.vhost.set_object(session, vhost)
+ return self.show_mode(session, self.vhost)
+
+ def show_config_property(self, session, prop):
+ self.prop.set_config_property(session, prop)
+ frame = self.show_mode(session, self.prop)
+ return self.page().set_current_frame(session, frame)
+
+ def render_title(self, session, broker):
+ return "Broker '%s'" % broker.name
+
+class BrokerConfigPropertyForm(CuminForm, Frame):
+ def __init__(self, app, name):
+ super(BrokerConfigPropertyForm, self).__init__(app, name)
+
+ self.param = ConfigPropertyParameter(app, "param")
+ self.add_parameter(self.param)
+
+ self.source = Parameter(app, "source")
+ self.source.set_default("local")
+ self.add_parameter(self.source)
+
+ self.profile = RadioInput(app, "profile", self)
+ self.profile.set_parameter(self.source)
+ self.profile.set_value("profile")
+ self.add_child(self.profile)
+
+ self.pvalue = TextInput(app, "profile_value", self)
+ self.pvalue.set_disabled(True)
+ self.add_child(self.pvalue)
+
+ self.broker = RadioInput(app, "broker", self)
+ self.broker.set_parameter(self.source)
+ self.broker.set_value("broker")
+ self.add_child(self.broker)
+
+ self.svalue = TextInput(app, "broker_value", self)
+ self.svalue.set_disabled(True)
+ self.add_child(self.svalue)
+
+ self.local = RadioInput(app, "local", self)
+ self.local.set_parameter(self.source)
+ self.local.set_value("local")
+ self.add_child(self.local)
+
+ self.lvalue = TextInput(app, "local_value", self)
+ self.add_child(self.lvalue)
+
+ def get_object(self, session, object):
+ return self.param.get(session)
+
+ def set_config_property(self, session, prop):
+ return self.param.set(session, prop)
+
+ def process_cancel(self, session, prop):
+ branch = session.branch()
+ self.page().show_broker(branch, prop.get_broker()).show_view(branch)
+ session.set_redirect(branch.marshal())
+
+ def process_submit(self, session, prop):
+ source = self.source.get(session)
+
+ if source == "profile":
+ prop.value = get_profile_value(prop)
+ elif source == "broker":
+ prop.value = prop.broker_value
+ elif source == "local":
+ prop.value = self.lvalue.get(session)
+ else:
+ raise Exception()
+
+ self.process_cancel(session, prop)
+
+ def process_display(self, session, prop):
+ self.pvalue.set(session, get_profile_value(prop))
+ self.svalue.set(session, prop.broker_value)
+ self.lvalue.set(session, prop.value)
+
+ def render_title(self, session, prop):
+ return "Edit Property '%s'" % prop.name
+
+def get_profile_value(prop):
+ profile = prop.get_broker().get_broker_profile()
+ value = None
+
+ if profile:
+ for p in profile.config_property_items():
+ if p.name == prop.name:
+ value = p.value
+
+ return value
+
+class BrokerView(Widget):
+ def __init__(self, app, name):
+ super(BrokerView, self).__init__(app, name)
+
+ self.tabs = TabSet(app, "tabs")
+ self.add_child(self.tabs)
+
+ self.tabs.add_tab(self.BrokerVirtualHostTab(app, "vhosts"))
+ self.config = self.BrokerConfigTab(app, "config")
+ self.tabs.add_tab(self.config)
+ self.tabs.add_tab(self.BrokerStatsTab(app, "stats"))
+ self.tabs.add_tab(self.BrokerLogTab(app, "log"))
+
+ def show_config(self, session):
+ return self.tabs.show_mode(session, self.config)
+
+ def render_title(self, session, broker):
+ return "Broker '%s'" % broker.name
+
+ def render_name(self, session, broker):
+ return broker.name
+
+ def render_cluster_link(self, session, broker):
+ cluster = broker.get_cluster()
+
+ if cluster:
+ branch = session.branch()
+ self.page().show_cluster(branch, cluster).show_view(branch)
+ html = mlink(branch.marshal(), "Cluster", cluster.name)
+ else:
+ html = none()
+
+ return html
+
+ def render_profile_link(self, session, broker):
+ profile = broker.get_broker_profile()
+
+ if profile:
+ branch = session.branch()
+ self.page().show_broker_profile(branch, profile).show_view(branch)
+ html = mlink(branch.marshal(), "BrokerProfile", profile.name)
+ else:
+ html = none()
+
+ return html
+
+ def render_version(self, session, broker):
+ return "1.0"
+
+ class BrokerVirtualHostTab(VirtualHostSet):
+ def render_title(self, session, broker):
+ return "Functional Hosts (%i)" % len(broker.virtual_host_items())
+
+ def get_items(self, session, broker):
+ return sorted_by(broker.virtual_host_items())
+
+ class BrokerConfigTab(ConfigPropertySet):
+ def render_title(self, session, broker):
+ return "Configuration"
+
+ def get_items(self, session, broker):
+ return sorted_by(broker.config_property_items())
+
+ def maybe_highlight(self, value, comparedto):
+ if str(value) != str(comparedto):
+ value = "<span class=\"BrokerConfigTab diff\">%s</span>" \
+ % value
+
+ return value
+
+ def render_item_broker_value(self, session, prop):
+ return self.maybe_highlight(prop.broker_value, prop.value)
+
+ def render_item_profile_value(self, session, prop):
+ value = get_profile_value(prop)
+ return self.maybe_highlight(value, prop.value)
+
+ def render_item_edit_href(self, session, prop):
+ branch = session.branch()
+ frame = self.page().show_broker(branch, prop.get_broker())
+ frame.show_config_property(branch, prop)
+ return branch.marshal()
+
+ class BrokerStatsTab(Widget):
+ def render_title(self, session, broker):
+ return "Statistics"
+
+ class BrokerLogTab(Widget):
+ def render_title(self, session, broker):
+ return "Log Messages"
+
+class BrokerBrowser(Widget):
+ def __init__(self, app, name):
+ super(BrokerBrowser, self).__init__(app, name)
+
+ self.group_tmpl = Template(self, "group_html")
+ self.profile_tmpl = Template(self, "profile_html")
+ self.cluster_tmpl = Template(self, "cluster_html")
+
+ self.group = BrokerGroupParameter(app, "group")
+ self.add_parameter(self.group)
+
+ self.profile = BrokerProfileParameter(app, "profile")
+ self.add_parameter(self.profile)
+
+ self.cluster = ClusterParameter(app, "cluster")
+ self.add_parameter(self.cluster)
+
+ self.brokers = self.BrowserBrokers(app, "brokers")
+ self.add_child(self.brokers)
+
+ class BrowserBrokers(BrokerSetForm):
+ def get_items(self, session, model):
+ brokers = sorted_by(model.get_brokers())
+ group = self.parent.group.get(session)
+ profile = self.parent.profile.get(session)
+ cluster = self.parent.cluster.get(session)
+
+ for broker in model.get_brokers():
+ if group and group not in broker.broker_group_items():
+ brokers.remove(broker)
+
+ if profile and profile is not broker.get_broker_profile():
+ try:
+ brokers.remove(broker)
+ except ValueError:
+ pass
+
+ if cluster and cluster is not broker.get_cluster():
+ try:
+ brokers.remove(broker)
+ except ValueError:
+ pass
+
+ return brokers
+
+ def render_none(self, session, model):
+ return none()
+
+ def render_clear_filters_href(self, session, model):
+ branch = session.branch()
+ self.group.set(branch, None)
+ self.profile.set(branch, None)
+ self.cluster.set(branch, None)
+ return branch.marshal()
+
+ def render_group_filters(self, session, model):
+ groups = sorted_by(model.get_broker_groups())
+ return self._render_filters(session, groups, self.group_tmpl)
+
+ def render_group_link(self, session, group):
+ return self._render_filter_link(session, group, self.group)
+
+ def render_profile_filters(self, session, model):
+ profiles = sorted_by(model.get_broker_profiles())
+ return self._render_filters(session, profiles, self.profile_tmpl)
+
+ def render_profile_link(self, session, profile):
+ return self._render_filter_link(session, profile, self.profile)
+
+ def render_cluster_filters(self, session, model):
+ clusters = sorted_by(model.get_clusters())
+ return self._render_filters(session, clusters, self.cluster_tmpl)
+
+ def render_cluster_link(self, session, cluster):
+ return self._render_filter_link(session, cluster, self.cluster)
+
+ def _render_filters(self, session, collection, template):
+ writer = Writer()
+
+ for object in collection:
+ template.render(session, object, writer)
+
+ template.render(session, None, writer)
+
+ return writer.to_string()
+
+ def _render_filter_link(self, session, object, param):
+ branch = session.branch()
+ param.set(branch, object)
+ href = branch.marshal()
+
+ name = object and object.name or "Any"
+
+ class_ = param.get(session) is object and "selected"
+
+ return link(href, name, class_)
Copied: mgmt/cumin/python/cumin/broker.strings (from rev 1155, mgmt/cumin/python/cumin/server.strings)
===================================================================
--- mgmt/cumin/python/cumin/broker.strings (rev 0)
+++ mgmt/cumin/python/cumin/broker.strings 2007-10-24 15:38:06 UTC (rev 1156)
@@ -0,0 +1,195 @@
+[BrokerSet.html]
+<table class="mobjects">
+ <tr>
+ <th>Broker</th>
+ <th>Profile</th>
+ <th>Cluster</th>
+ <th>Status</th>
+ </tr>
+
+ {items}
+</table>
+
+[BrokerSet.item_html]
+<tr>
+ <td>{item_link}</td>
+ <td>{item_profile_link}</td>
+ <td>{item_cluster_link}</td>
+ <td>0 errors, 0 warnings</td>
+</tr>
+
+[BrokerSetForm.html]
+<form id="{id}" method="post" action="?">
+ <!-- <select onchange="document.getElementById('{id}.submit').submit()"> -->
+ <select>
+ <option>Act on Selection...</option>
+ <optgroup label="Actions">
+ <option>Shutdown</option>
+ <option>Load Balance</option>
+ </optgroup>
+ <optgroup label="Add to Group">
+ <option>East Coast</option>
+ <option>West Coast</option>
+ <option>Marketing</option>
+ <option>Sales</option>
+ </optgroup>
+ </select>
+ {submit}
+ <br/><br/>
+
+ <table class="mobjects">
+ <tr>
+ <th><input type="checkbox"/></th>
+ <th>Broker</th>
+ <th>Profile</th>
+ <th>Cluster</th>
+ <th>Status</th>
+ <th>Load</th>
+ </tr>
+
+ {items}
+ </table>
+ {hidden_inputs}
+</form>
+
+[BrokerSetForm.item_html]
+<tr>
+ <td><input type="checkbox" name="{item_checkbox_name}" value="{item_checkbox_value}" {item_checkbox_checked_attr}/></td>
+ <td>{item_link}</td>
+ <td>{item_profile_link}</td>
+ <td>{item_cluster_link}</td>
+ <td>{item_status}</td>
+ <td>{item_load}</td>
+</tr>
+
+[BrokerConfigTab.css]
+.BrokerConfigTab.diff {
+ background-color: #ff9;
+}
+
+[BrokerConfigTab.html]
+<ul class="actions">
+ <li><a href="">Apply Configuration to Broker</a></li>
+ <li><a href="">Add Property</a></li>
+</ul>
+
+<table class="mobjects">
+ <tr>
+ <th>Property</th>
+ <th>Configured Value</th>
+ <th>Broker Value</th>
+ <th>Profile Value</th>
+ <th></th>
+ </tr>
+
+ {items}
+</table>
+
+[BrokerConfigTab.item_html]
+<tr>
+ <td>{item_name}</td>
+ <td>{item_value}</td>
+ <td>{item_broker_value}</td>
+ <td>{item_profile_value}</td>
+ <td><a class="action" href="{item_edit_href}">Edit</a></td>
+</tr>
+
+[BrokerConfigPropertyForm.css]
+.BrokerConfigPropertyForm div.value {
+ margin: 1em 2em;
+}
+
+[BrokerConfigPropertyForm.html]
+<form id="{id}" class="BrokerConfigPropertyForm mform" method="post" action="?">
+ <div class="head">
+ <h1>{title}</h1>
+ </div>
+ <div class="body">
+ <span class="legend">Value</span>
+ <fieldset>
+ <div class="field">
+ {profile} Use the value from the broker profile
+ <div class="value">{profile_value}</div>
+ </div>
+ <div class="field">
+ {broker} Use the value currently set on the broker
+ <div class="value">{broker_value}</div>
+ </div>
+ <div class="field">
+ {local} Set a new value
+ <div class="value">{local_value}</div>
+ </div>
+ </fieldset>
+
+ {hidden_inputs}
+ </div>
+ <div class="foot">
+ <div style="display: block; float: left;"><button>Help</button></div>
+ {cancel}
+ {submit}
+ </div>
+</form>
+<script defer="defer">
+(function() {
+ var elem = wooly.doc().elem("{id}").node.elements[1];
+ elem.focus();
+ elem.select();
+}())
+</script>
+
+[BrokerView.html]
+<div class="oblock">
+ <div class="mstatus green" id="{id}">
+ <h2>Broker Status</h2>
+
+ <div>0 errors, 0 warnings</div>
+ </div>
+
+ <h1>{title}</h1>
+
+ <dl class="properties">
+ <dt>Name</dt><dd>{name}</dd>
+ <dt>Cluster</dt><dd>{cluster_link}</dd>
+ <dt>Broker Profile</dt><dd>{profile_link}</dd>
+ <dt>Software Version</dt><dd>{version}</dd>
+ </dl>
+
+ <ul class="actions">
+ <li><a href="">Shutdown This Broker</a></li>
+ </ul>
+
+ {tabs}
+</div>
+
+[BrokerBrowser.html]
+<table class="browser">
+ <tr>
+ <td class="nav">
+ <ul class="actions">
+ <li><a href="{clear_filters_href}">Clear Filters</a></li>
+ </ul>
+
+ <h2>Filter by Group</h2>
+ <ul class="slist">{group_filters}</ul>
+ <h2>Filter by Profile</h2>
+ <ul class="slist">{profile_filters}</ul>
+ <h2>Filter by Cluster</h2>
+ <ul class="slist">{cluster_filters}</ul>
+ </td>
+ <td class="view">
+ <ul class="actions">
+ <li><a href="">Register New Brokers</a></li>
+ </ul>
+ {brokers}
+ </td>
+ </tr>
+</div>
+
+[BrokerBrowser.group_html]
+<li>{group_link}</li>
+
+[BrokerBrowser.profile_html]
+<li>{profile_link}</li>
+
+[BrokerBrowser.cluster_html]
+<li>{cluster_link}</li>
Copied: mgmt/cumin/python/cumin/brokergroup.py (from rev 1155, mgmt/cumin/python/cumin/servergroup.py)
===================================================================
--- mgmt/cumin/python/cumin/brokergroup.py (rev 0)
+++ mgmt/cumin/python/cumin/brokergroup.py 2007-10-24 15:38:06 UTC (rev 1156)
@@ -0,0 +1,132 @@
+from wooly import *
+from wooly.widgets import *
+
+from broker import BrokerSet
+from model import *
+from widgets import *
+from parameters import *
+from util import *
+
+strings = StringCatalog(__file__)
+
+class BrokerGroupSet(ItemSet):
+ def render_title(self, session, model):
+ return "Broker Groups (%i)" % len(model.get_broker_groups())
+
+ def render_group_add_href(self, session, model):
+ branch = session.branch()
+ self.page().show_broker_group_add(branch)
+ return branch.marshal()
+
+ def get_items(self, session, model):
+ return sorted_by(model.get_broker_groups())
+
+ def render_item_link(self, session, group):
+ href = self.page().broker_group_href(session, group)
+ return mlink(href, "BrokerGroup", group.name)
+
+ def render_item_config(self, session, group):
+ count = len(group.broker_items())
+ return "%i broker%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 BrokerGroupFrame(CuminFrame):
+ def __init__(self, app, name):
+ super(BrokerGroupFrame, self).__init__(app, name)
+
+ self.param = BrokerGroupParameter(app, "id")
+ self.add_parameter(self.param)
+ self.set_object_parameter(self.param)
+
+ self.view = BrokerGroupView(app, "view")
+ self.add_child(self.view)
+ self.set_view_mode(self.view)
+
+ self.edit = BrokerGroupEdit(app, "edit")
+ self.add_child(self.edit)
+ self.set_edit_mode(self.edit)
+
+ def render_title(self, session, group):
+ return "Broker Group '%s'" % group.name
+
+class BrokerGroupView(Widget):
+ def __init__(self, app, name):
+ super(BrokerGroupView, self).__init__(app, name)
+
+ self.tabs = TabSet(app, "tabs")
+ self.add_child(self.tabs)
+
+ self.tabs.add_tab(self.GroupBrokerTab(app, "brokers"))
+
+ def render_title(self, session, group):
+ return "Broker Group '%s'" % group.name
+
+ def render_name(self, session, group):
+ return group.name
+
+ def render_category(self, session, group):
+ return group.get_type().name
+
+ def render_edit_href(self, session, group):
+ branch = session.branch()
+ self.page().show_broker_group(branch, group).show_edit(branch)
+ return branch.marshal()
+
+ class GroupBrokerTab(BrokerSet):
+ def get_items(self, session, group):
+ return sorted_by(group.broker_items())
+
+ def render_title(self, session, group):
+ return "Brokers (%i)" % len(group.broker_items())
+
+class BrokerGroupForm(CuminForm):
+ def __init__(self, app, name):
+ super(BrokerGroupForm, self).__init__(app, name)
+
+ self.group_name = TextInput(app, "name", self)
+ self.add_child(self.group_name)
+
+ def process_group(self, session, group):
+ group.lock()
+ try:
+ group.name = self.group_name.get(session)
+ group.set_type(self.app.model.get_broker_group_types()[0])
+ finally:
+ group.unlock()
+
+ branch = session.branch()
+ self.page().show_broker_group(branch, group).show_view(branch)
+ session.set_redirect(branch.marshal())
+
+class BrokerGroupAdd(BrokerGroupForm, Frame):
+ def process_cancel(self, session, model):
+ branch = session.branch()
+ self.page().show_view(branch)
+ session.set_redirect(branch.marshal())
+
+ def process_submit(self, session, model):
+ group = BrokerGroup(model)
+ self.process_group(session, group)
+
+ def render_title(self, session, model):
+ return "Add Group"
+
+class BrokerGroupEdit(BrokerGroupForm, Frame):
+ def process_cancel(self, session, group):
+ branch = session.branch()
+ self.parent.show_view(branch)
+ session.set_redirect(branch.marshal())
+
+ def process_submit(self, session, group):
+ self.process_group(session, group)
+
+ def process_display(self, session, group):
+ self.group_name.set(session, group.name)
+
+ def render_title(self, session, group):
+ return "Edit Group '%s'" % group.name
Copied: mgmt/cumin/python/cumin/brokergroup.strings (from rev 1155, mgmt/cumin/python/cumin/servergroup.strings)
===================================================================
--- mgmt/cumin/python/cumin/brokergroup.strings (rev 0)
+++ mgmt/cumin/python/cumin/brokergroup.strings 2007-10-24 15:38:06 UTC (rev 1156)
@@ -0,0 +1,74 @@
+[BrokerGroupSet.html]
+<ul class="actions">
+ <li><a href="{group_add_href}">Add Broker Group</a></li>
+</ul>
+
+<button>Shutdown</button>
+<button>Remove</button>
+
+<br/><br/>
+
+<table class="mobjects">
+ <tr>
+ <th><input type="checkbox"/></th>
+ <th>Broker Group</th>
+ <th>Configuration</th>
+ <th>Status</th>
+ </tr>
+
+ {items}
+</table>
+
+[BrokerGroupSet.item_html]
+<tr>
+ <td><input type="checkbox"/></td>
+ <td>{item_link}</td>
+ <td>{item_config}</td>
+ <td>{item_status}</td>
+</tr>
+
+[BrokerGroupView.html]
+<div class="mstatus green" id="{id}">
+ <h2>Broker Group Status</h2>
+
+ <div>0 errors, 0 warnings</div>
+</div>
+
+<h1>{title}</h1>
+
+<dl class="properties">
+ <dt>Name</dt><dd>{name}</dd>
+ <dt>Category</dt><dd>{category}</dd>
+</dl>
+
+<ul class="actions">
+ <li><a href="{edit_href}">Edit This Broker Group</a></li>
+ <li><a href="">Remove This Broker Group</a></li>
+</ul>
+
+{tabs}
+
+[BrokerGroupForm.html]
+<form id="{id}" class="BrokerGroupForm mform" method="post" action="?">
+ <div class="head">
+ <h1>{title}</h1>
+ </div>
+ <div class="body">
+ <span class="legend">Name</span>
+ <fieldset>{name}</fieldset>
+
+ {hidden_inputs}
+ </div>
+ <div class="foot">
+ <div style="display: block; float: left;"><button>Help</button></div>
+ {cancel}
+ {submit}
+ </div>
+</form>
+<script defer="defer">
+(function() {
+ var elem = wooly.doc().elem("{id}").node.elements[1];
+ elem.focus();
+ elem.select();
+}())
+</script>
Copied: mgmt/cumin/python/cumin/brokerprofile.py (from rev 1155, mgmt/cumin/python/cumin/serverprofile.py)
===================================================================
--- mgmt/cumin/python/cumin/brokerprofile.py (rev 0)
+++ mgmt/cumin/python/cumin/brokerprofile.py 2007-10-24 15:38:06 UTC (rev 1156)
@@ -0,0 +1,87 @@
+from wooly import *
+from wooly.widgets import *
+
+from configproperty import *
+from broker import *
+from widgets import *
+from parameters import *
+from util import *
+
+strings = StringCatalog(__file__)
+
+class BrokerProfileSet(ItemSet):
+ def get_items(self, session, model):
+ return sorted_by(model.get_broker_profiles())
+
+ def render_item_link(self, session, profile):
+ branch = session.branch()
+ frame = self.page().show_broker_profile(branch, profile)
+ frame.show_view(branch)
+ return mlink(branch.marshal(), "BrokerProfile", profile.name)
+
+class BrokerProfileFrame(CuminFrame):
+ def __init__(self, app, name):
+ super(BrokerProfileFrame, self).__init__(app, name)
+
+ self.param = BrokerProfileParameter(app, "id")
+ self.add_parameter(self.param)
+ self.set_object_parameter(self.param)
+
+ self.view = BrokerProfileView(app, "view")
+ self.add_mode(self.view)
+
+ def show_view(self, session):
+ return self.show_mode(session, self.view)
+
+ def render_title(self, session, profile):
+ return "Broker Profile '%s'" % profile.name
+
+class BrokerProfileView(Widget):
+ def __init__(self, app, name):
+ super(BrokerProfileView, self).__init__(app, name)
+
+ self.tabs = TabSet(app, "tabs")
+ self.add_child(self.tabs)
+
+ self.tabs.add_tab(self.ProfileConfigTab(app, "config"))
+ self.tabs.add_tab(self.ProfileBrokerTab(app, "brokers"))
+
+ def render_title(self, session, profile):
+ return "Broker Profile '%s'" % profile.name
+
+ def render_name(self, session, profile):
+ return profile.name
+
+ class ProfileConfigTab(ConfigPropertySet):
+ def get_items(self, session, profile):
+ return sorted_by(profile.config_property_items())
+
+ def render_title(self, session, profile):
+ return "Configuration"
+
+ class ProfileBrokerTab(BrokerSet):
+ def __init__(self, app, name):
+ super(BrokerProfileView.ProfileBrokerTab, self).__init__(app, name)
+
+ def render_title(self, session, profile):
+ return "Brokers (%i)" % len(profile.broker_items())
+
+ def get_items(self, session, profile):
+ return sorted_by(profile.broker_items())
+
+ def render_item_config_href(self, session, broker):
+ branch = session.branch()
+ frame = self.page().show_broker(branch, broker)
+ frame.show_view(branch).show_config(branch)
+ return branch.marshal()
+
+ def render_item_config_status(self, session, broker):
+ diffs = 0
+
+ for prop in broker.get_broker_profile().config_property_items():
+ for iprop in broker.config_property_items():
+ if iprop.name == prop.name:
+ if iprop.value != prop.value:
+ diffs += 1
+
+ return "%i difference(s)" % diffs
Copied: mgmt/cumin/python/cumin/brokerprofile.strings (from rev 1155, mgmt/cumin/python/cumin/serverprofile.strings)
===================================================================
--- mgmt/cumin/python/cumin/brokerprofile.strings (rev 0)
+++ mgmt/cumin/python/cumin/brokerprofile.strings 2007-10-24 15:38:06 UTC (rev 1156)
@@ -0,0 +1,71 @@
+[BrokerProfileSet.html]
+<table class="BrokerProfileSet mobjects">
+ <tr>
+ <th>Broker Profile</th>
+ </tr>
+
+ {items}
+</table>
+
+[BrokerProfileSet.item_html]
+<tr>
+ <td>{item_link}</td>
+</tr>
+
+[BrokerProfileView.html]
+<div class="oblock">
+ <h1>{title}</h1>
+
+ <dl class="properties">
+ <dt>Name</dt><dd>{name}</dd>
+ </dl>
+
+ <ul class="actions">
+ <li><a href="">Edit This Profile</a></li>
+ </ul>
+
+ {tabs}
+</div>
+
+[ProfileConfigTab.html]
+<ul class="actions">
+ <li><a href="">Add Property</a></li>
+</ul>
+
+<table class="mobjects">
+ <tr>
+ <th>Property</th>
+ <th>Configured Value</th>
+ <th></th>
+ </tr>
+
+ {items}
+</table>
+
+[ProfileConfigTab.item_html]
+<tr>
+ <td>{item_name}</td>
+ <td>{item_value}</td>
+ <td><a class="action" href="">Edit</a></td>
+</tr>
+
+[ProfileBrokerTab.html]
+<ul class="actions">
+ <li><a href="">Apply Profile Configuration to Brokers</a></li>
+</ul>
+
+<table class="mobjects">
+ <tr>
+ <th>Broker</th>
+ <th>Configuration Status</th>
+ <th></th>
+ </tr>
+
+ {items}
+</table>
+
+[ProfileBrokerTab.item_html]
+<tr>
+ <td>{item_link}</td>
+ <td><a href="{item_config_href}">{item_config_status}</a></td>
+</tr>
Deleted: mgmt/cumin/python/cumin/server.py
===================================================================
--- mgmt/cumin/python/cumin/server.py 2007-10-24 15:31:43 UTC (rev 1155)
+++ mgmt/cumin/python/cumin/server.py 2007-10-24 15:38:06 UTC (rev 1156)
@@ -1,401 +0,0 @@
-from wooly import *
-from wooly.widgets import *
-
-from configproperty import *
-from virtualhost import *
-from widgets import *
-from parameters import *
-from util import *
-from random import random
-
-strings = StringCatalog(__file__)
-
-class BrokerSet(ItemSet):
- def render_title(self, session, model):
- return "Brokers (%i)" % len(model.get_brokers())
-
- def get_items(self, session, model):
- return sorted_by(model.get_brokers())
-
- def render_item_link(self, session, broker):
- branch = session.branch()
- self.page().show_broker(branch, broker).show_view(branch)
-
- return mlink(branch.marshal(), "Broker", broker.name)
-
- def render_item_group_link(self, session, broker):
- group = broker.get_broker_group()
-
- if group:
- branch = session.branch()
- self.page().show_broker_group(branch, group).show_view(branch)
-
- return mlink(branch.marshal(), "BrokerGroup", group.name)
- else:
- return none()
-
- def render_item_profile_link(self, session, broker):
- profile = broker.get_broker_profile()
-
- if profile:
- branch = session.branch()
- self.page().show_broker_profile(branch, profile).show_view(branch)
-
- return mlink(branch.marshal(), "BrokerProfile", profile.name)
- else:
- return none()
-
- def render_item_cluster_link(self, session, broker):
- cluster = broker.get_cluster()
-
- if cluster:
- branch = session.branch()
- self.page().show_cluster(branch, cluster).show_view(branch)
-
- return mlink(branch.marshal(), "Cluster", cluster.name)
- else:
- return none()
-
- def render_item_status(self, session, broker):
- return "0 errors, 0 warnings"
-
- def render_item_load(self, session, broker):
- return "%.2f" % random()
-
-class BrokerSetForm(BrokerSet, Form):
- def __init__(self, app, name):
- super(BrokerSetForm, self).__init__(app, name)
-
- self.broker = BrokerParameter(app, "param")
- self.add_parameter(self.broker)
- self.add_form_parameter(self.broker)
-
- self.brokers = ListParameter(app, "ids", self.broker)
- self.add_parameter(self.brokers)
- self.add_form_parameter(self.brokers)
-
- self.submit = self.Submit(app, "submit", self)
- self.add_child(self.submit)
-
- def do_process(self, session, model):
- if self.submit.get(session):
- self.submit.set(session, False)
-
- for broker in self.brokers.get(session):
- print "broker", broker
-
- session.set_redirect(session.marshal())
-
- def render_item_checkbox_name(self, session, broker):
- return self.brokers.path()
-
- def render_item_checkbox_value(self, session, broker):
- return self.broker.marshal(broker)
-
- def render_item_checkbox_checked_attr(self, session, broker):
- return broker in self.brokers.get(session) and "checked=\"checked\""
-
- class Submit(FormButton):
- def render_content(self, session, model):
- return "Submit"
-
-class BrokerFrame(CuminFrame):
- def __init__(self, app, name):
- super(BrokerFrame, self).__init__(app, name)
-
- self.param = BrokerParameter(app, "id")
- self.add_parameter(self.param)
- self.set_object_parameter(self.param)
-
- self.view = BrokerView(app, "view")
- self.add_mode(self.view)
-
- self.vhost = VirtualHostFrame(app, "vhost")
- self.add_mode(self.vhost)
-
- self.prop = BrokerConfigPropertyForm(app, "prop")
- self.add_mode(self.prop)
-
- def show_view(self, session):
- return self.show_mode(session, self.view)
-
- def show_virtual_host(self, session, vhost):
- self.vhost.set_object(session, vhost)
- return self.show_mode(session, self.vhost)
-
- def show_config_property(self, session, prop):
- self.prop.set_config_property(session, prop)
- frame = self.show_mode(session, self.prop)
- return self.page().set_current_frame(session, frame)
-
- def render_title(self, session, broker):
- return "Broker '%s'" % broker.name
-
-class BrokerConfigPropertyForm(CuminForm, Frame):
- def __init__(self, app, name):
- super(BrokerConfigPropertyForm, self).__init__(app, name)
-
- self.param = ConfigPropertyParameter(app, "param")
- self.add_parameter(self.param)
-
- self.source = Parameter(app, "source")
- self.source.set_default("local")
- self.add_parameter(self.source)
-
- self.profile = RadioInput(app, "profile", self)
- self.profile.set_parameter(self.source)
- self.profile.set_value("profile")
- self.add_child(self.profile)
-
- self.pvalue = TextInput(app, "profile_value", self)
- self.pvalue.set_disabled(True)
- self.add_child(self.pvalue)
-
- self.broker = RadioInput(app, "broker", self)
- self.broker.set_parameter(self.source)
- self.broker.set_value("broker")
- self.add_child(self.broker)
-
- self.svalue = TextInput(app, "broker_value", self)
- self.svalue.set_disabled(True)
- self.add_child(self.svalue)
-
- self.local = RadioInput(app, "local", self)
- self.local.set_parameter(self.source)
- self.local.set_value("local")
- self.add_child(self.local)
-
- self.lvalue = TextInput(app, "local_value", self)
- self.add_child(self.lvalue)
-
- def get_object(self, session, object):
- return self.param.get(session)
-
- def set_config_property(self, session, prop):
- return self.param.set(session, prop)
-
- def process_cancel(self, session, prop):
- branch = session.branch()
- self.page().show_broker(branch, prop.get_broker()).show_view(branch)
- session.set_redirect(branch.marshal())
-
- def process_submit(self, session, prop):
- source = self.source.get(session)
-
- if source == "profile":
- prop.value = get_profile_value(prop)
- elif source == "broker":
- prop.value = prop.broker_value
- elif source == "local":
- prop.value = self.lvalue.get(session)
- else:
- raise Exception()
-
- self.process_cancel(session, prop)
-
- def process_display(self, session, prop):
- self.pvalue.set(session, get_profile_value(prop))
- self.svalue.set(session, prop.broker_value)
- self.lvalue.set(session, prop.value)
-
- def render_title(self, session, prop):
- return "Edit Property '%s'" % prop.name
-
-def get_profile_value(prop):
- profile = prop.get_broker().get_broker_profile()
- value = None
-
- if profile:
- for p in profile.config_property_items():
- if p.name == prop.name:
- value = p.value
-
- return value
-
-class BrokerView(Widget):
- def __init__(self, app, name):
- super(BrokerView, self).__init__(app, name)
-
- self.tabs = TabSet(app, "tabs")
- self.add_child(self.tabs)
-
- self.tabs.add_tab(self.BrokerVirtualHostTab(app, "vhosts"))
- self.config = self.BrokerConfigTab(app, "config")
- self.tabs.add_tab(self.config)
- self.tabs.add_tab(self.BrokerStatsTab(app, "stats"))
- self.tabs.add_tab(self.BrokerLogTab(app, "log"))
-
- def show_config(self, session):
- return self.tabs.show_mode(session, self.config)
-
- def render_title(self, session, broker):
- return "Broker '%s'" % broker.name
-
- def render_name(self, session, broker):
- return broker.name
-
- def render_cluster_link(self, session, broker):
- cluster = broker.get_cluster()
-
- if cluster:
- branch = session.branch()
- self.page().show_cluster(branch, cluster).show_view(branch)
- html = mlink(branch.marshal(), "Cluster", cluster.name)
- else:
- html = none()
-
- return html
-
- def render_profile_link(self, session, broker):
- profile = broker.get_broker_profile()
-
- if profile:
- branch = session.branch()
- self.page().show_broker_profile(branch, profile).show_view(branch)
- html = mlink(branch.marshal(), "BrokerProfile", profile.name)
- else:
- html = none()
-
- return html
-
- def render_version(self, session, broker):
- return "1.0"
-
- class BrokerVirtualHostTab(VirtualHostSet):
- def render_title(self, session, broker):
- return "Functional Hosts (%i)" % len(broker.virtual_host_items())
-
- def get_items(self, session, broker):
- return sorted_by(broker.virtual_host_items())
-
- class BrokerConfigTab(ConfigPropertySet):
- def render_title(self, session, broker):
- return "Configuration"
-
- def get_items(self, session, broker):
- return sorted_by(broker.config_property_items())
-
- def maybe_highlight(self, value, comparedto):
- if str(value) != str(comparedto):
- value = "<span class=\"BrokerConfigTab diff\">%s</span>" \
- % value
-
- return value
-
- def render_item_broker_value(self, session, prop):
- return self.maybe_highlight(prop.broker_value, prop.value)
-
- def render_item_profile_value(self, session, prop):
- value = get_profile_value(prop)
- return self.maybe_highlight(value, prop.value)
-
- def render_item_edit_href(self, session, prop):
- branch = session.branch()
- frame = self.page().show_broker(branch, prop.get_broker())
- frame.show_config_property(branch, prop)
- return branch.marshal()
-
- class BrokerStatsTab(Widget):
- def render_title(self, session, broker):
- return "Statistics"
-
- class BrokerLogTab(Widget):
- def render_title(self, session, broker):
- return "Log Messages"
-
-class BrokerBrowser(Widget):
- def __init__(self, app, name):
- super(BrokerBrowser, self).__init__(app, name)
-
- self.group_tmpl = Template(self, "group_html")
- self.profile_tmpl = Template(self, "profile_html")
- self.cluster_tmpl = Template(self, "cluster_html")
-
- self.group = BrokerGroupParameter(app, "group")
- self.add_parameter(self.group)
-
- self.profile = BrokerProfileParameter(app, "profile")
- self.add_parameter(self.profile)
-
- self.cluster = ClusterParameter(app, "cluster")
- self.add_parameter(self.cluster)
-
- self.brokers = self.BrowserBrokers(app, "brokers")
- self.add_child(self.brokers)
-
- class BrowserBrokers(BrokerSetForm):
- def get_items(self, session, model):
- brokers = sorted_by(model.get_brokers())
- group = self.parent.group.get(session)
- profile = self.parent.profile.get(session)
- cluster = self.parent.cluster.get(session)
-
- for broker in model.get_brokers():
- if group and group not in broker.broker_group_items():
- brokers.remove(broker)
-
- if profile and profile is not broker.get_broker_profile():
- try:
- brokers.remove(broker)
- except ValueError:
- pass
-
- if cluster and cluster is not broker.get_cluster():
- try:
- brokers.remove(broker)
- except ValueError:
- pass
-
- return brokers
-
- def render_none(self, session, model):
- return none()
-
- def render_clear_filters_href(self, session, model):
- branch = session.branch()
- self.group.set(branch, None)
- self.profile.set(branch, None)
- self.cluster.set(branch, None)
- return branch.marshal()
-
- def render_group_filters(self, session, model):
- groups = sorted_by(model.get_broker_groups())
- return self._render_filters(session, groups, self.group_tmpl)
-
- def render_group_link(self, session, group):
- return self._render_filter_link(session, group, self.group)
-
- def render_profile_filters(self, session, model):
- profiles = sorted_by(model.get_broker_profiles())
- return self._render_filters(session, profiles, self.profile_tmpl)
-
- def render_profile_link(self, session, profile):
- return self._render_filter_link(session, profile, self.profile)
-
- def render_cluster_filters(self, session, model):
- clusters = sorted_by(model.get_clusters())
- return self._render_filters(session, clusters, self.cluster_tmpl)
-
- def render_cluster_link(self, session, cluster):
- return self._render_filter_link(session, cluster, self.cluster)
-
- def _render_filters(self, session, collection, template):
- writer = Writer()
-
- for object in collection:
- template.render(session, object, writer)
-
- template.render(session, None, writer)
-
- return writer.to_string()
-
- def _render_filter_link(self, session, object, param):
- branch = session.branch()
- param.set(branch, object)
- href = branch.marshal()
-
- name = object and object.name or "Any"
-
- class_ = param.get(session) is object and "selected"
-
- return link(href, name, class_)
Deleted: mgmt/cumin/python/cumin/server.strings
===================================================================
--- mgmt/cumin/python/cumin/server.strings 2007-10-24 15:31:43 UTC (rev 1155)
+++ mgmt/cumin/python/cumin/server.strings 2007-10-24 15:38:06 UTC (rev 1156)
@@ -1,195 +0,0 @@
-[BrokerSet.html]
-<table class="mobjects">
- <tr>
- <th>Broker</th>
- <th>Profile</th>
- <th>Cluster</th>
- <th>Status</th>
- </tr>
-
- {items}
-</table>
-
-[BrokerSet.item_html]
-<tr>
- <td>{item_link}</td>
- <td>{item_profile_link}</td>
- <td>{item_cluster_link}</td>
- <td>0 errors, 0 warnings</td>
-</tr>
-
-[BrokerSetForm.html]
-<form id="{id}" method="post" action="?">
- <!-- <select onchange="document.getElementById('{id}.submit').submit()"> -->
- <select>
- <option>Act on Selection...</option>
- <optgroup label="Actions">
- <option>Shutdown</option>
- <option>Load Balance</option>
- </optgroup>
- <optgroup label="Add to Group">
- <option>East Coast</option>
- <option>West Coast</option>
- <option>Marketing</option>
- <option>Sales</option>
- </optgroup>
- </select>
- {submit}
- <br/><br/>
-
- <table class="mobjects">
- <tr>
- <th><input type="checkbox"/></th>
- <th>Broker</th>
- <th>Profile</th>
- <th>Cluster</th>
- <th>Status</th>
- <th>Load</th>
- </tr>
-
- {items}
- </table>
- {hidden_inputs}
-</form>
-
-[BrokerSetForm.item_html]
-<tr>
- <td><input type="checkbox" name="{item_checkbox_name}" value="{item_checkbox_value}" {item_checkbox_checked_attr}/></td>
- <td>{item_link}</td>
- <td>{item_profile_link}</td>
- <td>{item_cluster_link}</td>
- <td>{item_status}</td>
- <td>{item_load}</td>
-</tr>
-
-[BrokerConfigTab.css]
-.BrokerConfigTab.diff {
- background-color: #ff9;
-}
-
-[BrokerConfigTab.html]
-<ul class="actions">
- <li><a href="">Apply Configuration to Broker</a></li>
- <li><a href="">Add Property</a></li>
-</ul>
-
-<table class="mobjects">
- <tr>
- <th>Property</th>
- <th>Configured Value</th>
- <th>Broker Value</th>
- <th>Profile Value</th>
- <th></th>
- </tr>
-
- {items}
-</table>
-
-[BrokerConfigTab.item_html]
-<tr>
- <td>{item_name}</td>
- <td>{item_value}</td>
- <td>{item_broker_value}</td>
- <td>{item_profile_value}</td>
- <td><a class="action" href="{item_edit_href}">Edit</a></td>
-</tr>
-
-[BrokerConfigPropertyForm.css]
-.BrokerConfigPropertyForm div.value {
- margin: 1em 2em;
-}
-
-[BrokerConfigPropertyForm.html]
-<form id="{id}" class="BrokerConfigPropertyForm mform" method="post" action="?">
- <div class="head">
- <h1>{title}</h1>
- </div>
- <div class="body">
- <span class="legend">Value</span>
- <fieldset>
- <div class="field">
- {profile} Use the value from the broker profile
- <div class="value">{profile_value}</div>
- </div>
- <div class="field">
- {broker} Use the value currently set on the broker
- <div class="value">{broker_value}</div>
- </div>
- <div class="field">
- {local} Set a new value
- <div class="value">{local_value}</div>
- </div>
- </fieldset>
-
- {hidden_inputs}
- </div>
- <div class="foot">
- <div style="display: block; float: left;"><button>Help</button></div>
- {cancel}
- {submit}
- </div>
-</form>
-<script defer="defer">
-(function() {
- var elem = wooly.doc().elem("{id}").node.elements[1];
- elem.focus();
- elem.select();
-}())
-</script>
-
-[BrokerView.html]
-<div class="oblock">
- <div class="mstatus green" id="{id}">
- <h2>Broker Status</h2>
-
- <div>0 errors, 0 warnings</div>
- </div>
-
- <h1>{title}</h1>
-
- <dl class="properties">
- <dt>Name</dt><dd>{name}</dd>
- <dt>Cluster</dt><dd>{cluster_link}</dd>
- <dt>Broker Profile</dt><dd>{profile_link}</dd>
- <dt>Software Version</dt><dd>{version}</dd>
- </dl>
-
- <ul class="actions">
- <li><a href="">Shutdown This Broker</a></li>
- </ul>
-
- {tabs}
-</div>
-
-[BrokerBrowser.html]
-<table class="browser">
- <tr>
- <td class="nav">
- <ul class="actions">
- <li><a href="{clear_filters_href}">Clear Filters</a></li>
- </ul>
-
- <h2>Filter by Group</h2>
- <ul class="slist">{group_filters}</ul>
- <h2>Filter by Profile</h2>
- <ul class="slist">{profile_filters}</ul>
- <h2>Filter by Cluster</h2>
- <ul class="slist">{cluster_filters}</ul>
- </td>
- <td class="view">
- <ul class="actions">
- <li><a href="">Register New Brokers</a></li>
- </ul>
- {brokers}
- </td>
- </tr>
-</div>
-
-[BrokerBrowser.group_html]
-<li>{group_link}</li>
-
-[BrokerBrowser.profile_html]
-<li>{profile_link}</li>
-
-[BrokerBrowser.cluster_html]
-<li>{cluster_link}</li>
Deleted: mgmt/cumin/python/cumin/servergroup.py
===================================================================
--- mgmt/cumin/python/cumin/servergroup.py 2007-10-24 15:31:43 UTC (rev 1155)
+++ mgmt/cumin/python/cumin/servergroup.py 2007-10-24 15:38:06 UTC (rev 1156)
@@ -1,132 +0,0 @@
-from wooly import *
-from wooly.widgets import *
-
-from broker import BrokerSet
-from model import *
-from widgets import *
-from parameters import *
-from util import *
-
-strings = StringCatalog(__file__)
-
-class BrokerGroupSet(ItemSet):
- def render_title(self, session, model):
- return "Broker Groups (%i)" % len(model.get_broker_groups())
-
- def render_group_add_href(self, session, model):
- branch = session.branch()
- self.page().show_broker_group_add(branch)
- return branch.marshal()
-
- def get_items(self, session, model):
- return sorted_by(model.get_broker_groups())
-
- def render_item_link(self, session, group):
- href = self.page().broker_group_href(session, group)
- return mlink(href, "BrokerGroup", group.name)
-
- def render_item_config(self, session, group):
- count = len(group.broker_items())
- return "%i broker%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 BrokerGroupFrame(CuminFrame):
- def __init__(self, app, name):
- super(BrokerGroupFrame, self).__init__(app, name)
-
- self.param = BrokerGroupParameter(app, "id")
- self.add_parameter(self.param)
- self.set_object_parameter(self.param)
-
- self.view = BrokerGroupView(app, "view")
- self.add_child(self.view)
- self.set_view_mode(self.view)
-
- self.edit = BrokerGroupEdit(app, "edit")
- self.add_child(self.edit)
- self.set_edit_mode(self.edit)
-
- def render_title(self, session, group):
- return "Broker Group '%s'" % group.name
-
-class BrokerGroupView(Widget):
- def __init__(self, app, name):
- super(BrokerGroupView, self).__init__(app, name)
-
- self.tabs = TabSet(app, "tabs")
- self.add_child(self.tabs)
-
- self.tabs.add_tab(self.GroupBrokerTab(app, "brokers"))
-
- def render_title(self, session, group):
- return "Broker Group '%s'" % group.name
-
- def render_name(self, session, group):
- return group.name
-
- def render_category(self, session, group):
- return group.get_type().name
-
- def render_edit_href(self, session, group):
- branch = session.branch()
- self.page().show_broker_group(branch, group).show_edit(branch)
- return branch.marshal()
-
- class GroupBrokerTab(BrokerSet):
- def get_items(self, session, group):
- return sorted_by(group.broker_items())
-
- def render_title(self, session, group):
- return "Brokers (%i)" % len(group.broker_items())
-
-class BrokerGroupForm(CuminForm):
- def __init__(self, app, name):
- super(BrokerGroupForm, self).__init__(app, name)
-
- self.group_name = TextInput(app, "name", self)
- self.add_child(self.group_name)
-
- def process_group(self, session, group):
- group.lock()
- try:
- group.name = self.group_name.get(session)
- group.set_type(self.app.model.get_broker_group_types()[0])
- finally:
- group.unlock()
-
- branch = session.branch()
- self.page().show_broker_group(branch, group).show_view(branch)
- session.set_redirect(branch.marshal())
-
-class BrokerGroupAdd(BrokerGroupForm, Frame):
- def process_cancel(self, session, model):
- branch = session.branch()
- self.page().show_view(branch)
- session.set_redirect(branch.marshal())
-
- def process_submit(self, session, model):
- group = BrokerGroup(model)
- self.process_group(session, group)
-
- def render_title(self, session, model):
- return "Add Group"
-
-class BrokerGroupEdit(BrokerGroupForm, Frame):
- def process_cancel(self, session, group):
- branch = session.branch()
- self.parent.show_view(branch)
- session.set_redirect(branch.marshal())
-
- def process_submit(self, session, group):
- self.process_group(session, group)
-
- def process_display(self, session, group):
- self.group_name.set(session, group.name)
-
- def render_title(self, session, group):
- return "Edit Group '%s'" % group.name
Deleted: mgmt/cumin/python/cumin/servergroup.strings
===================================================================
--- mgmt/cumin/python/cumin/servergroup.strings 2007-10-24 15:31:43 UTC (rev 1155)
+++ mgmt/cumin/python/cumin/servergroup.strings 2007-10-24 15:38:06 UTC (rev 1156)
@@ -1,74 +0,0 @@
-[BrokerGroupSet.html]
-<ul class="actions">
- <li><a href="{group_add_href}">Add Broker Group</a></li>
-</ul>
-
-<button>Shutdown</button>
-<button>Remove</button>
-
-<br/><br/>
-
-<table class="mobjects">
- <tr>
- <th><input type="checkbox"/></th>
- <th>Broker Group</th>
- <th>Configuration</th>
- <th>Status</th>
- </tr>
-
- {items}
-</table>
-
-[BrokerGroupSet.item_html]
-<tr>
- <td><input type="checkbox"/></td>
- <td>{item_link}</td>
- <td>{item_config}</td>
- <td>{item_status}</td>
-</tr>
-
-[BrokerGroupView.html]
-<div class="mstatus green" id="{id}">
- <h2>Broker Group Status</h2>
-
- <div>0 errors, 0 warnings</div>
-</div>
-
-<h1>{title}</h1>
-
-<dl class="properties">
- <dt>Name</dt><dd>{name}</dd>
- <dt>Category</dt><dd>{category}</dd>
-</dl>
-
-<ul class="actions">
- <li><a href="{edit_href}">Edit This Broker Group</a></li>
- <li><a href="">Remove This Broker Group</a></li>
-</ul>
-
-{tabs}
-
-[BrokerGroupForm.html]
-<form id="{id}" class="BrokerGroupForm mform" method="post" action="?">
- <div class="head">
- <h1>{title}</h1>
- </div>
- <div class="body">
- <span class="legend">Name</span>
- <fieldset>{name}</fieldset>
-
- {hidden_inputs}
- </div>
- <div class="foot">
- <div style="display: block; float: left;"><button>Help</button></div>
- {cancel}
- {submit}
- </div>
-</form>
-<script defer="defer">
-(function() {
- var elem = wooly.doc().elem("{id}").node.elements[1];
- elem.focus();
- elem.select();
-}())
-</script>
Deleted: mgmt/cumin/python/cumin/serverprofile.py
===================================================================
--- mgmt/cumin/python/cumin/serverprofile.py 2007-10-24 15:31:43 UTC (rev 1155)
+++ mgmt/cumin/python/cumin/serverprofile.py 2007-10-24 15:38:06 UTC (rev 1156)
@@ -1,87 +0,0 @@
-from wooly import *
-from wooly.widgets import *
-
-from configproperty import *
-from broker import *
-from widgets import *
-from parameters import *
-from util import *
-
-strings = StringCatalog(__file__)
-
-class BrokerProfileSet(ItemSet):
- def get_items(self, session, model):
- return sorted_by(model.get_broker_profiles())
-
- def render_item_link(self, session, profile):
- branch = session.branch()
- frame = self.page().show_broker_profile(branch, profile)
- frame.show_view(branch)
- return mlink(branch.marshal(), "BrokerProfile", profile.name)
-
-class BrokerProfileFrame(CuminFrame):
- def __init__(self, app, name):
- super(BrokerProfileFrame, self).__init__(app, name)
-
- self.param = BrokerProfileParameter(app, "id")
- self.add_parameter(self.param)
- self.set_object_parameter(self.param)
-
- self.view = BrokerProfileView(app, "view")
- self.add_mode(self.view)
-
- def show_view(self, session):
- return self.show_mode(session, self.view)
-
- def render_title(self, session, profile):
- return "Broker Profile '%s'" % profile.name
-
-class BrokerProfileView(Widget):
- def __init__(self, app, name):
- super(BrokerProfileView, self).__init__(app, name)
-
- self.tabs = TabSet(app, "tabs")
- self.add_child(self.tabs)
-
- self.tabs.add_tab(self.ProfileConfigTab(app, "config"))
- self.tabs.add_tab(self.ProfileBrokerTab(app, "brokers"))
-
- def render_title(self, session, profile):
- return "Broker Profile '%s'" % profile.name
-
- def render_name(self, session, profile):
- return profile.name
-
- class ProfileConfigTab(ConfigPropertySet):
- def get_items(self, session, profile):
- return sorted_by(profile.config_property_items())
-
- def render_title(self, session, profile):
- return "Configuration"
-
- class ProfileBrokerTab(BrokerSet):
- def __init__(self, app, name):
- super(BrokerProfileView.ProfileBrokerTab, self).__init__(app, name)
-
- def render_title(self, session, profile):
- return "Brokers (%i)" % len(profile.broker_items())
-
- def get_items(self, session, profile):
- return sorted_by(profile.broker_items())
-
- def render_item_config_href(self, session, broker):
- branch = session.branch()
- frame = self.page().show_broker(branch, broker)
- frame.show_view(branch).show_config(branch)
- return branch.marshal()
-
- def render_item_config_status(self, session, broker):
- diffs = 0
-
- for prop in broker.get_broker_profile().config_property_items():
- for iprop in broker.config_property_items():
- if iprop.name == prop.name:
- if iprop.value != prop.value:
- diffs += 1
-
- return "%i difference(s)" % diffs
Deleted: mgmt/cumin/python/cumin/serverprofile.strings
===================================================================
--- mgmt/cumin/python/cumin/serverprofile.strings 2007-10-24 15:31:43 UTC (rev 1155)
+++ mgmt/cumin/python/cumin/serverprofile.strings 2007-10-24 15:38:06 UTC (rev 1156)
@@ -1,71 +0,0 @@
-[BrokerProfileSet.html]
-<table class="BrokerProfileSet mobjects">
- <tr>
- <th>Broker Profile</th>
- </tr>
-
- {items}
-</table>
-
-[BrokerProfileSet.item_html]
-<tr>
- <td>{item_link}</td>
-</tr>
-
-[BrokerProfileView.html]
-<div class="oblock">
- <h1>{title}</h1>
-
- <dl class="properties">
- <dt>Name</dt><dd>{name}</dd>
- </dl>
-
- <ul class="actions">
- <li><a href="">Edit This Profile</a></li>
- </ul>
-
- {tabs}
-</div>
-
-[ProfileConfigTab.html]
-<ul class="actions">
- <li><a href="">Add Property</a></li>
-</ul>
-
-<table class="mobjects">
- <tr>
- <th>Property</th>
- <th>Configured Value</th>
- <th></th>
- </tr>
-
- {items}
-</table>
-
-[ProfileConfigTab.item_html]
-<tr>
- <td>{item_name}</td>
- <td>{item_value}</td>
- <td><a class="action" href="">Edit</a></td>
-</tr>
-
-[ProfileBrokerTab.html]
-<ul class="actions">
- <li><a href="">Apply Profile Configuration to Brokers</a></li>
-</ul>
-
-<table class="mobjects">
- <tr>
- <th>Broker</th>
- <th>Configuration Status</th>
- <th></th>
- </tr>
-
- {items}
-</table>
-
-[ProfileBrokerTab.item_html]
-<tr>
- <td>{item_link}</td>
- <td><a href="{item_config_href}">{item_config_status}</a></td>
-</tr>
Modified: mgmt/notes/Todo
===================================================================
--- mgmt/notes/Todo 2007-10-24 15:31:43 UTC (rev 1155)
+++ mgmt/notes/Todo 2007-10-24 15:38:06 UTC (rev 1156)
@@ -107,3 +107,6 @@
* exch: link bindings, producers stats to respective views
* model: get rid of the old *_count stat fields and use the new ones
+
+ * Rename cluster to broker cluster, to avoid any future conflicts
+ with system clusters
18 years, 6 months
rhmessaging commits: r1155 - mgmt/cumin/python/cumin.
by rhmessaging-commits@lists.jboss.org
Author: justi9
Date: 2007-10-24 11:31:43 -0400 (Wed, 24 Oct 2007)
New Revision: 1155
Modified:
mgmt/cumin/python/cumin/cluster.py
mgmt/cumin/python/cumin/cluster.strings
mgmt/cumin/python/cumin/demo.py
mgmt/cumin/python/cumin/model.py
mgmt/cumin/python/cumin/page.py
mgmt/cumin/python/cumin/page.strings
mgmt/cumin/python/cumin/parameters.py
mgmt/cumin/python/cumin/queue.strings
mgmt/cumin/python/cumin/server.py
mgmt/cumin/python/cumin/server.strings
mgmt/cumin/python/cumin/servergroup.py
mgmt/cumin/python/cumin/servergroup.strings
mgmt/cumin/python/cumin/serverprofile.py
mgmt/cumin/python/cumin/serverprofile.strings
mgmt/cumin/python/cumin/virtualhost.py
mgmt/cumin/python/cumin/virtualhost.strings
Log:
Part 1 of a big rename from server to broker.
Modified: mgmt/cumin/python/cumin/cluster.py
===================================================================
--- mgmt/cumin/python/cumin/cluster.py 2007-10-24 14:58:02 UTC (rev 1154)
+++ mgmt/cumin/python/cumin/cluster.py 2007-10-24 15:31:43 UTC (rev 1155)
@@ -3,7 +3,7 @@
from random import random
from virtualhost import *
-from server import *
+from broker import *
from widgets import *
from parameters import *
from util import *
@@ -14,7 +14,7 @@
def __init__(self, app, name):
super(ClusterSet, self).__init__(app, name)
- self.server_tmpl = Template(self, "server_html")
+ self.broker_tmpl = Template(self, "broker_html")
def render_title(self, session, model):
return "Clusters (%i)" % len(model.get_clusters())
@@ -28,15 +28,15 @@
return mlink(branch.marshal(), "Cluster", cluster.name)
- def render_item_server_lights(self, session, cluster):
+ def render_item_broker_lights(self, session, cluster):
writer = Writer()
- for server in sorted_by(cluster.server_items()):
- self.server_tmpl.render(session, server, writer)
+ for broker in sorted_by(cluster.broker_items()):
+ self.broker_tmpl.render(session, broker, writer)
return writer.to_string()
- def render_server_status(self, session, server):
+ def render_broker_status(self, session, broker):
return random() < 0.25 and "red" or "green"
class ClusterFrame(CuminFrame):
@@ -50,8 +50,8 @@
self.view = ClusterView(app, "view")
self.add_mode(self.view)
- self.server = ServerFrame(app, "server")
- self.add_mode(self.server)
+ self.broker = BrokerFrame(app, "broker")
+ self.add_mode(self.broker)
self.vhost = VirtualHostFrame(app, "vhost")
self.add_mode(self.vhost)
@@ -59,9 +59,9 @@
def show_view(self, session):
return self.show_mode(session, self.view)
- def show_server(self, session, server):
- self.server.set_object(session, server)
- return self.show_mode(session, self.server)
+ def show_broker(self, session, broker):
+ self.broker.set_object(session, broker)
+ return self.show_mode(session, self.broker)
def show_virtual_host(self, session, vhost):
self.vhost.set_object(session, vhost)
@@ -77,7 +77,7 @@
self.tabs = TabSet(app, "tabs")
self.add_child(self.tabs)
- self.tabs.add_tab(self.ClusterServerTab(app, "servers"))
+ self.tabs.add_tab(self.ClusterBrokerTab(app, "brokers"))
self.tabs.add_tab(self.ClusterVirtualHostTab(app, "vhosts"))
self.tabs.add_tab(self.ClusterStatsTab(app, "stats"))
@@ -87,12 +87,12 @@
def render_name(self, session, cluster):
return cluster.name
- class ClusterServerTab(ServerSet):
+ class ClusterBrokerTab(BrokerSet):
def render_title(self, session, cluster):
- return "Servers (%i)" % len(cluster.server_items())
+ return "Brokers (%i)" % len(cluster.broker_items())
def get_items(self, session, cluster):
- return sorted_by(cluster.server_items())
+ return sorted_by(cluster.broker_items())
class ClusterVirtualHostTab(VirtualHostSet):
def render_title(self, session, cluster):
Modified: mgmt/cumin/python/cumin/cluster.strings
===================================================================
--- mgmt/cumin/python/cumin/cluster.strings 2007-10-24 14:58:02 UTC (rev 1154)
+++ mgmt/cumin/python/cumin/cluster.strings 2007-10-24 15:31:43 UTC (rev 1155)
@@ -1,5 +1,5 @@
[ClusterSet.css]
-div.serverlight {
+div.brokerlight {
float: left;
width: 1em;
height: 1em;
@@ -8,7 +8,7 @@
background-color: #6f6;
}
-div.serverlight.red {
+div.brokerlight.red {
background-color: red;
}
@@ -26,15 +26,15 @@
[ClusterSet.item_html]
<tr>
<td>{item_link}</td>
- <td>3 servers</td>
+ <td>3 brokers</td>
<td>
<div>0 errors, 0 warnings</div>
- <div>{item_server_lights}</div>
+ <div>{item_broker_lights}</div>
</td>
</tr>
-[ClusterSet.server_html]
-<div class="serverlight {server_status}"></div>
+[ClusterSet.broker_html]
+<div class="brokerlight {broker_status}"></div>
[ClusterView.html]
<div class="mstatus green" id="{id}">
@@ -55,14 +55,14 @@
{tabs}
-[ClusterServerTab.html]
+[ClusterBrokerTab.html]
<ul class="actions">
- <li><a href="{add_server_href}">Add Server</a></li>
+ <li><a href="{add_broker_href}">Add Broker</a></li>
</ul>
<table class="mobjects">
<tr>
- <th>Server</th>
+ <th>Broker</th>
<th>Profile</th>
<th>Status</th>
<th>Load</th>
@@ -71,7 +71,7 @@
{items}
</table>
-[ClusterServerTab.item_html]
+[ClusterBrokerTab.item_html]
<tr>
<td>{item_link}</td>
<td>{item_profile_link}</td>
Modified: mgmt/cumin/python/cumin/demo.py
===================================================================
--- mgmt/cumin/python/cumin/demo.py 2007-10-24 14:58:02 UTC (rev 1154)
+++ mgmt/cumin/python/cumin/demo.py 2007-10-24 15:31:43 UTC (rev 1155)
@@ -14,34 +14,34 @@
def load(self):
# XXX need some locking in here
- sgtypes = dict()
- sgroups = dict()
+ gtypes = dict()
+ groups = dict()
for name in ("Geography", "Department"):
- sgtype = ServerGroupType(self.model)
+ sgtype = BrokerGroupType(self.model)
sgtype.name = name
- sgtypes[name] = sgtype
+ gtypes[name] = sgtype
for name in ("West Coast", "East Coast"):
- sgroup = ServerGroup(self.model)
- sgroup.name = name
- sgroup.set_type(sgtypes["Geography"])
- sgroups[name] = sgroup
+ group = BrokerGroup(self.model)
+ group.name = name
+ group.set_type(gtypes["Geography"])
+ groups[name] = group
for name in ("Marketing", "Sales"):
- sgroup = ServerGroup(self.model)
- sgroup.name = name
- sgroup.set_type(sgtypes["Department"])
- sgroups[name] = sgroup
+ group = BrokerGroup(self.model)
+ group.name = name
+ group.set_type(gtypes["Department"])
+ groups[name] = group
- sprofiles = list()
+ profiles = list()
for name in ("4S Xserve", "2S ProLiant"):
- sprofile = ServerProfile(self.model)
- sprofile.name = name
- sprofiles.append(sprofile)
+ profile = BrokerProfile(self.model)
+ profile.name = name
+ profiles.append(profile)
- self.load_props(sprofile)
+ self.load_props(profile)
# vhost templates
for name in ("test", "devel"):
@@ -68,62 +68,62 @@
self.load_vhost(vhost)
- for server_count in range(12):
- server = Server(self.model)
- server.name = fmt("server", server_count)
+ for broker_count in range(12):
+ broker = Broker(self.model)
+ broker.name = fmt("broker", broker_count)
- self.load_props(server)
+ self.load_props(broker)
- index = server_count % 4
+ index = broker_count % 4
if index < 3:
- server.set_cluster(clusters[index])
+ broker.set_cluster(clusters[index])
- index = server_count % 3
+ index = broker_count % 3
if index < 2:
- server.set_server_profile(sprofiles[index])
+ broker.set_broker_profile(profiles[index])
- if server_count % 2:
- sgroups["East Coast"].add_server(server)
+ if broker_count % 2:
+ groups["East Coast"].add_broker(broker)
else:
- sgroups["West Coast"].add_server(server)
+ groups["West Coast"].add_broker(broker)
- if server_count % 4 < 2:
- sgroups["Marketing"].add_server(server)
+ if broker_count % 4 < 2:
+ groups["Marketing"].add_broker(broker)
else:
- sgroups["Sales"].add_server(server)
+ groups["Sales"].add_broker(broker)
vhost = VirtualHost(self.model)
vhost.name = "default"
- vhost.set_server(server)
- server.default_virtual_host = vhost
+ vhost.set_broker(broker)
+ broker.default_virtual_host = vhost
for name in ("test", "devel"):
vhost = VirtualHost(self.model)
vhost.name = name
- vhost.set_server(server)
+ vhost.set_broker(broker)
- for vhost in server.virtual_host_items():
+ for vhost in broker.virtual_host_items():
self.load_vhost(vhost)
def load_props(self, obj):
prop = ConfigProperty(self.model)
prop.name = "max_threads"
prop.value = 1000
- prop.server_value = 1000
+ prop.broker_value = 1000
prop.type = "integer"
obj.add_config_property(prop)
prop = ConfigProperty(self.model)
prop.name = "max_memory"
prop.value = 1000000
- prop.server_value = 2000000
+ prop.broker_value = 2000000
prop.type = "integer"
obj.add_config_property(prop)
prop = ConfigProperty(self.model)
prop.name = "ssl_enabled"
prop.value = True
- prop.server_value = True
+ prop.broker_value = True
prop.type = "boolean"
obj.add_config_property(prop)
@@ -188,8 +188,8 @@
while True:
sleep(1)
- for server in self.model.get_servers():
- for vhost in server.virtual_host_items():
+ for broker in self.model.get_brokers():
+ for vhost in broker.virtual_host_items():
for exchange in vhost.exchange_items():
exchange.lock()
try:
@@ -264,7 +264,7 @@
sys.stdout.write("<?xml version=\"1.0\"?><model>")
- for server in model.get_servers():
- server.write_xml(sys.stdout)
+ for broker in model.get_brokers():
+ broker.write_xml(sys.stdout)
sys.stdout.write("</model>")
Modified: mgmt/cumin/python/cumin/model.py
===================================================================
--- mgmt/cumin/python/cumin/model.py 2007-10-24 14:58:02 UTC (rev 1154)
+++ mgmt/cumin/python/cumin/model.py 2007-10-24 15:31:43 UTC (rev 1155)
@@ -6,11 +6,11 @@
super(CuminModel, self).__init__()
self.cluster = ModelClass(self, "cluster")
- self.server = ModelClass(self, "server")
- self.server_profile = ModelClass(self, "server_profile")
+ self.broker = ModelClass(self, "broker")
+ self.broker_profile = ModelClass(self, "broker_profile")
self.config_property = ModelClass(self, "config_property")
- self.server_group = ModelClass(self, "server_group")
- self.server_group_type = ModelClass(self, "server_group_type")
+ self.broker_group = ModelClass(self, "broker_group")
+ self.broker_group_type = ModelClass(self, "broker_group_type")
self.virtual_host = ModelClass(self, "virtual_host")
self.virtual_host_group = ModelClass(self, "virtual_host_group")
self.queue = ModelClass(self, "queue")
@@ -22,41 +22,41 @@
self.realm = ModelClass(self, "realm")
self.binding = ModelClass(self, "binding")
- assoc = ModelAssociation(self, "cluster_to_servers")
- assoc.add_endpoint(self.server, "cluster", "0..1")
- assoc.add_endpoint(self.cluster, "server", "0..n")
+ assoc = ModelAssociation(self, "cluster_to_brokers")
+ assoc.add_endpoint(self.broker, "cluster", "0..1")
+ assoc.add_endpoint(self.cluster, "broker", "0..n")
- assoc = ModelAssociation(self, "server_profile_to_servers")
- assoc.add_endpoint(self.server, "server_profile", "0..1")
- assoc.add_endpoint(self.server_profile, "server", "0..n")
+ assoc = ModelAssociation(self, "broker_profile_to_brokers")
+ assoc.add_endpoint(self.broker, "broker_profile", "0..1")
+ assoc.add_endpoint(self.broker_profile, "broker", "0..n")
- assoc = ModelAssociation(self, "server_profile_to_config_properties")
- assoc.add_endpoint(self.config_property, "server_profile", "0..1")
- assoc.add_endpoint(self.server_profile, "config_property", "0..n")
+ assoc = ModelAssociation(self, "broker_profile_to_config_properties")
+ assoc.add_endpoint(self.config_property, "broker_profile", "0..1")
+ assoc.add_endpoint(self.broker_profile, "config_property", "0..n")
assoc = ModelAssociation(self, "cluster_to_virtual_hosts")
assoc.add_endpoint(self.virtual_host, "cluster", "0..1")
assoc.add_endpoint(self.cluster, "virtual_host", "0..n")
- assoc = ModelAssociation(self, "server_to_config_properties")
- assoc.add_endpoint(self.config_property, "server", "0..1")
- assoc.add_endpoint(self.server, "config_property", "0..n")
+ assoc = ModelAssociation(self, "broker_to_config_properties")
+ assoc.add_endpoint(self.config_property, "broker", "0..1")
+ assoc.add_endpoint(self.broker, "config_property", "0..n")
- assoc = ModelAssociation(self, "server_to_virtual_hosts")
- assoc.add_endpoint(self.virtual_host, "server", "0..1")
- assoc.add_endpoint(self.server, "virtual_host", "0..n")
+ assoc = ModelAssociation(self, "broker_to_virtual_hosts")
+ assoc.add_endpoint(self.virtual_host, "broker", "0..1")
+ assoc.add_endpoint(self.broker, "virtual_host", "0..n")
- assoc = ModelAssociation(self, "server_groups_to_servers")
- assoc.add_endpoint(self.server, "server_group", "0..n")
- assoc.add_endpoint(self.server_group, "server", "0..n")
+ assoc = ModelAssociation(self, "broker_groups_to_brokers")
+ assoc.add_endpoint(self.broker, "broker_group", "0..n")
+ assoc.add_endpoint(self.broker_group, "broker", "0..n")
- assoc = ModelAssociation(self, "server_groups_to_server_group_type")
- assoc.add_endpoint(self.server_group_type, "server_group", "0..n")
- assoc.add_endpoint(self.server_group, "type", "0..1")
+ assoc = ModelAssociation(self, "broker_groups_to_broker_group_type")
+ assoc.add_endpoint(self.broker_group_type, "broker_group", "0..n")
+ assoc.add_endpoint(self.broker_group, "type", "0..1")
- assoc = ModelAssociation(self, "server_groups_to_server_groups")
- assoc.add_endpoint(self.server_group, "parent", "0..n")
- assoc.add_endpoint(self.server_group, "child", "0..n")
+ assoc = ModelAssociation(self, "broker_groups_to_broker_groups")
+ assoc.add_endpoint(self.broker_group, "parent", "0..n")
+ assoc.add_endpoint(self.broker_group, "child", "0..n")
assoc = ModelAssociation(self, "virtual_host_groups_to_virtual_hosts")
assoc.add_endpoint(self.virtual_host, "virtual_host_group", "0..n")
@@ -117,29 +117,29 @@
def get_clusters(self):
return self.get_index(self.cluster).values()
- def get_server(self, id):
- return self.get_index(self.server).get(id)
+ def get_broker(self, id):
+ return self.get_index(self.broker).get(id)
- def get_servers(self):
- return self.get_index(self.server).values()
+ def get_brokers(self):
+ return self.get_index(self.broker).values()
- def get_server_profile(self, id):
- return self.get_index(self.server_profile).get(id)
+ def get_broker_profile(self, id):
+ return self.get_index(self.broker_profile).get(id)
- def get_server_profiles(self):
- return self.get_index(self.server_profile).values()
+ def get_broker_profiles(self):
+ return self.get_index(self.broker_profile).values()
- def get_server_group(self, id):
- return self.get_index(self.server_group).get(id)
+ def get_broker_group(self, id):
+ return self.get_index(self.broker_group).get(id)
- def get_server_groups(self):
- return self.get_index(self.server_group).values()
+ def get_broker_groups(self):
+ return self.get_index(self.broker_group).values()
- def get_server_group_type(self, id):
- return self.get_index(self.server_group_type).get(id)
+ def get_broker_group_type(self, id):
+ return self.get_index(self.broker_group_type).get(id)
- def get_server_group_types(self):
- return self.get_index(self.server_group_type).values()
+ def get_broker_group_types(self):
+ return self.get_index(self.broker_group_type).values()
def get_config_property(self, id):
return self.get_index(self.config_property).get(id)
@@ -152,7 +152,7 @@
def get_virtual_host_templates(self):
return [i for i in self.get_virtual_hosts() \
- if not i.get_cluster() and not i.get_server()]
+ if not i.get_cluster() and not i.get_broker()]
def get_virtual_host_group(self, id):
return self.get_index(self.virtual_host_group).get(id)
@@ -192,15 +192,15 @@
self.name = None
-class Server(ModelObject):
+class Broker(ModelObject):
def __init__(self, model):
- super(Server, self).__init__(model, model.server)
+ super(Broker, self).__init__(model, model.broker)
self.name = None
self.default_virtual_host = None
def write_xml(self, writer):
- writer.write("<server id=\"server-%i\">" % self.id)
+ writer.write("<broker id=\"broker-%i\">" % self.id)
writer.write("<name>" + self.name + "</name>")
writer.write("<default-virtual-host ref=\"virtual-host-%i\"/>" \
% self.default_virtual_host.id)
@@ -208,11 +208,11 @@
for vhost in self.virtual_host_items():
vhost.write_xml(writer)
- writer.write("</server>")
+ writer.write("</broker>")
-class ServerProfile(ModelObject):
+class BrokerProfile(ModelObject):
def __init__(self, model):
- super(ServerProfile, self).__init__(model, model.server_profile)
+ super(BrokerProfile, self).__init__(model, model.broker_profile)
self.name = None
@@ -222,18 +222,18 @@
self.name = None
self.value = None
- self.server_value = None
+ self.broker_value = None
self.type = None # ("boolean", "integer", "string")
-class ServerGroup(ModelObject):
+class BrokerGroup(ModelObject):
def __init__(self, model):
- super(ServerGroup, self).__init__(model, model.server_group)
+ super(BrokerGroup, self).__init__(model, model.broker_group)
self.name = None
-class ServerGroupType(ModelObject):
+class BrokerGroupType(ModelObject):
def __init__(self, model):
- super(ServerGroupType, self).__init__(model, model.server_group_type)
+ super(BrokerGroupType, self).__init__(model, model.broker_group_type)
self.name = None
Modified: mgmt/cumin/python/cumin/page.py
===================================================================
--- mgmt/cumin/python/cumin/page.py 2007-10-24 14:58:02 UTC (rev 1154)
+++ mgmt/cumin/python/cumin/page.py 2007-10-24 15:31:43 UTC (rev 1155)
@@ -2,9 +2,9 @@
from wooly.widgets import *
from wooly.resources import *
-from server import *
-from servergroup import *
-from serverprofile import *
+from broker import *
+from brokergroup import *
+from brokerprofile import *
from cluster import *
from widgets import *
from util import *
@@ -29,16 +29,16 @@
self.view = MainView(app, "view")
self.add_mode(self.view)
- self.server = ServerFrame(app, "server")
- self.add_mode(self.server)
+ self.broker = BrokerFrame(app, "broker")
+ self.add_mode(self.broker)
- self.group = ServerGroupFrame(app, "group")
+ self.group = BrokerGroupFrame(app, "group")
self.add_mode(self.group)
- self.group_add = ServerGroupAdd(app, "groupadd")
+ self.group_add = BrokerGroupAdd(app, "groupadd")
self.add_mode(self.group_add)
- self.profile = ServerProfileFrame(app, "profile")
+ self.profile = BrokerProfileFrame(app, "profile")
self.add_mode(self.profile)
self.cluster = ClusterFrame(app, "cluster")
@@ -65,24 +65,24 @@
self.set_current_frame(session, self)
return self.show_mode(session, self.view)
- def show_server(self, session, server):
- cluster = server.get_cluster()
+ def show_broker(self, session, broker):
+ cluster = broker.get_cluster()
if cluster:
frame = self.show_cluster(session, cluster)
- frame = frame.show_server(session, server)
+ frame = frame.show_broker(session, broker)
else:
- frame = self.show_mode(session, self.server)
- frame.set_object(session, server)
+ frame = self.show_mode(session, self.broker)
+ frame.set_object(session, broker)
return self.set_current_frame(session, frame)
- def show_server_group(self, session, group):
+ def show_broker_group(self, session, group):
frame = self.show_mode(session, self.group)
frame.set_object(session, group)
return self.set_current_frame(session, frame)
- def show_server_group_add(self, session):
+ def show_broker_group_add(self, session):
frame = self.show_mode(session, self.group_add)
return self.set_current_frame(session, frame)
@@ -91,17 +91,17 @@
frame.set_object(session, cluster)
return self.set_current_frame(session, frame)
- def show_server_profile(self, session, profile):
+ def show_broker_profile(self, session, profile):
frame = self.show_mode(session, self.profile)
frame.set_object(session, profile)
return self.set_current_frame(session, frame)
def show_virtual_host(self, session, vhost):
- server = vhost.get_server()
+ broker = vhost.get_broker()
cluster = vhost.get_cluster()
- if server:
- frame = self.show_server(session, server)
+ if broker:
+ frame = self.show_broker(session, broker)
elif cluster:
frame = self.show_cluster(session, cluster)
else:
@@ -126,9 +126,9 @@
frame = frame.show_client(session, client)
return self.set_current_frame(session, frame)
- def server_group_href(self, session, group):
+ def broker_group_href(self, session, group):
branch = session.branch()
- self.show_server_group(branch, group).show_view(branch)
+ self.show_broker_group(branch, group).show_view(branch)
return branch.marshal()
def render_class(self, session, object):
@@ -163,27 +163,27 @@
def __init__(self, app, name):
super(MainView, self).__init__(app, name)
- self.add_tab(self.ServerTab(app, "servers"))
- self.add_tab(ServerGroupSet(app, "groups"))
- self.add_tab(self.ServerProfileTab(app, "profiles"))
+ self.add_tab(self.BrokerTab(app, "brokers"))
+ self.add_tab(BrokerGroupSet(app, "groups"))
+ self.add_tab(self.BrokerProfileTab(app, "profiles"))
self.add_tab(self.ClusterTab(app, "clusters"))
self.add_tab(self.TagTab(app, "tags"))
- def show_server_group(self, session, group):
- mode = self.show_mode(session, self.servers)
+ def show_broker_group(self, session, group):
+ mode = self.show_mode(session, self.brokers)
mode.set_object(session, group)
return mode
def render_title(self, session, model):
return "Red Hat Messaging"
- class ServerTab(ServerBrowser):
+ class BrokerTab(BrokerBrowser):
def render_title(self, session, model):
- return "Servers (%i)" % len(model.get_servers())
+ return "Brokers (%i)" % len(model.get_brokers())
- class ServerProfileTab(ServerProfileSet):
+ class BrokerProfileTab(BrokerProfileSet):
def render_title(self, session, model):
- return "Server Profiles (%i)" % len(model.get_server_profiles())
+ return "Broker Profiles (%i)" % len(model.get_broker_profiles())
class ClusterTab(ClusterSet):
def render_title(self, session, model):
Modified: mgmt/cumin/python/cumin/page.strings
===================================================================
--- mgmt/cumin/python/cumin/page.strings 2007-10-24 14:58:02 UTC (rev 1154)
+++ mgmt/cumin/python/cumin/page.strings 2007-10-24 15:31:43 UTC (rev 1155)
@@ -455,14 +455,14 @@
<div class="TabSet mode">{mode}</div>
</div>
-[ServerProfileTab.html]
+[BrokerProfileTab.html]
<ul class="actions">
- <li><a href="">Add Server Profile</a></li>
+ <li><a href="">Add Broker Profile</a></li>
</ul>
<table class="mobjects">
<tr>
- <th>Server Profile</th>
+ <th>Broker Profile</th>
</tr>
{items}
Modified: mgmt/cumin/python/cumin/parameters.py
===================================================================
--- mgmt/cumin/python/cumin/parameters.py 2007-10-24 14:58:02 UTC (rev 1154)
+++ mgmt/cumin/python/cumin/parameters.py 2007-10-24 15:31:43 UTC (rev 1155)
@@ -1,5 +1,26 @@
from wooly import *
+class BrokerGroupParameter(Parameter):
+ def do_unmarshal(self, string):
+ return self.app.model.get_broker_group(int(string))
+
+ def do_marshal(self, group):
+ return str(group.id)
+
+class BrokerParameter(Parameter):
+ def do_unmarshal(self, string):
+ return self.app.model.get_broker(int(string))
+
+ def do_marshal(self, broker):
+ return str(broker.id)
+
+class BrokerProfileParameter(Parameter):
+ def do_unmarshal(self, string):
+ return self.app.model.get_broker_profile(int(string))
+
+ def do_marshal(self, profile):
+ return str(profile.id)
+
class ClientParameter(Parameter):
def do_unmarshal(self, string):
return self.app.model.get_client(int(string))
@@ -42,27 +63,6 @@
def do_marshal(self, queue):
return str(realm.id)
-class ServerGroupParameter(Parameter):
- def do_unmarshal(self, string):
- return self.app.model.get_server_group(int(string))
-
- def do_marshal(self, group):
- return str(group.id)
-
-class ServerParameter(Parameter):
- def do_unmarshal(self, string):
- return self.app.model.get_server(int(string))
-
- def do_marshal(self, server):
- return str(server.id)
-
-class ServerProfileParameter(Parameter):
- def do_unmarshal(self, string):
- return self.app.model.get_server_profile(int(string))
-
- def do_marshal(self, profile):
- return str(profile.id)
-
class VirtualHostParameter(Parameter):
def do_unmarshal(self, string):
return self.app.model.get_virtual_host(int(string))
Modified: mgmt/cumin/python/cumin/queue.strings
===================================================================
--- mgmt/cumin/python/cumin/queue.strings 2007-10-24 14:58:02 UTC (rev 1154)
+++ mgmt/cumin/python/cumin/queue.strings 2007-10-24 15:31:43 UTC (rev 1155)
@@ -193,10 +193,6 @@
<td class="twocol">
<h2>General</h2>
{general_stats}
-<!--
- <h2>Disk</h2>
- {disk_stats}
--->
<h2>Persistent Messages</h2>
{persistent_stats}
</td>
Modified: mgmt/cumin/python/cumin/server.py
===================================================================
--- mgmt/cumin/python/cumin/server.py 2007-10-24 14:58:02 UTC (rev 1154)
+++ mgmt/cumin/python/cumin/server.py 2007-10-24 15:31:43 UTC (rev 1155)
@@ -10,43 +10,43 @@
strings = StringCatalog(__file__)
-class ServerSet(ItemSet):
+class BrokerSet(ItemSet):
def render_title(self, session, model):
- return "Servers (%i)" % len(model.get_servers())
+ return "Brokers (%i)" % len(model.get_brokers())
def get_items(self, session, model):
- return sorted_by(model.get_servers())
+ return sorted_by(model.get_brokers())
- def render_item_link(self, session, server):
+ def render_item_link(self, session, broker):
branch = session.branch()
- self.page().show_server(branch, server).show_view(branch)
+ self.page().show_broker(branch, broker).show_view(branch)
- return mlink(branch.marshal(), "Server", server.name)
+ return mlink(branch.marshal(), "Broker", broker.name)
- def render_item_group_link(self, session, server):
- group = server.get_server_group()
+ def render_item_group_link(self, session, broker):
+ group = broker.get_broker_group()
if group:
branch = session.branch()
- self.page().show_server_group(branch, group).show_view(branch)
+ self.page().show_broker_group(branch, group).show_view(branch)
- return mlink(branch.marshal(), "ServerGroup", group.name)
+ return mlink(branch.marshal(), "BrokerGroup", group.name)
else:
return none()
- def render_item_profile_link(self, session, server):
- profile = server.get_server_profile()
+ def render_item_profile_link(self, session, broker):
+ profile = broker.get_broker_profile()
if profile:
branch = session.branch()
- self.page().show_server_profile(branch, profile).show_view(branch)
+ self.page().show_broker_profile(branch, profile).show_view(branch)
- return mlink(branch.marshal(), "ServerProfile", profile.name)
+ return mlink(branch.marshal(), "BrokerProfile", profile.name)
else:
return none()
- def render_item_cluster_link(self, session, server):
- cluster = server.get_cluster()
+ def render_item_cluster_link(self, session, broker):
+ cluster = broker.get_cluster()
if cluster:
branch = session.branch()
@@ -56,23 +56,23 @@
else:
return none()
- def render_item_status(self, session, server):
+ def render_item_status(self, session, broker):
return "0 errors, 0 warnings"
- def render_item_load(self, session, server):
+ def render_item_load(self, session, broker):
return "%.2f" % random()
-class ServerSetForm(ServerSet, Form):
+class BrokerSetForm(BrokerSet, Form):
def __init__(self, app, name):
- super(ServerSetForm, self).__init__(app, name)
+ super(BrokerSetForm, self).__init__(app, name)
- self.server = ServerParameter(app, "param")
- self.add_parameter(self.server)
- self.add_form_parameter(self.server)
+ self.broker = BrokerParameter(app, "param")
+ self.add_parameter(self.broker)
+ self.add_form_parameter(self.broker)
- self.servers = ListParameter(app, "ids", self.server)
- self.add_parameter(self.servers)
- self.add_form_parameter(self.servers)
+ self.brokers = ListParameter(app, "ids", self.broker)
+ self.add_parameter(self.brokers)
+ self.add_form_parameter(self.brokers)
self.submit = self.Submit(app, "submit", self)
self.add_child(self.submit)
@@ -81,39 +81,39 @@
if self.submit.get(session):
self.submit.set(session, False)
- for server in self.servers.get(session):
- print "server", server
+ for broker in self.brokers.get(session):
+ print "broker", broker
session.set_redirect(session.marshal())
- def render_item_checkbox_name(self, session, server):
- return self.servers.path()
+ def render_item_checkbox_name(self, session, broker):
+ return self.brokers.path()
- def render_item_checkbox_value(self, session, server):
- return self.server.marshal(server)
+ def render_item_checkbox_value(self, session, broker):
+ return self.broker.marshal(broker)
- def render_item_checkbox_checked_attr(self, session, server):
- return server in self.servers.get(session) and "checked=\"checked\""
+ def render_item_checkbox_checked_attr(self, session, broker):
+ return broker in self.brokers.get(session) and "checked=\"checked\""
class Submit(FormButton):
def render_content(self, session, model):
return "Submit"
-class ServerFrame(CuminFrame):
+class BrokerFrame(CuminFrame):
def __init__(self, app, name):
- super(ServerFrame, self).__init__(app, name)
+ super(BrokerFrame, self).__init__(app, name)
- self.param = ServerParameter(app, "id")
+ self.param = BrokerParameter(app, "id")
self.add_parameter(self.param)
self.set_object_parameter(self.param)
- self.view = ServerView(app, "view")
+ self.view = BrokerView(app, "view")
self.add_mode(self.view)
self.vhost = VirtualHostFrame(app, "vhost")
self.add_mode(self.vhost)
- self.prop = ServerConfigPropertyForm(app, "prop")
+ self.prop = BrokerConfigPropertyForm(app, "prop")
self.add_mode(self.prop)
def show_view(self, session):
@@ -128,12 +128,12 @@
frame = self.show_mode(session, self.prop)
return self.page().set_current_frame(session, frame)
- def render_title(self, session, server):
- return "Server '%s'" % server.name
+ def render_title(self, session, broker):
+ return "Broker '%s'" % broker.name
-class ServerConfigPropertyForm(CuminForm, Frame):
+class BrokerConfigPropertyForm(CuminForm, Frame):
def __init__(self, app, name):
- super(ServerConfigPropertyForm, self).__init__(app, name)
+ super(BrokerConfigPropertyForm, self).__init__(app, name)
self.param = ConfigPropertyParameter(app, "param")
self.add_parameter(self.param)
@@ -151,12 +151,12 @@
self.pvalue.set_disabled(True)
self.add_child(self.pvalue)
- self.server = RadioInput(app, "server", self)
- self.server.set_parameter(self.source)
- self.server.set_value("server")
- self.add_child(self.server)
+ self.broker = RadioInput(app, "broker", self)
+ self.broker.set_parameter(self.source)
+ self.broker.set_value("broker")
+ self.add_child(self.broker)
- self.svalue = TextInput(app, "server_value", self)
+ self.svalue = TextInput(app, "broker_value", self)
self.svalue.set_disabled(True)
self.add_child(self.svalue)
@@ -176,7 +176,7 @@
def process_cancel(self, session, prop):
branch = session.branch()
- self.page().show_server(branch, prop.get_server()).show_view(branch)
+ self.page().show_broker(branch, prop.get_broker()).show_view(branch)
session.set_redirect(branch.marshal())
def process_submit(self, session, prop):
@@ -184,8 +184,8 @@
if source == "profile":
prop.value = get_profile_value(prop)
- elif source == "server":
- prop.value = prop.server_value
+ elif source == "broker":
+ prop.value = prop.broker_value
elif source == "local":
prop.value = self.lvalue.get(session)
else:
@@ -195,14 +195,14 @@
def process_display(self, session, prop):
self.pvalue.set(session, get_profile_value(prop))
- self.svalue.set(session, prop.server_value)
+ self.svalue.set(session, prop.broker_value)
self.lvalue.set(session, prop.value)
def render_title(self, session, prop):
return "Edit Property '%s'" % prop.name
def get_profile_value(prop):
- profile = prop.get_server().get_server_profile()
+ profile = prop.get_broker().get_broker_profile()
value = None
if profile:
@@ -212,30 +212,30 @@
return value
-class ServerView(Widget):
+class BrokerView(Widget):
def __init__(self, app, name):
- super(ServerView, self).__init__(app, name)
+ super(BrokerView, self).__init__(app, name)
self.tabs = TabSet(app, "tabs")
self.add_child(self.tabs)
- self.tabs.add_tab(self.ServerVirtualHostTab(app, "vhosts"))
- self.config = self.ServerConfigTab(app, "config")
+ self.tabs.add_tab(self.BrokerVirtualHostTab(app, "vhosts"))
+ self.config = self.BrokerConfigTab(app, "config")
self.tabs.add_tab(self.config)
- self.tabs.add_tab(self.ServerStatsTab(app, "stats"))
- self.tabs.add_tab(self.ServerLogTab(app, "log"))
+ self.tabs.add_tab(self.BrokerStatsTab(app, "stats"))
+ self.tabs.add_tab(self.BrokerLogTab(app, "log"))
def show_config(self, session):
return self.tabs.show_mode(session, self.config)
- def render_title(self, session, server):
- return "Server '%s'" % server.name
+ def render_title(self, session, broker):
+ return "Broker '%s'" % broker.name
- def render_name(self, session, server):
- return server.name
+ def render_name(self, session, broker):
+ return broker.name
- def render_cluster_link(self, session, server):
- cluster = server.get_cluster()
+ def render_cluster_link(self, session, broker):
+ cluster = broker.get_cluster()
if cluster:
branch = session.branch()
@@ -246,44 +246,44 @@
return html
- def render_profile_link(self, session, server):
- profile = server.get_server_profile()
+ def render_profile_link(self, session, broker):
+ profile = broker.get_broker_profile()
if profile:
branch = session.branch()
- self.page().show_server_profile(branch, profile).show_view(branch)
- html = mlink(branch.marshal(), "ServerProfile", profile.name)
+ self.page().show_broker_profile(branch, profile).show_view(branch)
+ html = mlink(branch.marshal(), "BrokerProfile", profile.name)
else:
html = none()
return html
- def render_version(self, session, server):
+ def render_version(self, session, broker):
return "1.0"
- class ServerVirtualHostTab(VirtualHostSet):
- def render_title(self, session, server):
- return "Functional Hosts (%i)" % len(server.virtual_host_items())
+ class BrokerVirtualHostTab(VirtualHostSet):
+ def render_title(self, session, broker):
+ return "Functional Hosts (%i)" % len(broker.virtual_host_items())
- def get_items(self, session, server):
- return sorted_by(server.virtual_host_items())
+ def get_items(self, session, broker):
+ return sorted_by(broker.virtual_host_items())
- class ServerConfigTab(ConfigPropertySet):
- def render_title(self, session, server):
+ class BrokerConfigTab(ConfigPropertySet):
+ def render_title(self, session, broker):
return "Configuration"
- def get_items(self, session, server):
- return sorted_by(server.config_property_items())
+ def get_items(self, session, broker):
+ return sorted_by(broker.config_property_items())
def maybe_highlight(self, value, comparedto):
if str(value) != str(comparedto):
- value = "<span class=\"ServerConfigTab diff\">%s</span>" \
+ value = "<span class=\"BrokerConfigTab diff\">%s</span>" \
% value
return value
- def render_item_server_value(self, session, prop):
- return self.maybe_highlight(prop.server_value, prop.value)
+ def render_item_broker_value(self, session, prop):
+ return self.maybe_highlight(prop.broker_value, prop.value)
def render_item_profile_value(self, session, prop):
value = get_profile_value(prop)
@@ -291,62 +291,62 @@
def render_item_edit_href(self, session, prop):
branch = session.branch()
- frame = self.page().show_server(branch, prop.get_server())
+ frame = self.page().show_broker(branch, prop.get_broker())
frame.show_config_property(branch, prop)
return branch.marshal()
- class ServerStatsTab(Widget):
- def render_title(self, session, server):
+ class BrokerStatsTab(Widget):
+ def render_title(self, session, broker):
return "Statistics"
- class ServerLogTab(Widget):
- def render_title(self, session, server):
+ class BrokerLogTab(Widget):
+ def render_title(self, session, broker):
return "Log Messages"
-class ServerBrowser(Widget):
+class BrokerBrowser(Widget):
def __init__(self, app, name):
- super(ServerBrowser, self).__init__(app, name)
+ super(BrokerBrowser, self).__init__(app, name)
self.group_tmpl = Template(self, "group_html")
self.profile_tmpl = Template(self, "profile_html")
self.cluster_tmpl = Template(self, "cluster_html")
- self.group = ServerGroupParameter(app, "group")
+ self.group = BrokerGroupParameter(app, "group")
self.add_parameter(self.group)
- self.profile = ServerProfileParameter(app, "profile")
+ self.profile = BrokerProfileParameter(app, "profile")
self.add_parameter(self.profile)
self.cluster = ClusterParameter(app, "cluster")
self.add_parameter(self.cluster)
- self.servers = self.BrowserServers(app, "servers")
- self.add_child(self.servers)
+ self.brokers = self.BrowserBrokers(app, "brokers")
+ self.add_child(self.brokers)
- class BrowserServers(ServerSetForm):
+ class BrowserBrokers(BrokerSetForm):
def get_items(self, session, model):
- servers = sorted_by(model.get_servers())
+ brokers = sorted_by(model.get_brokers())
group = self.parent.group.get(session)
profile = self.parent.profile.get(session)
cluster = self.parent.cluster.get(session)
- for server in model.get_servers():
- if group and group not in server.server_group_items():
- servers.remove(server)
+ for broker in model.get_brokers():
+ if group and group not in broker.broker_group_items():
+ brokers.remove(broker)
- if profile and profile is not server.get_server_profile():
+ if profile and profile is not broker.get_broker_profile():
try:
- servers.remove(server)
+ brokers.remove(broker)
except ValueError:
pass
- if cluster and cluster is not server.get_cluster():
+ if cluster and cluster is not broker.get_cluster():
try:
- servers.remove(server)
+ brokers.remove(broker)
except ValueError:
pass
- return servers
+ return brokers
def render_none(self, session, model):
return none()
@@ -359,14 +359,14 @@
return branch.marshal()
def render_group_filters(self, session, model):
- groups = sorted_by(model.get_server_groups())
+ groups = sorted_by(model.get_broker_groups())
return self._render_filters(session, groups, self.group_tmpl)
def render_group_link(self, session, group):
return self._render_filter_link(session, group, self.group)
def render_profile_filters(self, session, model):
- profiles = sorted_by(model.get_server_profiles())
+ profiles = sorted_by(model.get_broker_profiles())
return self._render_filters(session, profiles, self.profile_tmpl)
def render_profile_link(self, session, profile):
Modified: mgmt/cumin/python/cumin/server.strings
===================================================================
--- mgmt/cumin/python/cumin/server.strings 2007-10-24 14:58:02 UTC (rev 1154)
+++ mgmt/cumin/python/cumin/server.strings 2007-10-24 15:31:43 UTC (rev 1155)
@@ -1,7 +1,7 @@
-[ServerSet.html]
+[BrokerSet.html]
<table class="mobjects">
<tr>
- <th>Server</th>
+ <th>Broker</th>
<th>Profile</th>
<th>Cluster</th>
<th>Status</th>
@@ -10,7 +10,7 @@
{items}
</table>
-[ServerSet.item_html]
+[BrokerSet.item_html]
<tr>
<td>{item_link}</td>
<td>{item_profile_link}</td>
@@ -18,7 +18,7 @@
<td>0 errors, 0 warnings</td>
</tr>
-[ServerSetForm.html]
+[BrokerSetForm.html]
<form id="{id}" method="post" action="?">
<!-- <select onchange="document.getElementById('{id}.submit').submit()"> -->
<select>
@@ -40,7 +40,7 @@
<table class="mobjects">
<tr>
<th><input type="checkbox"/></th>
- <th>Server</th>
+ <th>Broker</th>
<th>Profile</th>
<th>Cluster</th>
<th>Status</th>
@@ -52,7 +52,7 @@
{hidden_inputs}
</form>
-[ServerSetForm.item_html]
+[BrokerSetForm.item_html]
<tr>
<td><input type="checkbox" name="{item_checkbox_name}" value="{item_checkbox_value}" {item_checkbox_checked_attr}/></td>
<td>{item_link}</td>
@@ -62,14 +62,14 @@
<td>{item_load}</td>
</tr>
-[ServerConfigTab.css]
-.ServerConfigTab.diff {
+[BrokerConfigTab.css]
+.BrokerConfigTab.diff {
background-color: #ff9;
}
-[ServerConfigTab.html]
+[BrokerConfigTab.html]
<ul class="actions">
- <li><a href="">Apply Configuration to Server</a></li>
+ <li><a href="">Apply Configuration to Broker</a></li>
<li><a href="">Add Property</a></li>
</ul>
@@ -77,7 +77,7 @@
<tr>
<th>Property</th>
<th>Configured Value</th>
- <th>Server Value</th>
+ <th>Broker Value</th>
<th>Profile Value</th>
<th></th>
</tr>
@@ -85,22 +85,22 @@
{items}
</table>
-[ServerConfigTab.item_html]
+[BrokerConfigTab.item_html]
<tr>
<td>{item_name}</td>
<td>{item_value}</td>
- <td>{item_server_value}</td>
+ <td>{item_broker_value}</td>
<td>{item_profile_value}</td>
<td><a class="action" href="{item_edit_href}">Edit</a></td>
</tr>
-[ServerConfigPropertyForm.css]
-.ServerConfigPropertyForm div.value {
+[BrokerConfigPropertyForm.css]
+.BrokerConfigPropertyForm div.value {
margin: 1em 2em;
}
-[ServerConfigPropertyForm.html]
-<form id="{id}" class="ServerConfigPropertyForm mform" method="post" action="?">
+[BrokerConfigPropertyForm.html]
+<form id="{id}" class="BrokerConfigPropertyForm mform" method="post" action="?">
<div class="head">
<h1>{title}</h1>
</div>
@@ -108,12 +108,12 @@
<span class="legend">Value</span>
<fieldset>
<div class="field">
- {profile} Use the value from the server profile
+ {profile} Use the value from the broker profile
<div class="value">{profile_value}</div>
</div>
<div class="field">
- {server} Use the value currently set on the server
- <div class="value">{server_value}</div>
+ {broker} Use the value currently set on the broker
+ <div class="value">{broker_value}</div>
</div>
<div class="field">
{local} Set a new value
@@ -137,10 +137,10 @@
}())
</script>
-[ServerView.html]
+[BrokerView.html]
<div class="oblock">
<div class="mstatus green" id="{id}">
- <h2>Server Status</h2>
+ <h2>Broker Status</h2>
<div>0 errors, 0 warnings</div>
</div>
@@ -150,18 +150,18 @@
<dl class="properties">
<dt>Name</dt><dd>{name}</dd>
<dt>Cluster</dt><dd>{cluster_link}</dd>
- <dt>Server Profile</dt><dd>{profile_link}</dd>
+ <dt>Broker Profile</dt><dd>{profile_link}</dd>
<dt>Software Version</dt><dd>{version}</dd>
</dl>
<ul class="actions">
- <li><a href="">Shutdown This Server</a></li>
+ <li><a href="">Shutdown This Broker</a></li>
</ul>
{tabs}
</div>
-[ServerBrowser.html]
+[BrokerBrowser.html]
<table class="browser">
<tr>
<td class="nav">
@@ -178,18 +178,18 @@
</td>
<td class="view">
<ul class="actions">
- <li><a href="">Register New Servers</a></li>
+ <li><a href="">Register New Brokers</a></li>
</ul>
- {servers}
+ {brokers}
</td>
</tr>
</div>
-[ServerBrowser.group_html]
+[BrokerBrowser.group_html]
<li>{group_link}</li>
-[ServerBrowser.profile_html]
+[BrokerBrowser.profile_html]
<li>{profile_link}</li>
-[ServerBrowser.cluster_html]
+[BrokerBrowser.cluster_html]
<li>{cluster_link}</li>
Modified: mgmt/cumin/python/cumin/servergroup.py
===================================================================
--- mgmt/cumin/python/cumin/servergroup.py 2007-10-24 14:58:02 UTC (rev 1154)
+++ mgmt/cumin/python/cumin/servergroup.py 2007-10-24 15:31:43 UTC (rev 1155)
@@ -1,7 +1,7 @@
from wooly import *
from wooly.widgets import *
-from server import ServerSet
+from broker import BrokerSet
from model import *
from widgets import *
from parameters import *
@@ -9,25 +9,25 @@
strings = StringCatalog(__file__)
-class ServerGroupSet(ItemSet):
+class BrokerGroupSet(ItemSet):
def render_title(self, session, model):
- return "Server Groups (%i)" % len(model.get_server_groups())
+ return "Broker Groups (%i)" % len(model.get_broker_groups())
def render_group_add_href(self, session, model):
branch = session.branch()
- self.page().show_server_group_add(branch)
+ self.page().show_broker_group_add(branch)
return branch.marshal()
def get_items(self, session, model):
- return sorted_by(model.get_server_groups())
+ return sorted_by(model.get_broker_groups())
def render_item_link(self, session, group):
- href = self.page().server_group_href(session, group)
- return mlink(href, "ServerGroup", group.name)
+ href = self.page().broker_group_href(session, group)
+ return mlink(href, "BrokerGroup", group.name)
def render_item_config(self, session, group):
- count = len(group.server_items())
- return "%i server%s" % (count, count == 1 and "" or "s")
+ count = len(group.broker_items())
+ return "%i broker%s" % (count, count == 1 and "" or "s")
def render_item_status(self, session, group):
return "0 errors, 0 warnings"
@@ -35,36 +35,36 @@
def render_none(self, session, group):
return none()
-class ServerGroupFrame(CuminFrame):
+class BrokerGroupFrame(CuminFrame):
def __init__(self, app, name):
- super(ServerGroupFrame, self).__init__(app, name)
+ super(BrokerGroupFrame, self).__init__(app, name)
- self.param = ServerGroupParameter(app, "id")
+ self.param = BrokerGroupParameter(app, "id")
self.add_parameter(self.param)
self.set_object_parameter(self.param)
- self.view = ServerGroupView(app, "view")
+ self.view = BrokerGroupView(app, "view")
self.add_child(self.view)
self.set_view_mode(self.view)
- self.edit = ServerGroupEdit(app, "edit")
+ self.edit = BrokerGroupEdit(app, "edit")
self.add_child(self.edit)
self.set_edit_mode(self.edit)
def render_title(self, session, group):
- return "Server Group '%s'" % group.name
+ return "Broker Group '%s'" % group.name
-class ServerGroupView(Widget):
+class BrokerGroupView(Widget):
def __init__(self, app, name):
- super(ServerGroupView, self).__init__(app, name)
+ super(BrokerGroupView, self).__init__(app, name)
self.tabs = TabSet(app, "tabs")
self.add_child(self.tabs)
- self.tabs.add_tab(self.GroupServerTab(app, "servers"))
+ self.tabs.add_tab(self.GroupBrokerTab(app, "brokers"))
def render_title(self, session, group):
- return "Server Group '%s'" % group.name
+ return "Broker Group '%s'" % group.name
def render_name(self, session, group):
return group.name
@@ -74,19 +74,19 @@
def render_edit_href(self, session, group):
branch = session.branch()
- self.page().show_server_group(branch, group).show_edit(branch)
+ self.page().show_broker_group(branch, group).show_edit(branch)
return branch.marshal()
- class GroupServerTab(ServerSet):
+ class GroupBrokerTab(BrokerSet):
def get_items(self, session, group):
- return sorted_by(group.server_items())
+ return sorted_by(group.broker_items())
def render_title(self, session, group):
- return "Servers (%i)" % len(group.server_items())
+ return "Brokers (%i)" % len(group.broker_items())
-class ServerGroupForm(CuminForm):
+class BrokerGroupForm(CuminForm):
def __init__(self, app, name):
- super(ServerGroupForm, self).__init__(app, name)
+ super(BrokerGroupForm, self).__init__(app, name)
self.group_name = TextInput(app, "name", self)
self.add_child(self.group_name)
@@ -95,28 +95,28 @@
group.lock()
try:
group.name = self.group_name.get(session)
- group.set_type(self.app.model.get_server_group_types()[0])
+ group.set_type(self.app.model.get_broker_group_types()[0])
finally:
group.unlock()
branch = session.branch()
- self.page().show_server_group(branch, group).show_view(branch)
+ self.page().show_broker_group(branch, group).show_view(branch)
session.set_redirect(branch.marshal())
-class ServerGroupAdd(ServerGroupForm, Frame):
+class BrokerGroupAdd(BrokerGroupForm, Frame):
def process_cancel(self, session, model):
branch = session.branch()
self.page().show_view(branch)
session.set_redirect(branch.marshal())
def process_submit(self, session, model):
- group = ServerGroup(model)
+ group = BrokerGroup(model)
self.process_group(session, group)
def render_title(self, session, model):
return "Add Group"
-class ServerGroupEdit(ServerGroupForm, Frame):
+class BrokerGroupEdit(BrokerGroupForm, Frame):
def process_cancel(self, session, group):
branch = session.branch()
self.parent.show_view(branch)
Modified: mgmt/cumin/python/cumin/servergroup.strings
===================================================================
--- mgmt/cumin/python/cumin/servergroup.strings 2007-10-24 14:58:02 UTC (rev 1154)
+++ mgmt/cumin/python/cumin/servergroup.strings 2007-10-24 15:31:43 UTC (rev 1155)
@@ -1,6 +1,6 @@
-[ServerGroupSet.html]
+[BrokerGroupSet.html]
<ul class="actions">
- <li><a href="{group_add_href}">Add Server Group</a></li>
+ <li><a href="{group_add_href}">Add Broker Group</a></li>
</ul>
<button>Shutdown</button>
@@ -11,7 +11,7 @@
<table class="mobjects">
<tr>
<th><input type="checkbox"/></th>
- <th>Server Group</th>
+ <th>Broker Group</th>
<th>Configuration</th>
<th>Status</th>
</tr>
@@ -19,7 +19,7 @@
{items}
</table>
-[ServerGroupSet.item_html]
+[BrokerGroupSet.item_html]
<tr>
<td><input type="checkbox"/></td>
<td>{item_link}</td>
@@ -27,9 +27,9 @@
<td>{item_status}</td>
</tr>
-[ServerGroupView.html]
+[BrokerGroupView.html]
<div class="mstatus green" id="{id}">
- <h2>Server Group Status</h2>
+ <h2>Broker Group Status</h2>
<div>0 errors, 0 warnings</div>
</div>
@@ -42,14 +42,14 @@
</dl>
<ul class="actions">
- <li><a href="{edit_href}">Edit This Server Group</a></li>
- <li><a href="">Remove This Server Group</a></li>
+ <li><a href="{edit_href}">Edit This Broker Group</a></li>
+ <li><a href="">Remove This Broker Group</a></li>
</ul>
{tabs}
-[ServerGroupForm.html]
-<form id="{id}" class="ServerGroupForm mform" method="post" action="?">
+[BrokerGroupForm.html]
+<form id="{id}" class="BrokerGroupForm mform" method="post" action="?">
<div class="head">
<h1>{title}</h1>
</div>
Modified: mgmt/cumin/python/cumin/serverprofile.py
===================================================================
--- mgmt/cumin/python/cumin/serverprofile.py 2007-10-24 14:58:02 UTC (rev 1154)
+++ mgmt/cumin/python/cumin/serverprofile.py 2007-10-24 15:31:43 UTC (rev 1155)
@@ -2,52 +2,52 @@
from wooly.widgets import *
from configproperty import *
-from server import *
+from broker import *
from widgets import *
from parameters import *
from util import *
strings = StringCatalog(__file__)
-class ServerProfileSet(ItemSet):
+class BrokerProfileSet(ItemSet):
def get_items(self, session, model):
- return sorted_by(model.get_server_profiles())
+ return sorted_by(model.get_broker_profiles())
def render_item_link(self, session, profile):
branch = session.branch()
- frame = self.page().show_server_profile(branch, profile)
+ frame = self.page().show_broker_profile(branch, profile)
frame.show_view(branch)
- return mlink(branch.marshal(), "ServerProfile", profile.name)
+ return mlink(branch.marshal(), "BrokerProfile", profile.name)
-class ServerProfileFrame(CuminFrame):
+class BrokerProfileFrame(CuminFrame):
def __init__(self, app, name):
- super(ServerProfileFrame, self).__init__(app, name)
+ super(BrokerProfileFrame, self).__init__(app, name)
- self.param = ServerProfileParameter(app, "id")
+ self.param = BrokerProfileParameter(app, "id")
self.add_parameter(self.param)
self.set_object_parameter(self.param)
- self.view = ServerProfileView(app, "view")
+ self.view = BrokerProfileView(app, "view")
self.add_mode(self.view)
def show_view(self, session):
return self.show_mode(session, self.view)
def render_title(self, session, profile):
- return "Server Profile '%s'" % profile.name
+ return "Broker Profile '%s'" % profile.name
-class ServerProfileView(Widget):
+class BrokerProfileView(Widget):
def __init__(self, app, name):
- super(ServerProfileView, self).__init__(app, name)
+ super(BrokerProfileView, self).__init__(app, name)
self.tabs = TabSet(app, "tabs")
self.add_child(self.tabs)
self.tabs.add_tab(self.ProfileConfigTab(app, "config"))
- self.tabs.add_tab(self.ProfileServerTab(app, "servers"))
+ self.tabs.add_tab(self.ProfileBrokerTab(app, "brokers"))
def render_title(self, session, profile):
- return "Server Profile '%s'" % profile.name
+ return "Broker Profile '%s'" % profile.name
def render_name(self, session, profile):
return profile.name
@@ -59,27 +59,27 @@
def render_title(self, session, profile):
return "Configuration"
- class ProfileServerTab(ServerSet):
+ class ProfileBrokerTab(BrokerSet):
def __init__(self, app, name):
- super(ServerProfileView.ProfileServerTab, self).__init__(app, name)
+ super(BrokerProfileView.ProfileBrokerTab, self).__init__(app, name)
def render_title(self, session, profile):
- return "Servers (%i)" % len(profile.server_items())
+ return "Brokers (%i)" % len(profile.broker_items())
def get_items(self, session, profile):
- return sorted_by(profile.server_items())
+ return sorted_by(profile.broker_items())
- def render_item_config_href(self, session, server):
+ def render_item_config_href(self, session, broker):
branch = session.branch()
- frame = self.page().show_server(branch, server)
+ frame = self.page().show_broker(branch, broker)
frame.show_view(branch).show_config(branch)
return branch.marshal()
- def render_item_config_status(self, session, server):
+ def render_item_config_status(self, session, broker):
diffs = 0
- for prop in server.get_server_profile().config_property_items():
- for iprop in server.config_property_items():
+ for prop in broker.get_broker_profile().config_property_items():
+ for iprop in broker.config_property_items():
if iprop.name == prop.name:
if iprop.value != prop.value:
diffs += 1
Modified: mgmt/cumin/python/cumin/serverprofile.strings
===================================================================
--- mgmt/cumin/python/cumin/serverprofile.strings 2007-10-24 14:58:02 UTC (rev 1154)
+++ mgmt/cumin/python/cumin/serverprofile.strings 2007-10-24 15:31:43 UTC (rev 1155)
@@ -1,18 +1,18 @@
-[ServerProfileSet.html]
-<table class="ServerProfileSet mobjects">
+[BrokerProfileSet.html]
+<table class="BrokerProfileSet mobjects">
<tr>
- <th>Server Profile</th>
+ <th>Broker Profile</th>
</tr>
{items}
</table>
-[ServerProfileSet.item_html]
+[BrokerProfileSet.item_html]
<tr>
<td>{item_link}</td>
</tr>
-[ServerProfileView.html]
+[BrokerProfileView.html]
<div class="oblock">
<h1>{title}</h1>
@@ -49,14 +49,14 @@
<td><a class="action" href="">Edit</a></td>
</tr>
-[ProfileServerTab.html]
+[ProfileBrokerTab.html]
<ul class="actions">
- <li><a href="">Apply Profile Configuration to Servers</a></li>
+ <li><a href="">Apply Profile Configuration to Brokers</a></li>
</ul>
<table class="mobjects">
<tr>
- <th>Server</th>
+ <th>Broker</th>
<th>Configuration Status</th>
<th></th>
</tr>
@@ -64,7 +64,7 @@
{items}
</table>
-[ProfileServerTab.item_html]
+[ProfileBrokerTab.item_html]
<tr>
<td>{item_link}</td>
<td><a href="{item_config_href}">{item_config_status}</a></td>
Modified: mgmt/cumin/python/cumin/virtualhost.py
===================================================================
--- mgmt/cumin/python/cumin/virtualhost.py 2007-10-24 14:58:02 UTC (rev 1154)
+++ mgmt/cumin/python/cumin/virtualhost.py 2007-10-24 15:31:43 UTC (rev 1155)
@@ -78,14 +78,14 @@
def render_name(self, session, vhost):
return vhost.name
- def render_server(self, session, vhost):
- server = vhost.get_server()
+ def render_broker(self, session, vhost):
+ broker = vhost.get_broker()
- if server:
+ if broker:
branch = session.branch()
- self.page().show_server(branch, server).show_view(branch)
+ self.page().show_broker(branch, broker).show_view(branch)
- return mlink(branch.marshal(), "Server", server.name)
+ return mlink(branch.marshal(), "Broker", broker.name)
else:
return none()
Modified: mgmt/cumin/python/cumin/virtualhost.strings
===================================================================
--- mgmt/cumin/python/cumin/virtualhost.strings 2007-10-24 14:58:02 UTC (rev 1154)
+++ mgmt/cumin/python/cumin/virtualhost.strings 2007-10-24 15:31:43 UTC (rev 1155)
@@ -28,7 +28,7 @@
<dl class="properties">
<dt>Name</dt><dd>{name}</dd>
- <dt>Server</dt><dd>{server}</dd>
+ <dt>Broker</dt><dd>{broker}</dd>
<dt>Cluster</dt><dd>{cluster}</dd>
</dl>
18 years, 6 months
rhmessaging commits: r1154 - in mgmt: notes and 1 other directory.
by rhmessaging-commits@lists.jboss.org
Author: justi9
Date: 2007-10-24 10:58:02 -0400 (Wed, 24 Oct 2007)
New Revision: 1154
Modified:
mgmt/cumin/python/cumin/model.py
mgmt/cumin/python/cumin/queue.py
mgmt/cumin/python/cumin/queue.strings
mgmt/notes/Todo
Log:
Distinguishes stats for transactional messages from stats for
transactions themselves.
Modified: mgmt/cumin/python/cumin/model.py
===================================================================
--- mgmt/cumin/python/cumin/model.py 2007-10-24 14:30:29 UTC (rev 1153)
+++ mgmt/cumin/python/cumin/model.py 2007-10-24 14:58:02 UTC (rev 1154)
@@ -449,43 +449,43 @@
measure = Measurement("enqueueTxStarts", "int")
measure.title = "Enq. trans. started"
- measure.categories = ("transactional")
+ measure.categories = ("transaction")
self.measurements.append(measure)
measure = Measurement("enqueueTxCommits", "int")
measure.title = "Enq. trans. committed"
- measure.categories = ("transactional")
+ measure.categories = ("transaction")
self.measurements.append(measure)
measure = Measurement("enqueueTxRejects", "int")
measure.title = "Enq. trans. rejected"
- measure.categories = ("transactional")
+ measure.categories = ("transaction")
self.measurements.append(measure)
measure = Measurement("enqueueTxCount", "int")
measure.title = "Enq. trans. pending"
- measure.categories = ("transactional")
+ measure.categories = ("transaction")
measure.highlow = True
self.measurements.append(measure)
measure = Measurement("dequeueTxStarts", "int")
measure.title = "Deq. trans. started"
- measure.categories = ("transactional")
+ measure.categories = ("transaction")
self.measurements.append(measure)
measure = Measurement("dequeueTxCommits", "int")
measure.title = "Deq. trans. committed"
- measure.categories = ("transactional")
+ measure.categories = ("transaction")
self.measurements.append(measure)
measure = Measurement("dequeueTxRejects", "int")
measure.title = "Deq. trans. rejected"
- measure.categories = ("transactional")
+ measure.categories = ("transaction")
self.measurements.append(measure)
measure = Measurement("dequeueTxCount", "int")
measure.title = "Deq. trans. pending"
- measure.categories = ("transactional")
+ measure.categories = ("transaction")
measure.highlow = True
self.measurements.append(measure)
Modified: mgmt/cumin/python/cumin/queue.py
===================================================================
--- mgmt/cumin/python/cumin/queue.py 2007-10-24 14:30:29 UTC (rev 1153)
+++ mgmt/cumin/python/cumin/queue.py 2007-10-24 14:58:02 UTC (rev 1154)
@@ -372,6 +372,9 @@
self.add_child(MeasurementSet \
(app, "persistent_stats", "persistent"))
+ self.add_child(MeasurementSet \
+ (app, "transaction_stats", "transaction"))
+
def render_title(self, session, queue):
return "Current"
Modified: mgmt/cumin/python/cumin/queue.strings
===================================================================
--- mgmt/cumin/python/cumin/queue.strings 2007-10-24 14:30:29 UTC (rev 1153)
+++ mgmt/cumin/python/cumin/queue.strings 2007-10-24 14:58:02 UTC (rev 1154)
@@ -203,6 +203,8 @@
<td class="twocol">
<h2>Transactional Messages</h2>
{transactional_stats}
+ <h2>Transactions</h2>
+ {transaction_stats}
</td>
</tr>
</table>
Modified: mgmt/notes/Todo
===================================================================
--- mgmt/notes/Todo 2007-10-24 14:30:29 UTC (rev 1153)
+++ mgmt/notes/Todo 2007-10-24 14:58:02 UTC (rev 1154)
@@ -85,8 +85,6 @@
* Add a CuminItemSet with add/edit/remove href parts
- * Make the groups browser use common code with the cluster browser
-
* Rename ServerGroupType to ServerGroupCategory
* Add a frame() accessor to Widget
@@ -109,7 +107,3 @@
* exch: link bindings, producers stats to respective views
* model: get rid of the old *_count stat fields and use the new ones
-
- * queue: distinguish trans. msg stats from trans. stats
-
- * write up a designer work list
18 years, 6 months
rhmessaging commits: r1153 - in mgmt: notes and 1 other directory.
by rhmessaging-commits@lists.jboss.org
Author: justi9
Date: 2007-10-24 10:30:29 -0400 (Wed, 24 Oct 2007)
New Revision: 1153
Modified:
mgmt/cumin/python/wooly/widgets.py
mgmt/cumin/python/wooly/widgets.strings
mgmt/notes/Todo
Log:
Parks a first attempt at a more built up table widget that would
supporting sorting, disappeared columns, etc. This doesn't work yet.
Modified: mgmt/cumin/python/wooly/widgets.py
===================================================================
--- mgmt/cumin/python/wooly/widgets.py 2007-10-23 21:16:07 UTC (rev 1152)
+++ mgmt/cumin/python/wooly/widgets.py 2007-10-24 14:30:29 UTC (rev 1153)
@@ -126,6 +126,7 @@
return None
def do_render(self, session, object):
+ # XXX don't do this twice
items = self.get_items(session, object)
if items:
@@ -167,3 +168,55 @@
self.item_tmpl.render(session, child, writer)
return writer.to_string()
+
+class ItemTable(ItemSet):
+ def __init__(self, app, name):
+ super(ItemTable, self).__init__(app, name)
+
+ self.heading_tmpl = Template(self, "heading_html")
+ self.cell_tmpl = Template(self, "cell_html")
+
+ self.columns = list()
+
+ def add_column(self, column):
+ self.columns.append(column)
+ self.add_child(column)
+
+ def get_items(self, session, object):
+ return None
+
+ def render_headings(self, session, object):
+ writer = Writer()
+
+ for col in self.columns:
+ if col.visible.get(session):
+ col.render_heading(session, object, writer)
+
+ return writer.to_string()
+
+ def render_cells(self, session, item):
+ writer = Writer()
+
+ for col in self.columns:
+ if col.visible.get(session):
+ col.render_cell(session, item, writer)
+
+ return writer.to_string()
+
+ def render_none(self, session, object):
+ """For producing a message when the table is empty"""
+
+ return None
+
+class ItemTableColumn(Widget):
+ def __init__(self, app, name):
+ super(ItemTableColumn, self).__init__(app, name)
+
+ self.visible = Attribute(app, "visible")
+ self.visible.set_default(True)
+ self.add_attribute(self.visible)
+
+ def render_cell_content(self, session, item):
+ pass
+
+
Modified: mgmt/cumin/python/wooly/widgets.strings
===================================================================
--- mgmt/cumin/python/wooly/widgets.strings 2007-10-23 21:16:07 UTC (rev 1152)
+++ mgmt/cumin/python/wooly/widgets.strings 2007-10-24 14:30:29 UTC (rev 1153)
@@ -72,3 +72,23 @@
[ItemTree.item_html]
<li>{item_content}</li>
<ul>{child_items}</ul>
+
+[ItemTable.html]
+<table>
+ <tr>
+ {headings}
+ </tr>
+
+ {items}
+</table>
+
+[ItemTable.heading_html]
+<th>{heading_content}</th>
+
+[ItemTable.item_html]
+<tr>
+ {cells}
+</tr>
+
+[ItemTable.cell_html]
+<td>{cell_content}</td>
Modified: mgmt/notes/Todo
===================================================================
--- mgmt/notes/Todo 2007-10-23 21:16:07 UTC (rev 1152)
+++ mgmt/notes/Todo 2007-10-24 14:30:29 UTC (rev 1153)
@@ -38,16 +38,8 @@
* Add favicon and a mapping in the server to serve it
- * Create a model.dtd
-
- * Add scalar get/setters to ModelObject
-
* Separate wooly stuff into its own devel subdir
- * Add creation dates to some objects
-
- * cumindev: add a cumin-test function and bind it to C-c C-c
-
* Consider having a cssclass set on widgets
* Use page attributes for session errors, redirect
@@ -55,9 +47,6 @@
* See if we can eliminate the attr/param distinction, and use whether
or not a param is added to a widget via add_param to do that
- * Add link disabling; use it for the server groups edit and remove
- links
-
* Add a parameter that takes a modelclass
* Servers tab
@@ -122,3 +111,5 @@
* model: get rid of the old *_count stat fields and use the new ones
* queue: distinguish trans. msg stats from trans. stats
+
+ * write up a designer work list
18 years, 6 months
rhmessaging commits: r1152 - in mgmt: notes and 1 other directory.
by rhmessaging-commits@lists.jboss.org
Author: justi9
Date: 2007-10-23 17:16:07 -0400 (Tue, 23 Oct 2007)
New Revision: 1152
Modified:
mgmt/cumin/python/cumin/model.py
mgmt/notes/Todo
Log:
Makes all the appropriate demo model objects use MeasuredModelObject
Modified: mgmt/cumin/python/cumin/model.py
===================================================================
--- mgmt/cumin/python/cumin/model.py 2007-10-23 21:09:57 UTC (rev 1151)
+++ mgmt/cumin/python/cumin/model.py 2007-10-23 21:16:07 UTC (rev 1152)
@@ -175,6 +175,17 @@
def get_realm(self, id):
return self.get_index(self.realm).get(id)
+class MeasuredModelObject(ModelObject):
+ def __init__(self, model, mclass):
+ super(MeasuredModelObject, self).__init__(model, mclass)
+
+ self.measurements = list()
+
+ def get_measurement(self, name):
+ for measure in self.measurements:
+ if measure.name == name:
+ return measure
+
class Cluster(ModelObject):
def __init__(self, model):
super(Cluster, self).__init__(model, model.cluster)
@@ -337,7 +348,7 @@
def get_low(self):
return self.__low
-class Queue(ModelObject):
+class Queue(MeasuredModelObject):
def __init__(self, model):
super(Queue, self).__init__(model, model.queue)
@@ -352,8 +363,6 @@
self.error_count = 0
self.warning_count = 0
- self.measurements = list()
-
# General
measure = Measurement("msgDepth", "int")
@@ -502,11 +511,6 @@
measure.categories = ("byte", "persistent")
self.measurements.append(measure)
- def get_measurement(self, name):
- for measure in self.measurements:
- if measure.name == name:
- return measure
-
def remove(self):
for binding in self.binding_items().copy():
binding.remove()
@@ -533,17 +537,6 @@
writer.write("</queue>")
-class MeasuredModelObject(ModelObject):
- def __init__(self, model, mclass):
- super(MeasuredModelObject, self).__init__(model, mclass)
-
- self.measurements = list()
-
- def get_measurement(self, name):
- for measure in self.measurements:
- if measure.name == name:
- return measure
-
class Consumer(MeasuredModelObject):
def __init__(self, model):
super(Consumer, self).__init__(model, model.consumer)
@@ -566,7 +559,7 @@
measure.highlow = True
self.measurements.append(measure)
-class Exchange(ModelObject):
+class Exchange(MeasuredModelObject):
def __init__(self, model):
super(Exchange, self).__init__(model, model.exchange)
@@ -577,8 +570,6 @@
self.is_auto_delete = False
self.is_internal = False
- self.measurements = list()
-
measure = Measurement("bindings", "int")
measure.title = "Bindings"
measure.categories = ("general")
@@ -615,11 +606,6 @@
measure.categories = ("byte", "general")
self.measurements.append(measure)
- def get_measurement(self, name):
- for measure in self.measurements:
- if measure.name == name:
- return measure
-
def remove(self):
for binding in self.binding_items().copy():
binding.remove()
@@ -656,24 +642,17 @@
measure.categories = ("byte", "general")
self.measurements.append(measure)
-class Binding(ModelObject):
+class Binding(MeasuredModelObject):
def __init__(self, model):
super(Binding, self).__init__(model, model.binding)
self.binding_key = None
- self.measurements = list()
-
measure = Measurement("msgMatched", "int")
measure.title = "Messages matched"
measure.categories = ("message", "general")
self.measurements.append(measure)
- def get_measurement(self, name):
- for measure in self.measurements:
- if measure.name == name:
- return measure
-
def write_xml(self, writer):
writer.write("<binding id=\"binding-%i\">" % self.id)
writer.write("<exchange ref=\"exchange-%i\"/>" % self.exchange.id)
@@ -681,14 +660,12 @@
writer.write("<binding-key>%s</binding-key>" % self.binding_key)
writer.write("</binding>")
-class Client(ModelObject):
+class Client(MeasuredModelObject):
def __init__(self, model):
super(Client, self).__init__(model, model.client)
self.address = None
- self.measurements = list()
-
measure = Measurement("msgsProduced", "int")
measure.title = "Messages produced"
measure.categories = ("message", "general")
@@ -709,19 +686,12 @@
measure.categories = ("message", "general")
self.measurements.append(measure)
- def get_measurement(self, name):
- for measure in self.measurements:
- if measure.name == name:
- return measure
-
-class Session(ModelObject):
+class Session(MeasuredModelObject):
def __init__(self, model):
super(Session, self).__init__(model, model.session)
self.name = None
- self.measurements = list()
-
measure = Measurement("attached", "bool")
measure.title = "Attached"
measure.categories = ("general")
@@ -736,8 +706,3 @@
measure.title = "Frames outstanding"
measure.categories = ("general")
self.measurements.append(measure)
-
- def get_measurement(self, name):
- for measure in self.measurements:
- if measure.name == name:
- return measure
Modified: mgmt/notes/Todo
===================================================================
--- mgmt/notes/Todo 2007-10-23 21:09:57 UTC (rev 1151)
+++ mgmt/notes/Todo 2007-10-23 21:16:07 UTC (rev 1152)
@@ -111,12 +111,14 @@
* Remove legacy show_view methods now that we have set_view_mode
- * Make the model objects use MeasuredModelObject
-
* Add more bindings to the demo data
* Add producers to the default exchange
* queue: link consumers stat to consumers view
- * exch: link bindings, proucers stats to respective views
+ * exch: link bindings, producers stats to respective views
+
+ * model: get rid of the old *_count stat fields and use the new ones
+
+ * queue: distinguish trans. msg stats from trans. stats
18 years, 6 months
rhmessaging commits: r1151 - in mgmt: notes and 1 other directory.
by rhmessaging-commits@lists.jboss.org
Author: justi9
Date: 2007-10-23 17:09:57 -0400 (Tue, 23 Oct 2007)
New Revision: 1151
Modified:
mgmt/cumin/python/cumin/exchange.py
mgmt/cumin/python/cumin/queue.py
mgmt/notes/Todo
Log:
Reorders the queue and exchange tabs. Makes stats first.
Modified: mgmt/cumin/python/cumin/exchange.py
===================================================================
--- mgmt/cumin/python/cumin/exchange.py 2007-10-23 20:55:55 UTC (rev 1150)
+++ mgmt/cumin/python/cumin/exchange.py 2007-10-23 21:09:57 UTC (rev 1151)
@@ -87,9 +87,9 @@
self.tabs = TabSet(app, "tabs")
self.add_child(self.tabs)
+ self.tabs.add_tab(ExchangeStatistics(app, "stats"))
self.tabs.add_tab(ProducerSet(app, "producers"))
self.tabs.add_tab(ExchangeBindingSet(app, "bindings"))
- self.tabs.add_tab(ExchangeStatistics(app, "stats"))
def render_title(self, session, exchange):
return "Exchange '%s'" % exchange.name
Modified: mgmt/cumin/python/cumin/queue.py
===================================================================
--- mgmt/cumin/python/cumin/queue.py 2007-10-23 20:55:55 UTC (rev 1150)
+++ mgmt/cumin/python/cumin/queue.py 2007-10-23 21:09:57 UTC (rev 1151)
@@ -114,9 +114,9 @@
self.tabs = TabSet(app, "tabs")
self.add_child(self.tabs)
+ self.tabs.add_tab(QueueStatistics(app, "stats"))
self.tabs.add_tab(ConsumerSet(app, "consumers"))
self.tabs.add_tab(QueueBindingSet(app, "bindings"))
- self.tabs.add_tab(QueueStatistics(app, "stats"))
def render_title(self, session, queue):
return "Queue '%s'" % queue.name
Modified: mgmt/notes/Todo
===================================================================
--- mgmt/notes/Todo 2007-10-23 20:55:55 UTC (rev 1150)
+++ mgmt/notes/Todo 2007-10-23 21:09:57 UTC (rev 1151)
@@ -117,10 +117,6 @@
* Add producers to the default exchange
- * queue: make stats first
-
* queue: link consumers stat to consumers view
- * exch: make stats first
-
* exch: link bindings, proucers stats to respective views
18 years, 6 months
rhmessaging commits: r1150 - in mgmt: notes and 1 other directory.
by rhmessaging-commits@lists.jboss.org
Author: justi9
Date: 2007-10-23 16:55:55 -0400 (Tue, 23 Oct 2007)
New Revision: 1150
Modified:
mgmt/cumin/python/cumin/exchange.py
mgmt/cumin/python/cumin/exchange.strings
mgmt/cumin/python/cumin/model.py
mgmt/cumin/python/cumin/queue.py
mgmt/cumin/python/cumin/queue.strings
mgmt/notes/Todo
Log:
Renames routing_key to binding_key. Adds some todo items.
Modified: mgmt/cumin/python/cumin/exchange.py
===================================================================
--- mgmt/cumin/python/cumin/exchange.py 2007-10-23 18:45:18 UTC (rev 1149)
+++ mgmt/cumin/python/cumin/exchange.py 2007-10-23 20:55:55 UTC (rev 1150)
@@ -126,8 +126,8 @@
def render_item_name(self, session, binding):
return binding.get_queue().name
- def render_item_routing_key(self, session, binding):
- return binding.routing_key
+ def render_item_binding_key(self, session, binding):
+ return binding.binding_key
def render_item_messages_matched(self, session, binding):
return binding.get_measurement("msgMatched").get_value()
Modified: mgmt/cumin/python/cumin/exchange.strings
===================================================================
--- mgmt/cumin/python/cumin/exchange.strings 2007-10-23 18:45:18 UTC (rev 1149)
+++ mgmt/cumin/python/cumin/exchange.strings 2007-10-23 20:55:55 UTC (rev 1150)
@@ -113,7 +113,7 @@
[ExchangeBindingSet.item_html]
<tr>
<td><a href="{item_href}">Queue '{item_name}'</a></td>
- <td>{item_routing_key}</td>
+ <td>{item_binding_key}</td>
<td style="text-align: right;">{item_messages_matched}</td>
</tr>
Modified: mgmt/cumin/python/cumin/model.py
===================================================================
--- mgmt/cumin/python/cumin/model.py 2007-10-23 18:45:18 UTC (rev 1149)
+++ mgmt/cumin/python/cumin/model.py 2007-10-23 20:55:55 UTC (rev 1150)
@@ -245,7 +245,7 @@
# Default binding
binding = Binding(self.model)
- binding.routing_key = queue.name
+ binding.binding_key = queue.name
binding.set_queue(queue)
binding.set_exchange(self.default_exchange)
@@ -660,7 +660,7 @@
def __init__(self, model):
super(Binding, self).__init__(model, model.binding)
- self.routing_key = None
+ self.binding_key = None
self.measurements = list()
@@ -678,7 +678,7 @@
writer.write("<binding id=\"binding-%i\">" % self.id)
writer.write("<exchange ref=\"exchange-%i\"/>" % self.exchange.id)
writer.write("<queue ref=\"queue-%i\"/>" % self.queue.id)
- writer.write("<routing-key>%s</routing-key>" % self.routing_key)
+ writer.write("<binding-key>%s</binding-key>" % self.binding_key)
writer.write("</binding>")
class Client(ModelObject):
Modified: mgmt/cumin/python/cumin/queue.py
===================================================================
--- mgmt/cumin/python/cumin/queue.py 2007-10-23 18:45:18 UTC (rev 1149)
+++ mgmt/cumin/python/cumin/queue.py 2007-10-23 20:55:55 UTC (rev 1150)
@@ -149,8 +149,8 @@
def render_item_name(self, session, binding):
return binding.get_exchange().name
- def render_item_routing_key(self, session, binding):
- return binding.routing_key
+ def render_item_binding_key(self, session, binding):
+ return binding.binding_key
def render_item_messages_matched(self, session, binding):
return binding.get_measurement("msgMatched").get_value()
@@ -283,8 +283,8 @@
self.exchanges = self.Exchanges(app, "exchanges", self)
self.add_child(self.exchanges)
- self.routing_key = TextInput(app, "routing_key", self)
- self.add_child(self.routing_key)
+ self.binding_key = TextInput(app, "binding_key", self)
+ self.add_child(self.binding_key)
def render_title(self, session, queue):
return "Add Binding to Queue '%s'" % queue.name
@@ -297,10 +297,10 @@
def validate(self, session):
valid = True
- if not self.routing_key.get(session):
+ if not self.binding_key.get(session):
valid = False
- self.routing_key.add_error(session, """
- The routing key is empty; it is required
+ self.binding_key.add_error(session, """
+ The binding key is empty; it is required
""")
if not self.exchanges.get(session):
@@ -317,7 +317,7 @@
binding.lock()
try:
- binding.routing_key = self.routing_key.get(session)
+ binding.binding_key = self.binding_key.get(session)
binding.set_queue(queue)
binding.set_exchange(self.exchanges.get(session))
finally:
Modified: mgmt/cumin/python/cumin/queue.strings
===================================================================
--- mgmt/cumin/python/cumin/queue.strings 2007-10-23 18:45:18 UTC (rev 1149)
+++ mgmt/cumin/python/cumin/queue.strings 2007-10-23 20:55:55 UTC (rev 1150)
@@ -149,7 +149,7 @@
[QueueBindingSet.item_html]
<tr>
<td><a href="{item_href}">Exchange '{item_name}'</a></td>
- <td>{item_routing_key}</td>
+ <td>{item_binding_key}</td>
<td style="text-align: right;">{item_messages_matched}</td>
</tr>
@@ -162,9 +162,9 @@
<span class="legend">Exchange</span>
<fieldset>{exchanges}</fieldset>
- <span class="legend">Routing Key</span>
+ <span class="legend">Binding Key</span>
<fieldset>
- <div class="field">{routing_key}</div>
+ <div class="field">{binding_key}</div>
</fieldset>
{hidden_inputs}
Modified: mgmt/notes/Todo
===================================================================
--- mgmt/notes/Todo 2007-10-23 18:45:18 UTC (rev 1149)
+++ mgmt/notes/Todo 2007-10-23 20:55:55 UTC (rev 1150)
@@ -109,10 +109,18 @@
* Add a sanity check traversal to the widget tree and to the
registered sets of widgets and parameters
- * Rename routing_key to binding_key
-
* Remove legacy show_view methods now that we have set_view_mode
* Make the model objects use MeasuredModelObject
* Add more bindings to the demo data
+
+ * Add producers to the default exchange
+
+ * queue: make stats first
+
+ * queue: link consumers stat to consumers view
+
+ * exch: make stats first
+
+ * exch: link bindings, proucers stats to respective views
18 years, 6 months
rhmessaging commits: r1149 - mgmt/cumin/python/cumin.
by rhmessaging-commits@lists.jboss.org
Author: justi9
Date: 2007-10-23 14:45:18 -0400 (Tue, 23 Oct 2007)
New Revision: 1149
Modified:
mgmt/cumin/python/cumin/page.py
mgmt/cumin/python/cumin/page.strings
mgmt/cumin/python/cumin/server.py
mgmt/cumin/python/cumin/server.strings
mgmt/cumin/python/cumin/servergroup.py
mgmt/cumin/python/cumin/servergroup.strings
Log:
Adds checkboxes to server groups. Refactors server group set a
little. Adds a version field to the server view.
Modified: mgmt/cumin/python/cumin/page.py
===================================================================
--- mgmt/cumin/python/cumin/page.py 2007-10-23 18:31:45 UTC (rev 1148)
+++ mgmt/cumin/python/cumin/page.py 2007-10-23 18:45:18 UTC (rev 1149)
@@ -164,9 +164,10 @@
super(MainView, self).__init__(app, name)
self.add_tab(self.ServerTab(app, "servers"))
- self.add_tab(self.ServerGroupTab(app, "groups"))
+ self.add_tab(ServerGroupSet(app, "groups"))
self.add_tab(self.ServerProfileTab(app, "profiles"))
self.add_tab(self.ClusterTab(app, "clusters"))
+ self.add_tab(self.TagTab(app, "tags"))
def show_server_group(self, session, group):
mode = self.show_mode(session, self.servers)
@@ -180,15 +181,6 @@
def render_title(self, session, model):
return "Servers (%i)" % len(model.get_servers())
- class ServerGroupTab(ServerGroupSet):
- def render_title(self, session, model):
- return "Server Groups (%i)" % len(model.get_server_groups())
-
- def render_group_add_href(self, session, model):
- branch = session.branch()
- self.page().show_server_group_add(branch)
- return branch.marshal()
-
class ServerProfileTab(ServerProfileSet):
def render_title(self, session, model):
return "Server Profiles (%i)" % len(model.get_server_profiles())
@@ -196,3 +188,7 @@
class ClusterTab(ClusterSet):
def render_title(self, session, model):
return "Clusters (%i)" % len(model.get_clusters())
+
+ class TagTab(Widget):
+ def render_title(self, session, model):
+ return "Tags"
Modified: mgmt/cumin/python/cumin/page.strings
===================================================================
--- mgmt/cumin/python/cumin/page.strings 2007-10-23 18:31:45 UTC (rev 1148)
+++ mgmt/cumin/python/cumin/page.strings 2007-10-23 18:45:18 UTC (rev 1149)
@@ -455,21 +455,6 @@
<div class="TabSet mode">{mode}</div>
</div>
-[ServerGroupTab.html]
-<ul class="actions">
- <li><a href="{group_add_href}">Add Server Group</a></li>
-</ul>
-
-<table class="mobjects">
- <tr>
- <th>Server</th>
- <th>Configuration</th>
- <th>Status</th>
- </tr>
-
- {items}
-</table>
-
[ServerProfileTab.html]
<ul class="actions">
<li><a href="">Add Server Profile</a></li>
Modified: mgmt/cumin/python/cumin/server.py
===================================================================
--- mgmt/cumin/python/cumin/server.py 2007-10-23 18:31:45 UTC (rev 1148)
+++ mgmt/cumin/python/cumin/server.py 2007-10-23 18:45:18 UTC (rev 1149)
@@ -258,6 +258,9 @@
return html
+ def render_version(self, session, server):
+ return "1.0"
+
class ServerVirtualHostTab(VirtualHostSet):
def render_title(self, session, server):
return "Functional Hosts (%i)" % len(server.virtual_host_items())
Modified: mgmt/cumin/python/cumin/server.strings
===================================================================
--- mgmt/cumin/python/cumin/server.strings 2007-10-23 18:31:45 UTC (rev 1148)
+++ mgmt/cumin/python/cumin/server.strings 2007-10-23 18:45:18 UTC (rev 1149)
@@ -151,6 +151,7 @@
<dt>Name</dt><dd>{name}</dd>
<dt>Cluster</dt><dd>{cluster_link}</dd>
<dt>Server Profile</dt><dd>{profile_link}</dd>
+ <dt>Software Version</dt><dd>{version}</dd>
</dl>
<ul class="actions">
Modified: mgmt/cumin/python/cumin/servergroup.py
===================================================================
--- mgmt/cumin/python/cumin/servergroup.py 2007-10-23 18:31:45 UTC (rev 1148)
+++ mgmt/cumin/python/cumin/servergroup.py 2007-10-23 18:45:18 UTC (rev 1149)
@@ -10,6 +10,14 @@
strings = StringCatalog(__file__)
class ServerGroupSet(ItemSet):
+ def render_title(self, session, model):
+ return "Server Groups (%i)" % len(model.get_server_groups())
+
+ def render_group_add_href(self, session, model):
+ branch = session.branch()
+ self.page().show_server_group_add(branch)
+ return branch.marshal()
+
def get_items(self, session, model):
return sorted_by(model.get_server_groups())
Modified: mgmt/cumin/python/cumin/servergroup.strings
===================================================================
--- mgmt/cumin/python/cumin/servergroup.strings 2007-10-23 18:31:45 UTC (rev 1148)
+++ mgmt/cumin/python/cumin/servergroup.strings 2007-10-23 18:45:18 UTC (rev 1149)
@@ -1,7 +1,17 @@
[ServerGroupSet.html]
+<ul class="actions">
+ <li><a href="{group_add_href}">Add Server Group</a></li>
+</ul>
+
+<button>Shutdown</button>
+<button>Remove</button>
+
+<br/><br/>
+
<table class="mobjects">
<tr>
- <th>Server</th>
+ <th><input type="checkbox"/></th>
+ <th>Server Group</th>
<th>Configuration</th>
<th>Status</th>
</tr>
@@ -11,6 +21,7 @@
[ServerGroupSet.item_html]
<tr>
+ <td><input type="checkbox"/></td>
<td>{item_link}</td>
<td>{item_config}</td>
<td>{item_status}</td>
18 years, 6 months