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

rhmessaging-commits at lists.jboss.org rhmessaging-commits at lists.jboss.org
Wed Jul 7 17:34:04 EDT 2010


Author: justi9
Date: 2010-07-07 17:34:03 -0400 (Wed, 07 Jul 2010)
New Revision: 4086

Modified:
   mgmt/newdata/cumin/python/cumin/grid/submission.py
   mgmt/newdata/cumin/python/cumin/messaging/brokergroup.py
   mgmt/newdata/cumin/python/cumin/objecttask.py
   mgmt/newdata/cumin/python/cumin/objecttask.strings
Log:
Improved task invocation display

Modified: mgmt/newdata/cumin/python/cumin/grid/submission.py
===================================================================
--- mgmt/newdata/cumin/python/cumin/grid/submission.py	2010-07-07 14:42:36 UTC (rev 4085)
+++ mgmt/newdata/cumin/python/cumin/grid/submission.py	2010-07-07 21:34:03 UTC (rev 4086)
@@ -89,6 +89,8 @@
 
         ad["!!descriptors"] = descriptors
 
+        invoc.description = "Create submission '%s'" % description
+
         self.qmf_call(invoc, scheduler, "SubmitJob", ad)
 
 class SubmissionAddForm(ObjectTaskForm):

Modified: mgmt/newdata/cumin/python/cumin/messaging/brokergroup.py
===================================================================
--- mgmt/newdata/cumin/python/cumin/messaging/brokergroup.py	2010-07-07 14:42:36 UTC (rev 4085)
+++ mgmt/newdata/cumin/python/cumin/messaging/brokergroup.py	2010-07-07 21:34:03 UTC (rev 4086)
@@ -134,6 +134,9 @@
             cursor.close()
 
         conn.commit()
+
+        invoc.description = "Add broker group '%s'" % name
+
         invoc.end()
 
 class BrokerGroupAddForm(BrokerGroupForm):

Modified: mgmt/newdata/cumin/python/cumin/objecttask.py
===================================================================
--- mgmt/newdata/cumin/python/cumin/objecttask.py	2010-07-07 14:42:36 UTC (rev 4085)
+++ mgmt/newdata/cumin/python/cumin/objecttask.py	2010-07-07 21:34:03 UTC (rev 4086)
@@ -141,9 +141,9 @@
         pass
 
 class TaskInvocation(object):
-    PENDING = "pending"
-    FAILED = "failed"
-    OK = "ok"
+    PENDING = "Pending"
+    FAILED = "Failed"
+    OK = "OK"
 
     def __init__(self, task, login_session):
         self.task = task
@@ -159,17 +159,24 @@
 
         self.status = None
         self.exception = None
+        self.description = None
 
         self.status_code = None
         self.output_args = None
 
         self.dismissed = False
 
-    def get_summary(self, session):
+    def get_description(self, session):
+        if self.description:
+            return self.description
+
+        return self.task.get_description(session)
+
+    def get_status(self, session):
         if self.exception:
             return str(self.exception)
 
-        return "%s %r" % (self.status, self.output_args)
+        return self.status
     
     def end(self):
         log.debug("Ending %s", self.task)
@@ -184,16 +191,18 @@
 
         log.info("Ended %s", self.task)
 
-class TaskInvocationSet(ItemSet):
+class TaskInvocationSet(Widget):
     def __init__(self, app, name):
         super(TaskInvocationSet, self).__init__(app, name)
 
-        self.html_class = TaskInvocationSet.__name__
         self.update_enabled = True
 
         self.dismiss = IntegerParameter(app, "dismiss")
         self.add_parameter(self.dismiss)
 
+        self.item_widget = TaskInvocationItem(app, "item")
+        self.add_child(self.item_widget)
+
     def get_items(self, session):
         login = session.client_session.attributes["login_session"]
         return [x for x in login.task_invocations if not x.dismissed]
@@ -218,23 +227,34 @@
         if items:
             return super(TaskInvocationSet, self).do_render(session)
 
-    def render_item_content(self, session, item):
-        description = item.task.get_description(session)
+    def render_items(self, session):
+        writer = Writer()
+
+        for item in self.get_items(session):
+            writer.write(self.item_widget.render(session, item))
+
+        return writer.to_string()
+
+class TaskInvocationItem(Widget):
+    def render_icon_href(self, session, item):
+        return "resource?name=add-20.png"
+
+    def render_message(self, session, item):
+        description = item.get_description(session)
         description = xml_escape(description)
 
         if not description:
             description = ""
 
-        summary = item.get_summary(session)
+        status = item.get_status(session)
 
-        # XXX oh honey
+        return "%s: %s" % (description, status)
 
+    def render_dismiss_href(self, session, item):
         branch = session.branch()
-        self.dismiss.set(branch, id(item))
-        link = fmt_link(branch.marshal(), "Dismiss")
+        self.parent.dismiss.set(branch, id(item))
+        return branch.marshal()
 
-        return ": ".join((description, summary, link))
-
 class SelectionTask(Task):
     def __init__(self, app, selector):
         super(SelectionTask, self).__init__(app)

Modified: mgmt/newdata/cumin/python/cumin/objecttask.strings
===================================================================
--- mgmt/newdata/cumin/python/cumin/objecttask.strings	2010-07-07 14:42:36 UTC (rev 4085)
+++ mgmt/newdata/cumin/python/cumin/objecttask.strings	2010-07-07 21:34:03 UTC (rev 4086)
@@ -8,6 +8,19 @@
     width: 80%;
 }
 
+ul.TaskInvocationSet a.dismiss {
+    float: right;
+}
+
+[TaskInvocationSet.html]
+<ul id="{id}" class="{class}">{items}</ul>
+
+[TaskInvocationItem.html]
+<li>
+  <a class="dismiss" href="{dismiss_href}">Dismiss</a>
+  {message}
+</li>
+
 [SelectionList.css]
 ul.SelectionList {
     list-style: none;



More information about the rhmessaging-commits mailing list