[rhmessaging-commits] rhmessaging commits: r4266 - mgmt/newdata/cumin/python/cumin.
rhmessaging-commits at lists.jboss.org
rhmessaging-commits at lists.jboss.org
Thu Sep 9 09:34:56 EDT 2010
Author: eallen
Date: 2010-09-09 09:34:55 -0400 (Thu, 09 Sep 2010)
New Revision: 4266
Modified:
mgmt/newdata/cumin/python/cumin/model.py
mgmt/newdata/cumin/python/cumin/stat.py
Log:
Fix BZ 630925 - Flash fullpage history slider doesn't work. Also fixed a problem introduced in all flash charts with the new agent parameter. When it contained colons, open-flash-chart would reject it as an invalid URL.
Modified: mgmt/newdata/cumin/python/cumin/model.py
===================================================================
--- mgmt/newdata/cumin/python/cumin/model.py 2010-09-09 13:17:03 UTC (rev 4265)
+++ mgmt/newdata/cumin/python/cumin/model.py 2010-09-09 13:34:55 UTC (rev 4266)
@@ -496,7 +496,8 @@
when2 = ""
if secs2:
when2 = "now() - interval '%i seconds'" % int(secs2)
- SqlComparisonFilter(self.query, updated_col, when2, "<=")
+ filter = SqlComparisonFilter(updated_col, when2, "<=")
+ self.query.add_filter(filter)
options = SqlQueryOptions()
options.sort_column = "interval_end"
Modified: mgmt/newdata/cumin/python/cumin/stat.py
===================================================================
--- mgmt/newdata/cumin/python/cumin/stat.py 2010-09-09 13:17:03 UTC (rev 4265)
+++ mgmt/newdata/cumin/python/cumin/stat.py 2010-09-09 13:34:55 UTC (rev 4266)
@@ -108,8 +108,11 @@
object = self.object.get(session)
params = list()
- params.append("agent=%s" % object._qmf_agent_id)
- params.append("object=%s" % object._qmf_object_id)
+ # open-flash-chart can't handle the : in the agent id. Net even if
+ # it's converted to %3A, so we have to change it
+ params.append("agent=%s" % object._qmf_agent_id.replace(":", "|"))
+
+ params.append("object_id=%s" % object._qmf_object_id)
params.append("chart_id=%s" % self.render_id(session, None))
params.append("duration=%s" % self.duration.get(session))
params.append("rpkg=%s" % object._class._package._name)
@@ -128,7 +131,7 @@
def render_href(self, session):
params = self.get_href_params(session)
- return "%s?" % self.get_chart_name(session) + ";".join(params)
+ return escape_entity("%s?" % self.get_chart_name(session) + ";".join(params))
def get_chart_name(self, session):
return "stats.png"
@@ -179,7 +182,7 @@
def render_fullpage_href(self, session):
params = self.get_href_params(session)
- return "flashpage.html?" + ";".join(params)
+ return escape_entity("flashpage.html?" + ";".join(params))
def render_width(self, session):
return 360
@@ -234,10 +237,10 @@
self.rosemary_package = Parameter(app, "rpkg")
self.add_parameter(self.rosemary_package)
- self.agent_id = StringParameter(app, "agent")
+ self.agent_id = ModifiedAgentIdParameter(app, "agent")
self.add_parameter(self.agent_id)
- self.object_id = StringParameter(app, "object")
+ self.object_id = StringParameter(app, "object_id")
self.add_parameter(self.object_id)
param = Parameter(app, "param")
@@ -459,6 +462,11 @@
chart.write(writer)
return writer.to_string()
+class ModifiedAgentIdParameter(StringParameter):
+ def get(self, session):
+ agent = super(ModifiedAgentIdParameter, self).get(session)
+ return agent.replace("|", ":")
+
class FlashFullPage(HtmlPage):
def __init__(self, app, name):
super(FlashFullPage, self).__init__(app, name)
@@ -467,8 +475,8 @@
self.updater.update_enabled = True
self.add_child(self.updater)
- self.id = IntegerParameter(app, "id")
- self.add_parameter(self.id)
+ self.object_id = StringParameter(app, "object_id")
+ self.add_parameter(self.object_id)
self.rosemary_class = Parameter(app, "rcls")
self.add_parameter(self.rosemary_class)
@@ -480,8 +488,6 @@
self.add_attribute(self.object)
param = Parameter(app, "param")
- self.add_parameter(param)
-
self.stats = ListParameter(app, "stat", param)
self.add_parameter(self.stats)
@@ -517,12 +523,14 @@
rosemary_package = self.app.model._packages_by_name[rpackage]
rosemary_class = rosemary_package._classes_by_name[rclass]
- id = self.widget.id.get(session)
+ object_id = self.widget.object_id.get(session)
+ #id = self.widget.id.get(session)
conn = self.app.database.get_connection()
cursor = conn.cursor()
try:
- obj = rosemary_class.get_object_by_id(cursor, id)
+ obj = rosemary_class.get_object(cursor, _qmf_object_id=object_id)
+ #obj = rosemary_class.get_object_by_id(cursor, id)
finally:
cursor.close()
@@ -541,7 +549,7 @@
params = self.get_href_params(session)
params.append("width=%i" % self.render_width(session))
params.append("height=%i" % self.render_height(session))
- return "%s?" % self.get_chart_name(session) + ";".join(params)
+ return escape_entity("%s?" % self.get_chart_name(session) + ";".join(params))
def render_href(self, session):
params = self.get_href_params(session)
More information about the rhmessaging-commits
mailing list