rhmessaging commits: r2592 - mgmt/trunk/cumin/python/cumin.
by rhmessaging-commits@lists.jboss.org
Author: eallen
Date: 2008-10-03 14:52:27 -0400 (Fri, 03 Oct 2008)
New Revision: 2592
Modified:
mgmt/trunk/cumin/python/cumin/widgets.py
Log:
Fixup CheckboxStringIdColumn for FormInput
Modified: mgmt/trunk/cumin/python/cumin/widgets.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/widgets.py 2008-10-03 18:39:44 UTC (rev 2591)
+++ mgmt/trunk/cumin/python/cumin/widgets.py 2008-10-03 18:52:27 UTC (rev 2592)
@@ -779,6 +779,30 @@
return t % (name, id, attr, disa)
+class CheckboxStringIdColumn(FormInput, SqlTableColumn):
+ def __init__(self, app, name):
+ super(CheckboxStringIdColumn, self).__init__(app, name, None)
+
+ self.header_class = CheckboxIdColumnHeader
+
+ param = Parameter(app, "param")
+ self.add_parameter(param)
+
+ self.param = ListParameter(app, "id", param)
+ self.add_parameter(self.param)
+
+ def clear(self, session):
+ self.param.set(session, list())
+
+ def do_render(self, session, data, disabled=False):
+ name = self.param.path
+ id = data[self.name]
+ attr = id in self.param.get(session) and "checked=\"checked\"" or ""
+ disa = disabled and "disabled=\"disabled\"" or ""
+ t = "<td><input type=\"checkbox\" name=\"%s\" value=\"%s\" %s %s/></td>"
+
+ return t % (name, id, attr, disa)
+
class CheckboxIdColumnHeader(ItemTableColumnHeader):
def render_form_id(self, session, *args):
return self.column.form.path
@@ -798,34 +822,6 @@
return super(FilteredCheckboxIdColumn, self).do_render(session, data,
disabled=disabled)
-class CheckboxStringIdColumn(SqlTableColumn):
- def __init__(self, app, name):
- super(CheckboxStringIdColumn, self).__init__(app, name)
-
- self.header_class = CheckboxIdColumnHeader
-
- param = Parameter(app, "param")
- self.add_parameter(param)
-
- self.ids = ListParameter(app, "id", param)
- self.add_parameter(self.ids)
-
- def get(self, session):
- return self.ids.get(session)
-
- def clear(self, session):
- self.ids.set(session, list())
-
- def do_render(self, session, data, disabled=False):
- name = self.ids.path
- id = data[self.name]
- attr = id in self.ids.get(session) and "checked=\"checked\"" or ""
- disa = disabled and "disabled=\"disabled\"" or ""
- t = "<td><input type=\"checkbox\" name=\"%s\" value=\"%s\" %s %s/></td>"
-
- return t % (name, id, attr, disa)
-
-
class NameField(StringField):
def __init__(self, app, name):
super(NameField, self).__init__(app, name)
16 years, 5 months
rhmessaging commits: r2591 - mgmt/trunk/cumin/resources.
by rhmessaging-commits@lists.jboss.org
Author: eallen
Date: 2008-10-03 14:39:44 -0400 (Fri, 03 Oct 2008)
New Revision: 2591
Modified:
mgmt/trunk/cumin/resources/wooly.js
Log:
Tweaks for IE compatibility
Modified: mgmt/trunk/cumin/resources/wooly.js
===================================================================
--- mgmt/trunk/cumin/resources/wooly.js 2008-10-03 18:24:52 UTC (rev 2590)
+++ mgmt/trunk/cumin/resources/wooly.js 2008-10-03 18:39:44 UTC (rev 2591)
@@ -199,8 +199,19 @@
}
function Wooly() {
- this.request = new XMLHttpRequest();
-
+ if (window.XMLHttpRequest) {
+ this.request = new XMLHttpRequest();
+ }
+ else {
+ if (window.ActiveXObject) {
+ try {
+ this.request = new ActiveXObject("Microsoft.XMLHTTP");
+ } catch (e) {
+ this.request = new ActiveXObject("Msxml2.XMLHTTP");
+ }
+ }
+ }
+
this.assert = assert;
this.log = log;
this.dir = dir;
@@ -335,7 +346,8 @@
assert(doc);
assert(doc instanceof WoolyDocument);
assert(node);
- assert(node instanceof Node, node.nodeType == 1);
+ // assert(node instanceof Node); IE pukes on this
+ assert(node.nodeType == 1);
this.doc = doc;
this.node = node;
@@ -456,7 +468,10 @@
function WoolyText(doc, node) {
assert(doc);
assert(doc instanceof WoolyDocument);
- if (node) assert(node instanceof Node, node.nodeType == 3);
+ if (node) {
+ //assert(node instanceof Node);
+ assert(node.nodeType == 3);
+ }
this.doc = doc;
16 years, 5 months
rhmessaging commits: r2590 - mgmt/trunk/cumin/python/cumin.
by rhmessaging-commits@lists.jboss.org
Author: eallen
Date: 2008-10-03 14:24:52 -0400 (Fri, 03 Oct 2008)
New Revision: 2590
Modified:
mgmt/trunk/cumin/python/cumin/collector.py
mgmt/trunk/cumin/python/cumin/collector.strings
mgmt/trunk/cumin/python/cumin/job.py
mgmt/trunk/cumin/python/cumin/job.strings
mgmt/trunk/cumin/python/cumin/model.py
mgmt/trunk/cumin/python/cumin/negotiator.py
mgmt/trunk/cumin/python/cumin/negotiator.strings
mgmt/trunk/cumin/python/cumin/pool.py
mgmt/trunk/cumin/python/cumin/scheduler.py
mgmt/trunk/cumin/python/cumin/scheduler.strings
Log:
Adding Start/Stop methods to Scheduler, Collector, Negotiator
Using CustomId as default column for JobSet
Modified: mgmt/trunk/cumin/python/cumin/collector.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/collector.py 2008-10-03 15:56:12 UTC (rev 2589)
+++ mgmt/trunk/cumin/python/cumin/collector.py 2008-10-03 18:24:52 UTC (rev 2590)
@@ -16,15 +16,23 @@
strings = StringCatalog(__file__)
log = logging.getLogger("cumin.collector")
-class CollectorSet(CuminTable):
+class CollectorSet(CuminTable, Form):
def __init__(self, app, name):
super(CollectorSet, self).__init__(app, name)
+ self.ids = CheckboxIdColumn(app, "id")
+ self.add_column(self.ids)
+
col = self.NameColumn(app, "name")
self.add_column(col)
-
self.set_default_column(col)
+ self.__start = self.StartButton(app, "start")
+ self.add_child(self.__start)
+
+ self.__stop = self.StopButton(app, "stop")
+ self.add_child(self.__stop)
+
def render_title(self, session):
return "Collectors %s" % fmt_count(Collector.select().count())
@@ -38,6 +46,32 @@
self.frame.show_collector(branch, sub).show_view(branch)
return fmt_olink(branch, sub, name=data["name"])
+ class StartButton(FormButton):
+ def process_submit(self, session):
+ ids = self.parent.ids.get(session)
+ self.parent.ids.clear(session)
+
+ branch = session.branch()
+ frame = self.frame.show_colls_start(branch)
+ frame.ids.set(branch, ids)
+ self.page.set_redirect_url(session, branch.marshal())
+
+ def render_content(self, session):
+ return "Start"
+
+ class StopButton(FormButton):
+ def process_submit(self, session):
+ ids = self.parent.ids.get(session)
+ self.parent.ids.clear(session)
+
+ branch = session.branch()
+ frame = self.frame.show_colls_stop(branch)
+ frame.ids.set(branch, ids)
+ self.page.set_redirect_url(session, branch.marshal())
+
+ def render_content(self, session):
+ return "Stop"
+
class CollectorFrame(CuminFrame, JobSetFrame):
def __init__(self, app, name):
super(CollectorFrame, self).__init__(app, name)
@@ -70,3 +104,35 @@
class CollectorStatus(CuminStatus):
pass
+class CollectorStart(CuminBulkActionForm):
+ def render_title(self, session, *args):
+ return "Start Collector"
+
+ def render_form_heading(self, session, *args):
+ return ""
+
+ def render_item_content(self, session, id):
+ return "Start Collector '%s'" % Collector.get(id).Name
+
+ def process_item(self, session, item):
+ collector = Collector.get(item)
+ action = self.app.model.collector.start
+ action.invoke(collector)
+ self.process_cancel(session)
+
+class CollectorStop(CuminBulkActionForm):
+ def render_title(self, session, *args):
+ return "Stop Collector"
+
+ def render_form_heading(self, session, *args):
+ return ""
+
+ def render_item_content(self, session, id):
+ return "Stop Collector '%s'" % Collector.get(id).Name
+
+ def process_item(self, session, item):
+ collector = Collector.get(item)
+ action = self.app.model.collector.stop
+ action.invoke(collector)
+ self.process_cancel(session)
+
Modified: mgmt/trunk/cumin/python/cumin/collector.strings
===================================================================
--- mgmt/trunk/cumin/python/cumin/collector.strings 2008-10-03 15:56:12 UTC (rev 2589)
+++ mgmt/trunk/cumin/python/cumin/collector.strings 2008-10-03 18:24:52 UTC (rev 2590)
@@ -23,3 +23,26 @@
//throw new Error();
}
+
+[CollectorSet.html]
+<form id="{id}" method="post" action="?">
+
+ <div class="sactions">
+ <h2>Act on Selected Collectors:</h2>
+ {start} {stop}
+ </div>
+
+ <table class="mobjects">
+ <thead>
+ <tr>
+ <th class="setnav" colspan="{column_count}">
+ <div class="rfloat">{page}</div>
+ {count}
+ </th>
+ </tr>
+ <tr>{headers}</tr>
+ </thead>
+ <tbody>{items}</tbody>
+ </table>
+ <div>{hidden_inputs}</div>
+</form>
Modified: mgmt/trunk/cumin/python/cumin/job.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/job.py 2008-10-03 15:56:12 UTC (rev 2589)
+++ mgmt/trunk/cumin/python/cumin/job.py 2008-10-03 18:24:52 UTC (rev 2590)
@@ -15,18 +15,19 @@
strings = StringCatalog(__file__)
log = logging.getLogger("cumin.job")
-class JobSet(CuminTable):
+class JobSet(CuminTable, Form):
def __init__(self, app, name):
super(JobSet, self).__init__(app, name)
self.ids = CheckboxIdColumn(app, "id")
self.add_column(self.ids)
- col = self.GlobalJobIdColumn(app, "global_job_id")
+ col = self.CustomIdColumn(app, "custom_id")
self.add_column(col)
self.set_default_column(col)
- col = self.CustomIdColumn(app, "custom_id")
+ col = self.GlobalJobIdColumn(app, "global_job_id")
+ col.visible = False
self.add_column(col)
col = self.CommandColumn(app, "cmd")
@@ -113,6 +114,15 @@
def render_title(self, session, data):
return "Custom Id"
+ def render_content(self, session, data):
+ job = Identifiable(data["id"])
+ if data[self.name]:
+ branch = session.branch()
+ self.frame.show_job(branch, job).show_view(branch)
+ return fmt_olink(branch, job, name=data[self.name])
+ else:
+ return data[self.name] # none
+
class CustomPriorityColumn(SqlTableColumn):
def render_title(self, session, data):
return "Custom Priority"
@@ -178,12 +188,10 @@
def render_title(self, session, data):
return "Title"
-class JobTab(JobSet, Form):
+class JobTab(JobSet):
def __init__(self, app, name):
super(JobTab, self).__init__(app, name)
- self.set_default_column_name("global_job_id")
-
self.__remove = JobRemoveButton(app, "remove")
self.add_child(self.__remove)
@@ -414,8 +422,6 @@
def __init__(self, app, name):
super(JobGroupJobSet, self).__init__(app, name)
- self.set_default_column_name("global_job_id")
-
self.__remove = JobRemoveButton(app, "remove")
self.add_child(self.__remove)
@@ -870,38 +876,9 @@
self.job_output = "Unable to get file at %s. Reason: time out" % file
except Exception, e:
self.job_output = "Unable to get file at %s. Reason: %s" % (file, e)
- #self.job_output = self.get_fake_output()
return self.job_output and escape_entity(self.job_output)
- def get_fake_output(self):
- return """fcrawler.looksmart.com - - [26/Apr/2000:00:00:12 -0400] "GET /contacts.html HTTP/1.0" 200 4595 "-" "FAST-WebCrawler/2.1-pre2 (ashen(a)looksmart.net)"
-fcrawler.looksmart.com - - [26/Apr/2000:00:17:19 -0400] "GET /news/news.html HTTP/1.0" 200 16716 "-" "FAST-WebCrawler/2.1-pre2 (ashen(a)looksmart.net)"
-
-ppp931.on.bellglobal.com - - [26/Apr/2000:00:16:12 -0400] "GET /download/windows/asctab31.zip HTTP/1.0" 200 1540096 "http://www.htmlgoodies.com/downloads/freeware/webdevelopment/15.html" "Mozilla/4.7 [en]C-SYMPA (Win95; U)"
-
-123.123.123.123 - - [26/Apr/2000:00:23:48 -0400] "GET /pics/wpaper.gif HTTP/1.0" 200 6248 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"
-123.123.123.123 - - [26/Apr/2000:00:23:47 -0400] "GET /asctortf/ HTTP/1.0" 200 8130 "http://search.netscape.com/Computers/Data_Formats/Document/Text/RTF" "Mozilla/4.05 (Macintosh; I; PPC)"
-123.123.123.123 - - [26/Apr/2000:00:23:48 -0400] "GET /pics/5star2000.gif HTTP/1.0" 200 4005 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"
-123.123.123.123 - - [26/Apr/2000:00:23:50 -0400] "GET /pics/5star.gif HTTP/1.0" 200 1031 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"
-123.123.123.123 - - [26/Apr/2000:00:23:51 -0400] "GET /pics/a2hlogo.jpg HTTP/1.0" 200 4282 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"
-123.123.123.123 - - [26/Apr/2000:00:23:51 -0400] "GET /cgi-bin/newcount?jafsof3&width=4&font=digital&noshow HTTP/1.0" 200 36 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"
-192.168.2.20 - - [28/Jul/2006:10:27:10 -0300] "GET /cgi-bin/try/ HTTP/1.0" 200 3395
-127.0.0.1 - - [28/Jul/2006:10:22:04 -0300] "GET / HTTP/1.0" 200 2216
-195.146.134.15 - - [20/Jan/2003:08:55:36 -0800] "GET /path/to/page.html HTTP/1.0" 200 4649 "http://www.somedomain.com/020602/page.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
-195.146.134.15 - - [20/Jan/2003:08:55:36 -0800] "GET /path/to/page.html HTTP/1.0" 200 4649 "http://www.somedomain.com/020602/page.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
-
-195.146.134.15 - - [20/Jan/2003:08:55:36 -0800] "GET /path/to/page.html HTTP/1.0" 200 4649 "http://www.somedomain.com/020602/page.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
-195.146.134.15 - - [20/Jan/2003:08:55:36 -0800] "GET /path/to/page.html HTTP/1.0" 200 4649 "http://www.somedomain.com/020602/page.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
-195.146.134.15 - - [20/Jan/2003:08:55:36 -0800] "GET /path/to/page.html HTTP/1.0" 200 4649 "http://www.somedomain.com/020602/page.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
-195.146.134.15 - - [20/Jan/2003:08:55:36 -0800] "GET /path/to/page.html HTTP/1.0" 200 4649 "http://www.somedomain.com/020602/page.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
-
-123.123.123.123 - - [26/Apr/2000:00:23:48 -0400] "GET /pics/5star2000.gif HTTP/1.0" 200 4005 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"
-123.123.123.123 - - [26/Apr/2000:00:23:50 -0400] "GET /pics/5star.gif HTTP/1.0" 200 1031 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"
-123.123.123.123 - - [26/Apr/2000:00:23:51 -0400] "GET /pics/a2hlogo.jpg HTTP/1.0" 200 4282 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"
-123.123.123.123 - - [26/Apr/2000:00:23:51 -0400] "GET /cgi-bin/newcount?jafsof3&width=4&font=digital&noshow HTTP/1.0" 200 36 "http://www.jafsoft.com/asctortf/" "Mozilla/4.05 (Macintosh; I; PPC)"
-192.168.2.20 - - [28/Jul/2006:10:27:10 -0300] "GET /cgi-bin/try/ HTTP/1.0" 200 3395"""
-
class FetchButton(FormButton):
def render_content(self, session):
return "Refresh"
@@ -1190,7 +1167,7 @@
return len(ids) > 1 and "Hold Jobs" or "Hold Job"
def render_item_content(self, session, id):
- return "Hold Job '%s'" % Job.get(id).GlobalJobId
+ return "Hold Job '%s'" % Job.get(id).CustomId
def render_reason_text(self, session, *args):
return "Hold Reason"
@@ -1207,7 +1184,7 @@
return len(ids) > 1 and "Release Jobs" or "Release Job"
def render_item_content(self, session, id):
- return "Release Job '%s'" % Job.get(id).GlobalJobId
+ return "Release Job '%s'" % Job.get(id).CustomId
def render_reason_text(self, session, *args):
return "Release Reason"
@@ -1224,7 +1201,7 @@
return len(ids) > 1 and "Remove Jobs" or "Remove Job"
def render_item_content(self, session, id):
- return "Remove Job '%s'" % Job.get(id).GlobalJobId
+ return "Remove Job '%s'" % Job.get(id).CustomId
def render_reason_text(self, session, *args):
return "Remove Reason"
Modified: mgmt/trunk/cumin/python/cumin/job.strings
===================================================================
--- mgmt/trunk/cumin/python/cumin/job.strings 2008-10-03 15:56:12 UTC (rev 2589)
+++ mgmt/trunk/cumin/python/cumin/job.strings 2008-10-03 18:24:52 UTC (rev 2590)
@@ -9,7 +9,6 @@
j.custom_id,
j.custom_priority,
j.job_status,
- j.global_job_id,
j.title,
s.name as scheduler,
b.name as submitter,
Modified: mgmt/trunk/cumin/python/cumin/model.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/model.py 2008-10-03 15:56:12 UTC (rev 2589)
+++ mgmt/trunk/cumin/python/cumin/model.py 2008-10-03 18:24:52 UTC (rev 2590)
@@ -1828,7 +1828,7 @@
return "Job"
def get_object_name(self, job):
- return job.GlobalJobId
+ return job.CustomId
def show_object(self, session, job):
frame = self.get_pool_frame(session)
@@ -1993,23 +1993,54 @@
stat = CuminStat(self, "TotalRemovedJobs")
stat.title = "Removed Jobs"
+ action = self.Start(self, "start")
+ action.summary = True
+
+ action = self.Stop(self, "stop")
+ action.summary = True
+
def get_title(self, session):
return "Scheduler"
def get_object_name(self, sched):
return sched.Name
+ def get_pool_frame(self, session):
+ frame = self.cumin_model.show_main(session)
+ return frame.children_by_name["pool"]
+
def show_object(self, session, sched):
- # XXX temporary solution
- for pool in Pool.selectBy(name="main"):
- break
+ frame = self.get_pool_frame(session)
+ return frame.show_scheduler(session, sched).show_view(session)
+
+ class Start(CuminAction):
+ def show(self, session, sched):
+ frame = self.cumin_class.get_pool_frame(session)
+ frame = frame.show_scheds_start(session)
+ ids = [sched.id]
+ frame.ids.set(session, ids)
+ return frame
+
+ def get_title(self, session):
+ return "Start"
- frame = self.cumin_model.show_main(session)
- frame = frame.show_pool(session, pool)
- frame = frame.show_scheduler(session, sched).show_view(session)
+ def do_invoke(self, scheduler, args, completion):
+ scheduler.Start(self.cumin_model.data, completion)
+
+ class Stop(CuminAction):
+ def show(self, session, sched):
+ frame = self.cumin_class.get_pool_frame(session)
+ frame = frame.show_scheds_stop(session)
+ ids = [sched.id]
+ frame.ids.set(session, ids)
+ return frame
+
+ def get_title(self, session):
+ return "Stop"
- return frame
-
+ def do_invoke(self, scheduler, args, completion):
+ scheduler.Stop(self.cumin_model.data, completion)
+
class CuminSubmitter(RemoteClass):
def __init__(self, model):
super(CuminSubmitter, self).__init__(model, "submitter",
@@ -2055,19 +2086,54 @@
prop = CuminProperty(self, "PublicNetworkIpAddr")
prop.title = "IP Address"
+ action = self.Start(self, "start")
+ action.summary = True
+
+ action = self.Stop(self, "stop")
+ action.summary = True
+
+ def get_pool_frame(self, session):
+ frame = self.cumin_model.show_main(session)
+ return frame.children_by_name["pool"]
+
+ def show_object(self, session, coll):
+ frame = self.get_pool_frame(session)
+ return frame.show_collector(session, coll).show_view(session)
+
def get_title(self, session):
return "Collector"
def get_object_name(self, coll):
return coll.Name
- def show_object(self, session, coll):
- frame = self.cumin_model.show_main(session)
- frame = frame.children_by_name["pool"]
- frame = frame.show_collector(session, coll).show_view(session)
+ class Start(CuminAction):
+ def show(self, session, collector):
+ frame = self.cumin_class.get_pool_frame(session)
+ frame = frame.show_colls_start(session)
+ ids = [collector.id]
+ frame.ids.set(session, ids)
+ return frame
+
+ def get_title(self, session):
+ return "Start"
- return frame
+ def do_invoke(self, collector, args, completion):
+ collector.Start(self.cumin_model.data, completion)
+
+ class Stop(CuminAction):
+ def show(self, session, collector):
+ frame = self.cumin_class.get_pool_frame(session)
+ frame = frame.show_colls_stop(session)
+ ids = [collector.id]
+ frame.ids.set(session, ids)
+ return frame
+
+ def get_title(self, session):
+ return "Stop"
+ def do_invoke(self, collector, args, completion):
+ collector.Stop(self.cumin_model.data, completion)
+
class CuminNegotiator(RemoteClass):
def __init__(self, model):
super(CuminNegotiator, self).__init__(model, "negotiator",
@@ -2100,19 +2166,54 @@
stat = CuminStat(self, "MonitorSelfTime")
stat.title = "Time"
+ action = self.Start(self, "start")
+ action.summary = True
+
+ action = self.Stop(self, "stop")
+ action.summary = True
+
def get_title(self, session):
return "Negotiator"
def get_object_name(self, neg):
return neg.Name
+ def get_pool_frame(self, session):
+ frame = self.cumin_model.show_main(session)
+ return frame.children_by_name["pool"]
+
def show_object(self, session, neg):
- frame = self.cumin_model.show_main(session)
- frame = frame.children_by_name["pool"]
- frame = frame.show_negotiator(session, neg).show_view(session)
+ frame = self.get_pool_frame(session)
+ return frame.show_negotiator(session, neg).show_view(session)
- return frame
+ class Start(CuminAction):
+ def show(self, session, neg):
+ frame = self.cumin_class.get_pool_frame(session)
+ frame = frame.show_negs_start(session)
+ ids = [neg.id]
+ frame.ids.set(session, ids)
+ return frame
+
+ def get_title(self, session):
+ return "Start"
+ def do_invoke(self, negotiator, args, completion):
+ negotiator.Start(self.cumin_model.data, completion)
+
+ class Stop(CuminAction):
+ def show(self, session, neg):
+ frame = self.cumin_class.get_pool_frame(session)
+ frame = frame.show_negs_stop(session)
+ ids = [neg.id]
+ frame.ids.set(session, ids)
+ return frame
+
+ def get_title(self, session):
+ return "Stop"
+
+ def do_invoke(self, negotiator, args, completion):
+ negotiator.Stop(self.cumin_model.data, completion)
+
class ModelPage(Page):
def __init__(self, app, name):
super(ModelPage, self).__init__(app, name)
Modified: mgmt/trunk/cumin/python/cumin/negotiator.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/negotiator.py 2008-10-03 15:56:12 UTC (rev 2589)
+++ mgmt/trunk/cumin/python/cumin/negotiator.py 2008-10-03 18:24:52 UTC (rev 2590)
@@ -16,15 +16,26 @@
strings = StringCatalog(__file__)
log = logging.getLogger("cumin.negotiator")
-class NegotiatorSet(CuminTable):
+class NegotiatorSet(CuminTable, Form):
def __init__(self, app, name):
super(NegotiatorSet, self).__init__(app, name)
+ self.ids = CheckboxIdColumn(app, "id")
+ self.add_column(self.ids)
+
col = self.NameColumn(app, "name")
self.add_column(col)
-
self.set_default_column(col)
+
+ col = self.StartedColumn(app, "started")
+ self.add_column(col)
+ self.__start = self.StartButton(app, "start")
+ self.add_child(self.__start)
+
+ self.__stop = self.StopButton(app, "stop")
+ self.add_child(self.__stop)
+
def render_title(self, session):
return "Negotiators %s" % fmt_count(Negotiator.select().count())
@@ -38,6 +49,40 @@
self.frame.show_negotiator(branch, sub).show_view(branch)
return fmt_olink(branch, sub, name=data["name"])
+ class StartedColumn(SqlTableColumn):
+ def render_title(self, session, data):
+ return "Started"
+
+ def render_content(self, session, data):
+ started = data[self.name]
+ return started and "Yes" or "No"
+
+ class StartButton(FormButton):
+ def process_submit(self, session):
+ ids = self.parent.ids.get(session)
+ self.parent.ids.clear(session)
+
+ branch = session.branch()
+ frame = self.frame.show_negs_start(branch)
+ frame.ids.set(branch, ids)
+ self.page.set_redirect_url(session, branch.marshal())
+
+ def render_content(self, session):
+ return "Start"
+
+ class StopButton(FormButton):
+ def process_submit(self, session):
+ ids = self.parent.ids.get(session)
+ self.parent.ids.clear(session)
+
+ branch = session.branch()
+ frame = self.frame.show_negs_stop(branch)
+ frame.ids.set(branch, ids)
+ self.page.set_redirect_url(session, branch.marshal())
+
+ def render_content(self, session):
+ return "Stop"
+
class NegotiatorFrame(CuminFrame, JobSetFrame):
def __init__(self, app, name):
super(NegotiatorFrame, self).__init__(app, name)
@@ -49,7 +94,6 @@
self.add_mode(view)
self.set_view_mode(view)
-
class NegotiatorView(CuminView):
def __init__(self, app, name):
super(NegotiatorView, self).__init__(app, name)
@@ -70,3 +114,35 @@
class NegotiatorStatus(CuminStatus):
pass
+class NegStart(CuminBulkActionForm):
+ def render_title(self, session, *args):
+ return "Start Negotiator"
+
+ def render_form_heading(self, session, *args):
+ return ""
+
+ def render_item_content(self, session, id):
+ return "Start Negotiator '%s'" % Negotiator.get(id).Name
+
+ def process_item(self, session, item):
+ negotiator = Negotiator.get(item)
+ action = self.app.model.negotiator.start
+ action.invoke(negotiator)
+ self.process_cancel(session)
+
+class NegStop(CuminBulkActionForm):
+ def render_title(self, session, *args):
+ return "Stop Negotiator"
+
+ def render_form_heading(self, session, *args):
+ return ""
+
+ def render_item_content(self, session, id):
+ return "Stop Negotiator '%s'" % Negotiator.get(id).Name
+
+ def process_item(self, session, item):
+ negotiator = Negotiator.get(item)
+ action = self.app.model.negotiator.stop
+ action.invoke(negotiator)
+ self.process_cancel(session)
+
Modified: mgmt/trunk/cumin/python/cumin/negotiator.strings
===================================================================
--- mgmt/trunk/cumin/python/cumin/negotiator.strings 2008-10-03 15:56:12 UTC (rev 2589)
+++ mgmt/trunk/cumin/python/cumin/negotiator.strings 2008-10-03 18:24:52 UTC (rev 2590)
@@ -1,7 +1,8 @@
[NegotiatorSet.sql]
select
n.id,
- n.name
+ n.name,
+ n.daemon_start_time as started
from negotiator as n
[NegotiatorSet.count_sql]
@@ -23,3 +24,26 @@
//throw new Error();
}
+
+[NegotiatorSet.html]
+<form id="{id}" method="post" action="?">
+
+ <div class="sactions">
+ <h2>Act on Selected Negotiators:</h2>
+ {start} {stop}
+ </div>
+
+ <table class="mobjects">
+ <thead>
+ <tr>
+ <th class="setnav" colspan="{column_count}">
+ <div class="rfloat">{page}</div>
+ {count}
+ </th>
+ </tr>
+ <tr>{headers}</tr>
+ </thead>
+ <tbody>{items}</tbody>
+ </table>
+ <div>{hidden_inputs}</div>
+</form>
Modified: mgmt/trunk/cumin/python/cumin/pool.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/pool.py 2008-10-03 15:56:12 UTC (rev 2589)
+++ mgmt/trunk/cumin/python/cumin/pool.py 2008-10-03 18:24:52 UTC (rev 2590)
@@ -12,10 +12,10 @@
from formats import *
from util import *
from job import *
-from scheduler import SchedulerSet, SchedulerFrame
+from scheduler import SchedulerSet, SchedulerFrame, SchedulerStart, SchedulerStop
from submitter import SubmitterSet, SubmitterFrame
-from collector import CollectorSet, CollectorFrame
-from negotiator import NegotiatorSet, NegotiatorFrame
+from collector import CollectorSet, CollectorFrame, CollectorStart, CollectorStop
+from negotiator import NegotiatorSet, NegotiatorFrame, NegStart, NegStop
from limits import LimitsSet, LimitsFrame
strings = StringCatalog(__file__)
@@ -95,6 +95,24 @@
self.__neg = NegotiatorFrame(app, "neg")
self.add_mode(self.__neg)
+ self.__startneg = NegStart(app, "startneg")
+ self.add_mode(self.__startneg)
+
+ self.__stopneg = NegStop(app, "stopneg")
+ self.add_mode(self.__stopneg)
+
+ self.__startcoll = CollectorStart(app, "startcoll")
+ self.add_mode(self.__startcoll)
+
+ self.__stopcoll = CollectorStop(app, "stopcoll")
+ self.add_mode(self.__stopcoll)
+
+ self.__startsched = SchedulerStart(app, "startsched")
+ self.add_mode(self.__startsched)
+
+ self.__stopsched = SchedulerStop(app, "stopsched")
+ self.add_mode(self.__stopsched)
+
self.__jobs_hold = JobSetHold(app, "jobshold")
self.add_mode(self.__jobs_hold)
@@ -154,6 +172,30 @@
self.page.set_current_frame(session, self.__neg)
return self.show_mode(session, self.__neg)
+ def show_negs_start(self, session):
+ self.page.set_current_frame(session, self.__startneg)
+ return self.show_mode(session, self.__startneg)
+
+ def show_negs_stop(self, session):
+ self.page.set_current_frame(session, self.__stopneg)
+ return self.show_mode(session, self.__stopneg)
+
+ def show_scheds_start(self, session):
+ self.page.set_current_frame(session, self.__startsched)
+ return self.show_mode(session, self.__startsched)
+
+ def show_scheds_stop(self, session):
+ self.page.set_current_frame(session, self.__stopsched)
+ return self.show_mode(session, self.__stopsched)
+
+ def show_colls_start(self, session):
+ self.page.set_current_frame(session, self.__startcoll)
+ return self.show_mode(session, self.__startcoll)
+
+ def show_colls_stop(self, session):
+ self.page.set_current_frame(session, self.__stopcoll)
+ return self.show_mode(session, self.__stopcoll)
+
def show_jobs_hold(self, session):
self.page.set_current_frame(session, self.__jobs_hold)
return self.show_mode(session, self.__jobs_hold)
@@ -224,3 +266,4 @@
class PoolStatus(CuminStatus):
def render_status(self, session, pool):
return "Active"
+
Modified: mgmt/trunk/cumin/python/cumin/scheduler.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/scheduler.py 2008-10-03 15:56:12 UTC (rev 2589)
+++ mgmt/trunk/cumin/python/cumin/scheduler.py 2008-10-03 18:24:52 UTC (rev 2590)
@@ -16,15 +16,23 @@
strings = StringCatalog(__file__)
log = logging.getLogger("cumin.scheduler")
-class SchedulerSet(CuminTable):
+class SchedulerSet(CuminTable, Form):
def __init__(self, app, name):
super(SchedulerSet, self).__init__(app, name)
+ self.ids = CheckboxIdColumn(app, "id")
+ self.add_column(self.ids)
+
col = self.NameColumn(app, "name")
self.add_column(col)
-
self.set_default_column(col)
+ self.__start = self.StartButton(app, "start")
+ self.add_child(self.__start)
+
+ self.__stop = self.StopButton(app, "stop")
+ self.add_child(self.__stop)
+
def render_title(self, session):
return "Schedulers %s" % fmt_count(Scheduler.select().count())
@@ -38,6 +46,32 @@
self.frame.show_scheduler(branch, sched).show_view(branch)
return fmt_olink(branch, sched, name=data["name"])
+ class StartButton(FormButton):
+ def process_submit(self, session):
+ ids = self.parent.ids.get(session)
+ self.parent.ids.clear(session)
+
+ branch = session.branch()
+ frame = self.frame.show_scheds_start(branch)
+ frame.ids.set(branch, ids)
+ self.page.set_redirect_url(session, branch.marshal())
+
+ def render_content(self, session):
+ return "Start"
+
+ class StopButton(FormButton):
+ def process_submit(self, session):
+ ids = self.parent.ids.get(session)
+ self.parent.ids.clear(session)
+
+ branch = session.branch()
+ frame = self.frame.show_scheds_stop(branch)
+ frame.ids.set(branch, ids)
+ self.page.set_redirect_url(session, branch.marshal())
+
+ def render_content(self, session):
+ return "Stop"
+
class SchedulerFrame(CuminFrame, JobSetFrame):
def __init__(self, app, name):
super(SchedulerFrame, self).__init__(app, name)
@@ -126,3 +160,35 @@
where_scheduler = "scheduler_id = %i" % scheduler.id
return "Jobs %s" % fmt_count(Job.select(where_scheduler).count())
+class SchedulerStart(CuminBulkActionForm):
+ def render_title(self, session, *args):
+ return "Start Scheduler"
+
+ def render_form_heading(self, session, *args):
+ return ""
+
+ def render_item_content(self, session, id):
+ return "Start Scheduler '%s'" % Scheduler.get(id).Name
+
+ def process_item(self, session, item):
+ scheduler = Scheduler.get(item)
+ action = self.app.model.scheduler.start
+ action.invoke(scheduler)
+ self.process_cancel(session)
+
+class SchedulerStop(CuminBulkActionForm):
+ def render_title(self, session, *args):
+ return "Stop Scheduler"
+
+ def render_form_heading(self, session, *args):
+ return ""
+
+ def render_item_content(self, session, id):
+ return "Stop Scheduler '%s'" % Scheduler.get(id).Name
+
+ def process_item(self, session, item):
+ scheduler = Scheduler.get(item)
+ action = self.app.model.scheduler.stop
+ action.invoke(scheduler)
+ self.process_cancel(session)
+
Modified: mgmt/trunk/cumin/python/cumin/scheduler.strings
===================================================================
--- mgmt/trunk/cumin/python/cumin/scheduler.strings 2008-10-03 15:56:12 UTC (rev 2589)
+++ mgmt/trunk/cumin/python/cumin/scheduler.strings 2008-10-03 18:24:52 UTC (rev 2590)
@@ -24,6 +24,29 @@
//throw new Error();
}
+[SchedulerSet.html]
+<form id="{id}" method="post" action="?">
+
+ <div class="sactions">
+ <h2>Act on Selected Schedulers:</h2>
+ {start} {stop}
+ </div>
+
+ <table class="mobjects">
+ <thead>
+ <tr>
+ <th class="setnav" colspan="{column_count}">
+ <div class="rfloat">{page}</div>
+ {count}
+ </th>
+ </tr>
+ <tr>{headers}</tr>
+ </thead>
+ <tbody>{items}</tbody>
+ </table>
+ <div>{hidden_inputs}</div>
+</form>
+
[SchedulerStats.html]
<table class="twocol">
<tbody>
16 years, 5 months
rhmessaging commits: r2589 - in store/branches/java/broker-queue-refactor/java/bdbstore: bin and 3 other directories.
by rhmessaging-commits@lists.jboss.org
Author: ritchiem
Date: 2008-10-03 11:56:12 -0400 (Fri, 03 Oct 2008)
New Revision: 2589
Added:
store/branches/java/broker-queue-refactor/java/bdbstore/bin/
store/branches/java/broker-queue-refactor/java/bdbstore/bin/backup.sh
store/branches/java/broker-queue-refactor/java/bdbstore/bin/storeUpgrade.sh
store/branches/java/broker-queue-refactor/java/bdbstore/docs/
store/branches/java/broker-queue-refactor/java/bdbstore/docs/README
store/branches/java/broker-queue-refactor/java/bdbstore/resources/
store/branches/java/broker-queue-refactor/java/bdbstore/resources/LICENSE
store/branches/java/broker-queue-refactor/java/bdbstore/resources/NOTICE
store/branches/java/broker-queue-refactor/java/bdbstore/resources/README
Removed:
store/branches/java/broker-queue-refactor/java/bdbstore/etc/scripts/backup.sh
store/branches/java/broker-queue-refactor/java/bdbstore/etc/scripts/storeUpgrade.sh
Modified:
store/branches/java/broker-queue-refactor/java/bdbstore/
store/branches/java/broker-queue-refactor/java/bdbstore/build.xml
Log:
Updated build to produces a more complete release package
Property changes on: store/branches/java/broker-queue-refactor/java/bdbstore
___________________________________________________________________
Name: svn:ignore
- *.iml
qpid-bdbstore.ipr
qpid-bdbstore.iws
target
bdbTestEnv
build
+ *.iml
qpid-bdbstore.ipr
qpid-bdbstore.iws
target
bdbTestEnv
build
release
Copied: store/branches/java/broker-queue-refactor/java/bdbstore/bin/backup.sh (from rev 2570, store/branches/java/broker-queue-refactor/java/bdbstore/etc/scripts/backup.sh)
===================================================================
--- store/branches/java/broker-queue-refactor/java/bdbstore/bin/backup.sh (rev 0)
+++ store/branches/java/broker-queue-refactor/java/bdbstore/bin/backup.sh 2008-10-03 15:56:12 UTC (rev 2589)
@@ -0,0 +1,13 @@
+#!/bin/bash
+
+# Parse arguments taking all - prefixed args as JAVA_OPTS
+for arg in "$@"; do
+ if [[ $arg == -java:* ]]; then
+ JAVA_OPTS="${JAVA_OPTS}-`echo $arg|cut -d ':' -f 2` "
+ else
+ ARGS="${ARGS}$arg "
+ fi
+done
+
+echo "Starting Hot Backup Script"
+java -Dlog4j.configuration=backup-log4j.xml ${JAVA_OPTS} -cp qpid-bdbstore-1.0-incubating-M2-SNAPSHOT-all-test-deps.jar org.apache.qpid.server.store.berkeleydb.BDBBackup ${ARGS}
Property changes on: store/branches/java/broker-queue-refactor/java/bdbstore/bin/backup.sh
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:mergeinfo
+
Name: svn:eol-style
+ native
Copied: store/branches/java/broker-queue-refactor/java/bdbstore/bin/storeUpgrade.sh (from rev 2570, store/branches/java/broker-queue-refactor/java/bdbstore/etc/scripts/storeUpgrade.sh)
===================================================================
--- store/branches/java/broker-queue-refactor/java/bdbstore/bin/storeUpgrade.sh (rev 0)
+++ store/branches/java/broker-queue-refactor/java/bdbstore/bin/storeUpgrade.sh 2008-10-03 15:56:12 UTC (rev 2589)
@@ -0,0 +1,21 @@
+#!/bin/bash
+
+# Parse arguements taking all - prefixed args as JAVA_OPTS
+for arg in "$@"; do
+ if [[ $arg == -java:* ]]; then
+ JAVA_OPTS="${JAVA_OPTS}-`echo $arg|cut -d ':' -f 2` "
+ else
+ ARGS="${ARGS}$arg "
+ fi
+done
+
+if [ -z "$QPID_HOME" ]; then
+ export QPID_HOME=$(dirname $(dirname $(readlink -f $0)))
+ export PATH=${PATH}:${QPID_HOME}/bin
+fi
+
+if [ -z "$BDB_HOME" ]; then
+ export BDB_HOME=$(dirname $(dirname $(readlink -f $0)))
+fi
+
+java -Xms256m -Dlog4j.configuration=BDBStoreUpgrade.log4j.xml -Xmx256m -Damqj.logging.level=warn ${JAVA_OPTS} -cp $BDB_HOME/lib/qpid-bdbtools-M3.jar:$BDB_HOME/lib/je-3.3.62.jar:$BDB_HOME/lib/qpid-bdbstore-M3.jar:$QPID_HOME/lib/qpid-incubating.jar org.apache.qpid.server.store.berkeleydb.BDBStoreUpgrade ${ARGS}
Property changes on: store/branches/java/broker-queue-refactor/java/bdbstore/bin/storeUpgrade.sh
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:mergeinfo
+
Modified: store/branches/java/broker-queue-refactor/java/bdbstore/build.xml
===================================================================
--- store/branches/java/broker-queue-refactor/java/bdbstore/build.xml 2008-10-03 15:21:23 UTC (rev 2588)
+++ store/branches/java/broker-queue-refactor/java/bdbstore/build.xml 2008-10-03 15:56:12 UTC (rev 2589)
@@ -2,21 +2,30 @@
- Simple Build file for BDBStore
-->
<project name="BDBStore" default="build">
-
+
+ <property name="project.name" value="qpid-BDB-MessageStore"/>
<property name="project.version" value="M3"/>
<property name="src.tools.dir" location="src/tools/java"/>
<property name="src.main.dir" location="src/main/java"/>
<property name="src.test.dir" location="src/test/java"/>
<property name="build.dir" location="build"/>
<property name="lib.dir" location="lib"/>
+ <property name="bin.dir" location="bin"/>
<property name="release.dir" location="release"/>
- <property name="release.lib.dir" location="${release.dir}/lib"/>
+ <property name="resources.dir" location="resources"/>
+ <property name="docs.dir" location="docs"/>
+
<property name="build.classes" location="build/classes"/>
<property name="build.test.classes" location="build/test/classes"/>
<property name="build.tools.classes" location="build/tools/classes"/>
<property name="build.results" location="build/results"/>
+ <property name="project.namever" value="${project.name}-${project.version}"/>
<property name="bdbstore.jar" location="${build.dir}/qpid-bdbstore-${project.version}.jar"/>
<property name="bdbtools.jar" location="${build.dir}/qpid-bdbtools-${project.version}.jar"/>
+ <property name="release.zip" location="${release.dir}/${project.namever}.zip"/>
+ <property name="release.tar" location="${release.dir}/${project.namever}.tar"/>
+ <property name="release.tgz" location="${release.dir}/${project.namever}.tgz"/>
+ <property name="release.bz2" location="${release.dir}/${project.namever}.bz2"/>
<property name="java.naming.factory.initial" value="org.apache.qpid.jndi.PropertiesFileInitialContextFactory"/>
@@ -144,21 +153,49 @@
</target>
- <target name="release" depends="jar">
+ <target name="prepare" depends="jar">
<mkdir dir="${release.dir}"/>
- <mkdir dir="${release.lib.dir}"/>
+ </target>
- <copy todir="${release.lib.dir}">
- <fileset dir="${build.dir}">
- <include name="*.jar"/>
- </fileset>
- </copy>
+ <target name="zip" depends="build,prepare" description="build release archive">
+ <zip destfile="${release.zip}">
+ <zipfileset dir="${bin.dir}" prefix="${project.namever}/bin" filemode="755">
+ <include name="*"/>
+ <exclude name="*.txt"/>
+ </zipfileset>
- <copy todir="${release.lib.dir}">
- <fileset dir="${lib.dir}">
- <include name="je*.jar"/>
- </fileset>
- </copy>
+ <zipfileset dir="${bin.dir}" prefix="${project.namever}/bin" filemode="644">
+ <include name="*.txt"/>
+ </zipfileset>
+
+ <zipfileset dir="${build.dir}" prefix="${project.namever}/lib" filemode="644">
+ <include name="*.jar"/>
+ </zipfileset>
+
+ <zipfileset dir="${lib.dir}" prefix="${project.namever}/lib" filemode="644">
+ <include name="je*.jar"/>
+ <include name="commons-cli*.jar"/>
+ </zipfileset>
+
+ <zipfileset dir="${resources.dir}" prefix="${project.namever}" filemode="644"/>
+ <zipfileset dir="${docs.dir}" prefix="${project.namever}/docs" filemode="644"/>
+ </zip>
</target>
+ <target name="tar" depends="zip" description="build release archive">
+ <tar destfile="${release.tar}" longfile="gnu" >
+ <zipfileset src="${release.zip}"/>
+ </tar>
+ </target>
+
+ <target name="tgz" depends="tar" description="build release archive">
+ <gzip src="${release.tar}" destfile="${release.tgz}"/>
+ </target>
+
+ <target name="bzip2" depends="tar" description="build release archive">
+ <bzip2 src="${release.tar}" destfile="${release.bz2}"/>
+ </target>
+
+ <target name="release" depends="zip,tgz" description="build all release archives except .bz2"/>
+
</project>
Added: store/branches/java/broker-queue-refactor/java/bdbstore/docs/README
===================================================================
--- store/branches/java/broker-queue-refactor/java/bdbstore/docs/README (rev 0)
+++ store/branches/java/broker-queue-refactor/java/bdbstore/docs/README 2008-10-03 15:56:12 UTC (rev 2589)
@@ -0,0 +1,3 @@
+BDB Message Store for Apache Qpid
+---------------------------------
+Documentation to be completed
Deleted: store/branches/java/broker-queue-refactor/java/bdbstore/etc/scripts/backup.sh
===================================================================
--- store/branches/java/broker-queue-refactor/java/bdbstore/etc/scripts/backup.sh 2008-10-03 15:21:23 UTC (rev 2588)
+++ store/branches/java/broker-queue-refactor/java/bdbstore/etc/scripts/backup.sh 2008-10-03 15:56:12 UTC (rev 2589)
@@ -1,13 +0,0 @@
-#!/bin/bash
-
-# Parse arguments taking all - prefixed args as JAVA_OPTS
-for arg in "$@"; do
- if [[ $arg == -java:* ]]; then
- JAVA_OPTS="${JAVA_OPTS}-`echo $arg|cut -d ':' -f 2` "
- else
- ARGS="${ARGS}$arg "
- fi
-done
-
-echo "Starting Hot Backup Script"
-java -Dlog4j.configuration=backup-log4j.xml ${JAVA_OPTS} -cp qpid-bdbstore-1.0-incubating-M2-SNAPSHOT-all-test-deps.jar org.apache.qpid.server.store.berkeleydb.BDBBackup ${ARGS}
Deleted: store/branches/java/broker-queue-refactor/java/bdbstore/etc/scripts/storeUpgrade.sh
===================================================================
--- store/branches/java/broker-queue-refactor/java/bdbstore/etc/scripts/storeUpgrade.sh 2008-10-03 15:21:23 UTC (rev 2588)
+++ store/branches/java/broker-queue-refactor/java/bdbstore/etc/scripts/storeUpgrade.sh 2008-10-03 15:56:12 UTC (rev 2589)
@@ -1,21 +0,0 @@
-#!/bin/bash
-
-# Parse arguements taking all - prefixed args as JAVA_OPTS
-for arg in "$@"; do
- if [[ $arg == -java:* ]]; then
- JAVA_OPTS="${JAVA_OPTS}-`echo $arg|cut -d ':' -f 2` "
- else
- ARGS="${ARGS}$arg "
- fi
-done
-
-if [ -z "$QPID_HOME" ]; then
- export QPID_HOME=$(dirname $(dirname $(readlink -f $0)))
- export PATH=${PATH}:${QPID_HOME}/bin
-fi
-
-if [ -z "$BDB_HOME" ]; then
- export BDB_HOME=$(dirname $(dirname $(readlink -f $0)))
-fi
-
-java -Xms256m -Dlog4j.configuration=BDBStoreUpgrade.log4j.xml -Xmx256m -Damqj.logging.level=warn ${JAVA_OPTS} -cp $BDB_HOME/lib/qpid-bdbtools-M3.jar:$BDB_HOME/lib/je-3.3.62.jar:$BDB_HOME/lib/qpid-bdbstore-M3.jar:$QPID_HOME/lib/qpid-incubating.jar org.apache.qpid.server.store.berkeleydb.BDBStoreUpgrade ${ARGS}
Added: store/branches/java/broker-queue-refactor/java/bdbstore/resources/LICENSE
===================================================================
--- store/branches/java/broker-queue-refactor/java/bdbstore/resources/LICENSE (rev 0)
+++ store/branches/java/broker-queue-refactor/java/bdbstore/resources/LICENSE 2008-10-03 15:56:12 UTC (rev 2589)
@@ -0,0 +1,242 @@
+=========================================================================
+== Apache License ==
+=========================================================================
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+
+=========================================================================
+== SL4Fj (MIT) License ==
+=========================================================================
+
+SLF4J source code and binaries are distributed under the following license.
+Copyright (c) 2004-2005 SLF4J.ORG
+Copyright (c) 2004-2005 QOS.ch
+
+All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, and/or sell copies of the Software, and to permit persons
+to whom the Software is furnished to do so, provided that the above
+copyright notice(s) and this permission notice appear in all copies of
+the Software and that both the above copyright notice(s) and this
+permission notice appear in supporting documentation.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
+HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY
+SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+Except as contained in this notice, the name of a copyright holder
+shall not be used in advertising or otherwise to promote the sale, use
+or other dealings in this Software without prior written authorization
+of the copyright holder.
+
Added: store/branches/java/broker-queue-refactor/java/bdbstore/resources/NOTICE
===================================================================
--- store/branches/java/broker-queue-refactor/java/bdbstore/resources/NOTICE (rev 0)
+++ store/branches/java/broker-queue-refactor/java/bdbstore/resources/NOTICE 2008-10-03 15:56:12 UTC (rev 2589)
@@ -0,0 +1,16 @@
+ETP Qpid BDB Message Store
+
+This product includes software developed at
+Apache Software Foundation (http://www.apache.org/)
+
+Message logging is provided by the SLF4J library package,
+which is open source software, written by Ceki Gülcü, and
+copyright by SLF4J.ORG and QOS.ch. The original software is
+available from
+
+ http://www.slf4j.org/
+
+This product includes software developed at
+The OSGi Alliance (http://www.osgi.org/).
+Copyright 2006 The OSGi Alliance.
+Licensed under the Apache License 2.0.
Added: store/branches/java/broker-queue-refactor/java/bdbstore/resources/README
===================================================================
--- store/branches/java/broker-queue-refactor/java/bdbstore/resources/README (rev 0)
+++ store/branches/java/broker-queue-refactor/java/bdbstore/resources/README 2008-10-03 15:56:12 UTC (rev 2589)
@@ -0,0 +1,44 @@
+Documentation
+--------------
+All of our user documentation for the Apache Qpid Java components can be accessed on their wiki at:
+
+http://cwiki.apache.org/confluence/display/qpid/Qpid+Java+Documentation
+
+This includes a Getting Started Guide and FAQ as well as detailed developer documentation.
+However, here's a VERY quick guide to running the installed Qpid broker, once you have installed it somewhere !
+
+Documentation for the BDB Message Store can be found in the docs folder
+
+
+Running A Persistent Broker
+------------------
+
+To run the broker, set the QPID_HOME environment variable to
+distribution directory and add $QPID_HOME/bin to your PATH. Then run
+the qpid-server shell script or qpid-server.bat batch file to start
+the broker.
+
+The Apache Qpid broker ships with an example persistent configuration using the BDB MessageStore
+
+For example:
+
+qpid-server -c $QPID_HOME/etc/persistent-config.xml
+
+You can get a list of all command line arguments by using the -h argument.
+
+You will have to edit the qpid-server file such that QPID_LIB looks has the required BDB librarires:
+qpid-bdbstore-$version.jar and the current je.jar:
+
+for example:
+
+QPID_LIBS=$QPID_HOME/lib/qpid-incubating.jar:$QPID_HOME/lib/qpid-bdbstore-M3.jar:$QPID_HOME/lib/je-3.3.62.jar
+
+
+Developing
+----------
+
+In order to build the BDB MessageStore you will need Qpid and
+you need Ant 1.6.5.
+Use ant -p to list the available targets. The default ant target is build
+
+
16 years, 5 months
rhmessaging commits: r2588 - in mgmt/trunk/mint: sql and 1 other directory.
by rhmessaging-commits@lists.jboss.org
Author: justi9
Date: 2008-10-03 11:21:23 -0400 (Fri, 03 Oct 2008)
New Revision: 2588
Modified:
mgmt/trunk/mint/python/mint/schema.py
mgmt/trunk/mint/sql/schema.sql
Log:
Update the schema with work around for timestamps
Modified: mgmt/trunk/mint/python/mint/schema.py
===================================================================
--- mgmt/trunk/mint/python/mint/schema.py 2008-10-03 15:11:54 UTC (rev 2587)
+++ mgmt/trunk/mint/python/mint/schema.py 2008-10-03 15:21:23 UTC (rev 2588)
@@ -92,7 +92,7 @@
LastPeriodicCheckpoint = TimestampCol(default=None)
LoadAvg = FloatCol(default=None)
MyCurrentTime = TimestampCol(default=None)
- NextFetchWorkDelay = TimestampCol(default=None)
+ NextFetchWorkDelay = IntCol(default=None)
State = StringCol(length=1000, default=None)
TimeToLive = IntCol(default=None)
TotalCondorLoadAvg = FloatCol(default=None)
@@ -291,7 +291,7 @@
statsPrev = ForeignKey('SubmitterStats', cascade='null', default=None)
classInfos = dict() # brokerId => classInfo
scheduler = ForeignKey('Scheduler', cascade='null', default=None)
- JobQueueBirthdate = IntCol(default=None)
+ JobQueueBirthdate = TimestampCol(default=None)
Machine = StringCol(length=1000, default=None)
Name = StringCol(length=1000, default=None)
ScheddName = StringCol(length=1000, default=None)
Modified: mgmt/trunk/mint/sql/schema.sql
===================================================================
--- mgmt/trunk/mint/sql/schema.sql 2008-10-03 15:11:54 UTC (rev 2587)
+++ mgmt/trunk/mint/sql/schema.sql 2008-10-03 15:21:23 UTC (rev 2588)
@@ -665,7 +665,7 @@
last_periodic_checkpoint TIMESTAMP,
load_avg FLOAT,
my_current_time TIMESTAMP,
- next_fetch_work_delay TIMESTAMP,
+ next_fetch_work_delay INT,
state VARCHAR(1000),
time_to_live INT,
total_condor_load_avg FLOAT,
@@ -740,7 +740,7 @@
stats_curr_id INT,
stats_prev_id INT,
scheduler_id INT,
- job_queue_birthdate INT,
+ job_queue_birthdate TIMESTAMP,
machine VARCHAR(1000),
name VARCHAR(1000),
schedd_name VARCHAR(1000)
16 years, 5 months
rhmessaging commits: r2587 - in mgmt/trunk/cumin/python: wooly and 1 other directory.
by rhmessaging-commits@lists.jboss.org
Author: justi9
Date: 2008-10-03 11:11:54 -0400 (Fri, 03 Oct 2008)
New Revision: 2587
Modified:
mgmt/trunk/cumin/python/cumin/user.py
mgmt/trunk/cumin/python/wooly/forms.py
Log:
Use an attr directly for the static size property
Modified: mgmt/trunk/cumin/python/cumin/user.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/user.py 2008-10-03 15:09:45 UTC (rev 2586)
+++ mgmt/trunk/cumin/python/cumin/user.py 2008-10-03 15:11:54 UTC (rev 2587)
@@ -68,11 +68,11 @@
self.__name = self.Name(app, "name")
self.add_field(self.__name)
- self.__name.input.set_size(20)
+ self.__name.input.size = 20
self.__password = self.Password(app, "password")
self.add_field(self.__password)
- self.__password.input.set_size(20)
+ self.__password.input.size = 20
self.__submit = self.Submit(app, "submit")
self.add_child(self.__submit)
Modified: mgmt/trunk/cumin/python/wooly/forms.py
===================================================================
--- mgmt/trunk/cumin/python/wooly/forms.py 2008-10-03 15:09:45 UTC (rev 2586)
+++ mgmt/trunk/cumin/python/wooly/forms.py 2008-10-03 15:11:54 UTC (rev 2587)
@@ -165,10 +165,6 @@
self.size = 32
- # XXX lose this
- def set_size(self, size):
- self.size = size
-
def render_size(self, session, *args):
return self.size
16 years, 5 months
rhmessaging commits: r2586 - mgmt/trunk/cumin/python/cumin.
by rhmessaging-commits@lists.jboss.org
Author: justi9
Date: 2008-10-03 11:09:45 -0400 (Fri, 03 Oct 2008)
New Revision: 2586
Modified:
mgmt/trunk/cumin/python/cumin/binding.py
Log:
Fix a crash from a missing form attr in ExchangeInput
Modified: mgmt/trunk/cumin/python/cumin/binding.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/binding.py 2008-10-03 13:27:39 UTC (rev 2585)
+++ mgmt/trunk/cumin/python/cumin/binding.py 2008-10-03 15:09:45 UTC (rev 2586)
@@ -3,7 +3,7 @@
from cumin.widgets import StateSwitch
from formats import *
from wooly import Template, Writer, Attribute, Parameter, Widget
-from wooly.forms import FormInput, FormField
+from wooly.forms import FormInput, FormField, Form
from wooly.parameters import DictParameter
from wooly.resources import StringCatalog
@@ -19,6 +19,15 @@
self.name_tmpl = Template(self, "name_html")
self.key_tmpl = Template(self, "key_html")
+ self.form = None
+
+ def init(self):
+ super(ExchangeInput, self).init()
+
+ for anc in reversed(self.ancestors):
+ if isinstance(anc, Form):
+ self.form = anc
+
def get_args(self, session):
return (self.exchange,)
16 years, 5 months
rhmessaging commits: r2585 - in mgmt/trunk: cumin/python/wooly and 1 other directories.
by rhmessaging-commits@lists.jboss.org
Author: justi9
Date: 2008-10-03 09:27:39 -0400 (Fri, 03 Oct 2008)
New Revision: 2585
Modified:
mgmt/trunk/cumin/python/cumin/binding.py
mgmt/trunk/cumin/python/cumin/broker.py
mgmt/trunk/cumin/python/cumin/brokercluster.py
mgmt/trunk/cumin/python/cumin/brokergroup.py
mgmt/trunk/cumin/python/cumin/brokerlink.py
mgmt/trunk/cumin/python/cumin/brokerprofile.py
mgmt/trunk/cumin/python/cumin/client.py
mgmt/trunk/cumin/python/cumin/exchange.py
mgmt/trunk/cumin/python/cumin/job.py
mgmt/trunk/cumin/python/cumin/limits.py
mgmt/trunk/cumin/python/cumin/queue.py
mgmt/trunk/cumin/python/cumin/realm.py
mgmt/trunk/cumin/python/cumin/system.py
mgmt/trunk/cumin/python/cumin/user.py
mgmt/trunk/cumin/python/cumin/widgets.py
mgmt/trunk/cumin/python/wooly/__init__.py
mgmt/trunk/cumin/python/wooly/forms.py
mgmt/trunk/misc/boneyard.py
Log:
A pretty big API change:
- No longer require form be passed to all form inputs. We can
compute that another way.
- No longer any need to also call add_form_parameter for params in
forms.
- FormInput decorates a parameter, and its interface now reflects
that.
- set_parameter and get_parameter on FormInput are removed in favor
of using an attr directly: FormInput.param.
Modified: mgmt/trunk/cumin/python/cumin/binding.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/binding.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/cumin/binding.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -2,16 +2,16 @@
from cumin.util import sorted_by
from cumin.widgets import StateSwitch
from formats import *
-from wooly import Template, Writer, Attribute, Parameter
+from wooly import Template, Writer, Attribute, Parameter, Widget
from wooly.forms import FormInput, FormField
from wooly.parameters import DictParameter
from wooly.resources import StringCatalog
strings = StringCatalog(__file__)
-class ExchangeInput(FormInput):
- def __init__(self, app, name, form):
- super(ExchangeInput, self).__init__(app, name, form)
+class ExchangeInput(Widget):
+ def __init__(self, app, name):
+ super(ExchangeInput, self).__init__(app, name)
self.exchange = None
self.instance_data = None
@@ -92,8 +92,8 @@
pass
class BindingKeyExchangeInput(ExchangeInput):
- def __init__(self, app, name, form):
- super(BindingKeyExchangeInput, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(BindingKeyExchangeInput, self).__init__(app, name)
def render_key_path(self, session, exchange):
return DictParameter.sep().join((self.instance_data, "key"))
@@ -111,8 +111,8 @@
pass
class XMLExchangeInput(BindingKeyExchangeInput):
- def __init__(self, app, name, form):
- super(XMLExchangeInput, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(XMLExchangeInput, self).__init__(app, name)
def render_xquery_path(self, session, exchange):
return DictParameter.sep().join((self.instance_data, "xquery"))
@@ -142,8 +142,8 @@
arguments["xquery"] = this_exchange["xquery"]
class HeadersExchangeInput(BindingKeyExchangeInput):
- def __init__(self, app, name, form):
- super(HeadersExchangeInput, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(HeadersExchangeInput, self).__init__(app, name)
def render_x_match_path(self, session, exchange):
return DictParameter.sep().join((self.instance_data, "x-match"))
@@ -246,30 +246,28 @@
return self.get(session) == "c"
class ExchangeKeysField(FormField):
- def __init__(self, app, name, form, title="Initial bindings:"):
- super(ExchangeKeysField, self).__init__(app, name, form)
+ def __init__(self, app, name, title="Initial bindings:"):
+ super(ExchangeKeysField, self).__init__(app, name)
self.dict_param = DictParameter(app, "exchange")
self.add_parameter(self.dict_param)
- form.add_form_parameter(self.dict_param)
self.phase = Parameter(app, "phase")
self.add_parameter(self.phase)
- form.add_form_parameter(self.phase)
- self.direct_input = DirectExchangeInput(app, "direct", form)
+ self.direct_input = DirectExchangeInput(app, "direct")
self.add_child(self.direct_input)
- self.topic_input = TopicExchangeInput(app, "topic", form)
+ self.topic_input = TopicExchangeInput(app, "topic")
self.add_child(self.topic_input)
- self.fanout_input = FanoutExchangeInput(app, "fanout", form)
+ self.fanout_input = FanoutExchangeInput(app, "fanout")
self.add_child(self.fanout_input)
- self.xml_input = XMLExchangeInput(app, "xml", form)
+ self.xml_input = XMLExchangeInput(app, "xml")
self.add_child(self.xml_input)
- self.headers_input = HeadersExchangeInput(app, "headers", form)
+ self.headers_input = HeadersExchangeInput(app, "headers")
self.add_child(self.headers_input)
self.title = title
Modified: mgmt/trunk/cumin/python/cumin/broker.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/broker.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/cumin/broker.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -21,9 +21,8 @@
def __init__(self, app, name):
super(BrokerSet, self).__init__(app, name)
- self.ids = CheckboxIdColumn(app, "id", self)
+ self.ids = CheckboxIdColumn(app, "id")
self.add_column(self.ids)
- self.add_form_parameter(self.ids)
col = self.NameColumn(app, "name")
self.add_column(col)
@@ -32,13 +31,13 @@
col = self.GroupsColumn(app, "groups")
self.add_column(col)
- self.groups = self.BrokerSetGroupInput(app, "groups", self)
+ self.groups = self.BrokerSetGroupInput(app, "groups")
self.add_child(self.groups)
- self.__unregister = self.Unregister(app, "unregister", self)
+ self.__unregister = self.Unregister(app, "unregister")
self.add_child(self.__unregister)
- self.groupify = self.Groupify(app, "groupify", self)
+ self.groupify = self.Groupify(app, "groupify")
self.add_child(self.groupify)
def render_title(self, session, *args):
@@ -582,22 +581,18 @@
self.name_param = Parameter(app, "name_param");
self.add_parameter(self.name_param)
- self.add_form_parameter(self.name_param)
self.names = ListParameter(app, "name", self.name_param)
self.add_parameter(self.names)
- self.add_form_parameter(self.names)
self.name_errors = self.Errors(self, "name_errors")
self.add_attribute(self.name_errors)
self.addr_param = Parameter(app, "addr_param")
self.add_parameter(self.addr_param)
- self.add_form_parameter(self.addr_param)
self.addrs = ListParameter(app, "address", self.addr_param)
self.add_parameter(self.addrs)
- self.add_form_parameter(self.addrs)
self.addr_errors = self.Errors(self, "addr_errors")
self.add_attribute(self.addr_errors)
@@ -605,11 +600,9 @@
self.group_param = BrokerGroupParameter(app, "group_param")
self.group_param.default = None
self.add_parameter(self.group_param)
- self.add_form_parameter(self.group_param)
self.groups = ListParameter(app, "group", self.group_param)
self.add_parameter(self.groups)
- self.add_form_parameter(self.groups)
self.fields = IntegerParameter(app, "fields")
self.fields.default = 3
@@ -618,7 +611,7 @@
self.field_tmpl = Template(self, "field_html")
self.group_tmpl = Template(self, "group_html")
- self.more = self.MoreEntries(app, "more", self)
+ self.more = self.MoreEntries(app, "more")
self.add_child(self.more)
class Errors(Attribute):
@@ -772,11 +765,10 @@
def __init__(self, app, name):
super(BrokerEdit, self).__init__(app, name)
- self.broker_name = UniqueNameField(app, "name", self,
- BrokerRegistration)
+ self.broker_name = UniqueNameField(app, "name", BrokerRegistration)
self.add_field(self.broker_name)
- self.groups = BrokerGroupCheckboxField(app, "groups", self)
+ self.groups = BrokerGroupCheckboxField(app, "groups")
self.add_field(self.groups)
def init(self):
Modified: mgmt/trunk/cumin/python/cumin/brokercluster.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/brokercluster.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/cumin/brokercluster.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -103,7 +103,7 @@
def __init__(self, app, name):
super(BrokerClusterForm, self).__init__(app, name)
- self.cluster_name = StringInput(app, "name", self)
+ self.cluster_name = StringInput(app, "name")
self.add_child(self.cluster_name)
def process_cluster(self, session, cluster):
Modified: mgmt/trunk/cumin/python/cumin/brokergroup.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/brokergroup.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/cumin/brokergroup.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -41,13 +41,13 @@
return fmt_olink(branch, group, name=data["name"])
class BrokerGroupInputSet(CheckboxInputSet):
- def __init__(self, app, name, form):
- super(BrokerGroupInputSet, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(BrokerGroupInputSet, self).__init__(app, name, None)
- param = ListParameter(app, "param", BrokerGroupParameter(app, "item"))
- self.add_parameter(param)
- self.set_parameter(param)
-
+ item = BrokerGroupParameter(app, "item")
+ self.param = ListParameter(app, "param", item)
+ self.add_parameter(self.param)
+
def do_get_items(self, session, *args):
return BrokerGroup.select()
@@ -62,13 +62,14 @@
return "checked=\"checked\""
class BrokerGroupCheckboxField(FormField):
- def __init__(self, app, name, form):
- super(BrokerGroupCheckboxField, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(BrokerGroupCheckboxField, self).__init__(app, name)
- self.__inputs = BrokerGroupInputSet(app, "inputs", form)
- self.add_child(self.__inputs)
+ self.__groups = BrokerGroupInputSet(app, "inputs")
+ self.add_child(self.__groups)
- self.set_parameter(self.__inputs.get_parameter())
+ def get(self, session):
+ return self.__groups.get(session)
def render_title(self, session):
return "Broker Groups"
@@ -142,7 +143,7 @@
def __init__(self, app, name):
super(BrokerGroupForm, self).__init__(app, name)
- self.group_name = UniqueNameField(app, "name", self, BrokerGroup)
+ self.group_name = UniqueNameField(app, "name", BrokerGroup)
self.add_field(self.group_name)
def init(self):
Modified: mgmt/trunk/cumin/python/cumin/brokerlink.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/brokerlink.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/cumin/brokerlink.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -18,7 +18,7 @@
self.ids = FilteredCheckboxIdColumn(app, "id", self, callback=self.disable_closed)
self.add_column(self.ids)
- #self.ids = CheckboxIdColumn(app, "id", self)
+ #self.ids = CheckboxIdColumn(app, "id")
#self.add_column(self.ids)
col = self.AddressColumn(app, "addr")
@@ -40,7 +40,7 @@
#col = self.ToPeerColumn(app, "to_peer")
#self.add_column(col)
- self.__close = self.Close(app, "close", self)
+ self.__close = self.Close(app, "close")
self.add_child(self.__close)
def render_add_broker_link_url(self, session, vhost):
@@ -123,7 +123,7 @@
def __init__(self, app, name):
super(PeerRouteSet, self).__init__(app, name)
- self.ids = CheckboxIdColumn(app, "id", self)
+ self.ids = CheckboxIdColumn(app, "id")
self.add_column(self.ids)
#col = self.SourceColumn(app, "source")
@@ -145,7 +145,7 @@
col = self.ExcludesColumn(app, "excludes")
self.add_column(col)
- self.__remove = self.Remove(app, "remove", self)
+ self.__remove = self.Remove(app, "remove")
self.add_child(self.__remove)
def get_args(self, session):
@@ -333,13 +333,12 @@
return "Messages Received, Routed, and Dropped"
class ExchangeRadioField(RadioField):
- def __init__(self, app, name, form):
- super(ExchangeRadioField, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(ExchangeRadioField, self).__init__(app, name, None)
- self.exchange_param = Parameter(app, "exchange_param")
- self.exchange_param.default = ""
- self.add_parameter(self.exchange_param)
- form.add_form_parameter(self.exchange_param)
+ self.param = Parameter(app, "exchange_param")
+ self.param.default = ""
+ self.add_parameter(self.param)
self.exchange_tmpl = Template(self, "exchange_html")
@@ -348,19 +347,12 @@
self.phase = Parameter(app, "phase")
self.add_parameter(self.phase)
- form.add_form_parameter(self.phase)
- def get(self, session):
- return self.exchange_param.get(session)
-
- def set(self, session, value):
- self.exchange_param.set(session, value)
-
def render_title(self, session):
return "Choose an Exchange"
def render_exchange_name_path(self, session, exchange):
- return self.exchange_param.path
+ return self.param.path
def render_exchange_name(self, session, exchange):
return exchange.name or "Default"
@@ -372,7 +364,7 @@
return ".".join((self.path, str(exchange.id)))
def render_checked(self, session, exchange):
- return self.exchange_param.get(session) == str(exchange.id) and "checked=\"checked\"" or ""
+ return self.param.get(session) == str(exchange.id) and "checked=\"checked\"" or ""
def render_phase_path(self, session, *args):
return self.phase.path
@@ -388,7 +380,7 @@
not (self.state.is_active(session) and not is_active(exchange)):
if not exchange.name in ["qpid.management", ""]:
if not self.get(session):
- self.exchange_param.set(session, str(exchange.id))
+ self.exchange.set(session, str(exchange.id))
self.exchange_tmpl.render(writer, session, exchange)
return writer.to_string()
@@ -403,19 +395,19 @@
def __init__(self, app, name):
super(BridgeAdd, self).__init__(app, name)
- self.exchange = ExchangeRadioField(app, "exchange", self)
+ self.exchange = ExchangeRadioField(app, "exchange")
self.add_field(self.exchange)
- self.key = TextField(app, "key", self)
+ self.key = TextField(app, "key")
self.key.set_title("Routing Key")
self.add_field(self.key)
- self.tag = TextField(app, "tag", self)
+ self.tag = TextField(app, "tag")
self.tag.set_required(False)
self.tag.set_title("Tag")
self.add_field(self.tag)
- self.excludes = TextField(app, "excludes", self)
+ self.excludes = TextField(app, "excludes")
self.excludes.set_required(False)
self.excludes.set_title("Excludes")
self.add_field(self.excludes)
@@ -495,9 +487,8 @@
self.host = DictParameter(app, "host")
self.add_parameter(self.host)
- self.add_form_parameter(self.host)
- self.durable = SavedField(app, "saved", self)
+ self.durable = SavedField(app, "saved")
self.add_field(self.durable)
self.errors = self.Errors(self, "errors")
Modified: mgmt/trunk/cumin/python/cumin/brokerprofile.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/brokerprofile.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/cumin/brokerprofile.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -104,7 +104,7 @@
def __init__(self, app, name):
super(BrokerProfileForm, self).__init__(app, name)
- self.profile_name = StringInput(app, "name", self)
+ self.profile_name = StringInput(app, "name")
self.add_child(self.profile_name)
def process_profile(self, session, profile):
Modified: mgmt/trunk/cumin/python/cumin/client.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/client.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/cumin/client.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -15,7 +15,7 @@
def __init__(self, app, name):
super(ConnectionSet, self).__init__(app, name)
- self.ids = CheckboxIdColumn(app, "id", self)
+ self.ids = CheckboxIdColumn(app, "id")
self.add_column(self.ids)
col = self.AddressColumn(app, "addr")
@@ -39,7 +39,7 @@
self.__phase = PhaseSwitch(app, "phase")
self.add_child(self.__phase)
- self.__close = self.Close(app, "close", self)
+ self.__close = self.Close(app, "close")
self.add_child(self.__close)
def get_args(self, session):
@@ -283,7 +283,7 @@
def __init__(self, app, name):
super(SessionSet, self).__init__(app, name)
- self.ids = CheckboxIdColumn(app, "id", self)
+ self.ids = CheckboxIdColumn(app, "id")
self.add_column(self.ids)
col = self.NameColumn(app, "name")
@@ -300,10 +300,10 @@
self.__phase = PhaseSwitch(app, "phase")
self.add_child(self.__phase)
- self.__detach = self.Detach(app, "detach", self)
+ self.__detach = self.Detach(app, "detach")
self.add_child(self.__detach)
- self.__close = self.Close(app, "close", self)
+ self.__close = self.Close(app, "close")
self.add_child(self.__close)
def get_args(self, session):
Modified: mgmt/trunk/cumin/python/cumin/exchange.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/exchange.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/cumin/exchange.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -13,8 +13,8 @@
strings = StringCatalog(__file__)
class ExchangeInputSet(RadioInputSet):
- def __init__(self, app, name, form):
- super(ExchangeInputSet, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(ExchangeInputSet, self).__init__(app, name)
param = ExchangeParameter(app, "param")
self.add_parameter(param)
@@ -69,7 +69,7 @@
self.phase = PhaseSwitch(app, "phase")
self.add_child(self.phase)
- self.__remove = self.Remove(app, "remove", self)
+ self.__remove = self.Remove(app, "remove")
self.add_child(self.__remove)
def get_args(self, session):
@@ -303,7 +303,7 @@
def __init__(self, app, name):
super(ExchangeBindingSet, self).__init__(app, name)
- self.__remove = self.Remove(app, "remove", self)
+ self.__remove = self.Remove(app, "remove")
self.add_child(self.__remove)
self.set_default_column_name("q_id")
@@ -393,35 +393,30 @@
def __init__(self, app, name):
super(ExchangeForm, self).__init__(app, name)
- self.exchange_name = ExchangeNameField(app, "exchange_name", self)
+ self.exchange_name = ExchangeNameField(app, "exchange_name")
self.add_field(self.exchange_name)
self.type = Parameter(app, "type")
self.type.default = "direct"
self.add_parameter(self.type)
- self.direct = RadioInput(app, "direct", self)
- self.direct.set_parameter(self.type)
+ self.direct = RadioInput(app, "direct", self.type)
self.direct.set_value("direct")
self.add_child(self.direct)
- self.topic = RadioInput(app, "topic", self)
- self.topic.set_parameter(self.type)
+ self.topic = RadioInput(app, "topic", self.type)
self.topic.set_value("topic")
self.add_child(self.topic)
- self.fanout = RadioInput(app, "fanout", self)
- self.fanout.set_parameter(self.type)
+ self.fanout = RadioInput(app, "fanout", self.type)
self.fanout.set_value("fanout")
self.add_child(self.fanout)
- self.headers = RadioInput(app, "headers", self)
- self.headers.set_parameter(self.type)
+ self.headers = RadioInput(app, "headers", self.type)
self.headers.set_value("headers")
self.add_child(self.headers)
- self.xml = RadioInput(app, "xml", self)
- self.xml.set_parameter(self.type)
+ self.xml = RadioInput(app, "xml", self.type)
self.xml.set_value("xml")
self.add_child(self.xml)
@@ -549,4 +544,4 @@
def get_builtins(cls):
return ["", "amq.direct", "amq.topic", "amq.match", "amq.fanout", "qpid.management"]
-
\ No newline at end of file
+
Modified: mgmt/trunk/cumin/python/cumin/job.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/job.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/cumin/job.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -19,7 +19,7 @@
def __init__(self, app, name):
super(JobSet, self).__init__(app, name)
- self.ids = CheckboxIdColumn(app, "id", self)
+ self.ids = CheckboxIdColumn(app, "id")
self.add_column(self.ids)
col = self.GlobalJobIdColumn(app, "global_job_id")
@@ -184,13 +184,13 @@
self.set_default_column_name("global_job_id")
- self.__remove = JobRemoveButton(app, "remove", self)
+ self.__remove = JobRemoveButton(app, "remove")
self.add_child(self.__remove)
- self.__hold = JobHoldButton(app, "hold", self)
+ self.__hold = JobHoldButton(app, "hold")
self.add_child(self.__hold)
- self.__release = JobReleaseButton(app, "release", self)
+ self.__release = JobReleaseButton(app, "release")
self.add_child(self.__release)
def get_visible_columns(self, session):
@@ -416,13 +416,13 @@
self.set_default_column_name("global_job_id")
- self.__remove = JobRemoveButton(app, "remove", self)
+ self.__remove = JobRemoveButton(app, "remove")
self.add_child(self.__remove)
- self.__hold = JobHoldButton(app, "hold", self)
+ self.__hold = JobHoldButton(app, "hold")
self.add_child(self.__hold)
- self.__release = JobReleaseButton(app, "release", self)
+ self.__release = JobReleaseButton(app, "release")
self.add_child(self.__release)
def get_visible_columns(self, session):
@@ -680,7 +680,6 @@
# the parameter that will hold all the field values
self.ads = DictParameter(app, "params")
self.add_parameter(self.ads)
- self.add_form_parameter(self.ads)
self.item_renderer = EditablePropertyRenderer(self, "property_html")
@@ -760,7 +759,7 @@
self.first_last = self.FLSwitch(app, "first_last")
self.add_child(self.first_last)
- self.__fetch = self.FetchButton(app, "refresh", self)
+ self.__fetch = self.FetchButton(app, "refresh")
self.add_child(self.__fetch)
self.out_time = Attribute(app, "out_time")
@@ -771,15 +770,12 @@
self.out_file = Parameter(app, "out")
self.add_parameter(self.out_file)
- self.add_form_parameter(self.out_file)
self.err_file = Parameter(app, "err")
self.add_parameter(self.err_file)
- self.add_form_parameter(self.err_file)
self.user_file = Parameter(app, "user")
self.add_parameter(self.user_file)
- self.add_form_parameter(self.user_file)
def get_args(self, session):
return self.frame.get_args(session)
@@ -1003,7 +999,7 @@
def __init__(self, app, name):
super(JobGroupSet, self).__init__(app, name)
- self.ids = CheckboxStringIdColumn(app, "id", self)
+ self.ids = CheckboxStringIdColumn(app, "id")
self.add_column(self.ids)
col = self.GroupColumn(app, "job_group")
@@ -1081,13 +1077,13 @@
def __init__(self, app, name):
super(JobGroupTab, self).__init__(app, name)
- self.__remove = self.Remove(app, "remove", self)
+ self.__remove = self.Remove(app, "remove")
self.add_child(self.__remove)
- self.__hold = self.Hold(app, "hold", self)
+ self.__hold = self.Hold(app, "hold")
self.add_child(self.__hold)
- self.__release = self.Release(app, "release", self)
+ self.__release = self.Release(app, "release")
self.add_child(self.__release)
self.set_default_column_name("job_group")
@@ -1137,7 +1133,6 @@
self.reason = Parameter(app, "reason")
self.add_parameter(self.reason)
- self.add_form_parameter(self.reason)
self.error = Attribute(app, "error")
self.add_attribute(self.error)
Modified: mgmt/trunk/cumin/python/cumin/limits.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/limits.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/cumin/limits.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -149,7 +149,6 @@
self.max = Parameter(app, "max")
self.add_parameter(self.max)
- self.add_form_parameter(self.max)
self.error = self.Errors(self, "error")
self.add_attribute(self.error)
Modified: mgmt/trunk/cumin/python/cumin/queue.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/queue.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/cumin/queue.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -24,7 +24,7 @@
def __init__(self, app, name):
super(QueueSet, self).__init__(app, name)
- self.ids = CheckboxIdColumn(app, "id", self)
+ self.ids = CheckboxIdColumn(app, "id")
self.add_column(self.ids)
col = self.NameColumn(app, "name")
@@ -58,10 +58,10 @@
self.phase = PhaseSwitch(app, "phase")
self.add_child(self.phase)
- self.__purge = self.Purge(app, "purge", self)
+ self.__purge = self.Purge(app, "purge")
self.add_child(self.__purge)
- self.__remove = self.Remove(app, "remove", self)
+ self.__remove = self.Remove(app, "remove")
self.add_child(self.__remove)
def render_add_queue_url(self, session, vhost):
@@ -284,7 +284,7 @@
def __init__(self, app, name):
super(QueueBindingSet, self).__init__(app, name)
- self.__remove = self.Remove(app, "remove", self)
+ self.__remove = self.Remove(app, "remove")
self.add_child(self.__remove)
self.set_default_column_name("e_id")
@@ -325,19 +325,19 @@
def __init__(self, app, name):
super(QueueForm, self).__init__(app, name)
- self.namef = NameField(app, "name", self)
+ self.namef = NameField(app, "name")
self.add_field(self.namef)
- self.durable = DurabilityField(app, "durable", self)
+ self.durable = DurabilityField(app, "durable")
self.add_field(self.durable)
- #self.exclusive = ExclusivityField(app, "exclusive", self)
+ #self.exclusive = ExclusivityField(app, "exclusive")
#self.add_field(self.exclusive)
- self.autodelete = AutoDeleteField(app, "autodelete", self)
+ self.autodelete = AutoDeleteField(app, "autodelete")
self.add_field(self.autodelete)
- self.bindings = ExchangeKeysField(app, "bindings", self)
+ self.bindings = ExchangeKeysField(app, "bindings")
self.add_field(self.bindings)
def validate(self, session, queue_name):
@@ -403,7 +403,7 @@
def __init__(self, app, name):
super(QueuePurge, self).__init__(app, name)
- self.purge_request = MultiplicityField(app, "purge_request", self)
+ self.purge_request = MultiplicityField(app, "purge_request")
self.add_field(self.purge_request)
def get_args(self, session):
@@ -478,8 +478,8 @@
return "Remove Queue '%s'" % Queue.get(id).name
class BindSummaryPropertiesField(FormField):
- def __init__(self, app, name, form):
- super(BindSummaryPropertiesField, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(BindSummaryPropertiesField, self).__init__(app, name)
self.sum_props = self.SummaryProperties(app, "properties")
self.add_child(self.sum_props)
@@ -508,10 +508,10 @@
def __init__(self, app, name):
super(QueueBindingAdd, self).__init__(app, name)
- self.props = BindSummaryPropertiesField(app, "props", self)
+ self.props = BindSummaryPropertiesField(app, "props")
self.add_field(self.props)
- self.bindings = ExchangeKeysField(app, "bindings", self, title="Bind to Exchange:")
+ self.bindings = ExchangeKeysField(app, "bindings", title="Bind to Exchange:")
self.add_field(self.bindings)
self.errors = self.Errors(self, "errors")
Modified: mgmt/trunk/cumin/python/cumin/realm.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/realm.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/cumin/realm.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -20,8 +20,8 @@
return realm.name
class RealmInputSet(CheckboxInputSet):
- def __init__(self, app, name, form):
- super(RealmInputSet, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(RealmInputSet, self).__init__(app, name)
param = ListParameter(app, "param", RealmParameter(app, "item"))
self.add_parameter(param)
Modified: mgmt/trunk/cumin/python/cumin/system.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/system.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/cumin/system.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -13,9 +13,8 @@
def __init__(self, app, name):
super(SystemSet, self).__init__(app, name)
- self.ids = CheckboxIdColumn(app, "id", self)
+ self.ids = CheckboxIdColumn(app, "id")
self.add_column(self.ids)
- self.add_form_parameter(self.ids)
col = self.NameColumn(app, "name")
self.add_column(col)
Modified: mgmt/trunk/cumin/python/cumin/user.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/user.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/cumin/user.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -66,15 +66,15 @@
self.__login_invalid = Attribute(app, "login_invalid")
self.add_attribute(self.__login_invalid)
- self.__name = self.Name(app, "name", self)
+ self.__name = self.Name(app, "name")
self.add_field(self.__name)
- self.__name.get_input().set_size(20)
+ self.__name.input.set_size(20)
- self.__password = self.Password(app, "password", self)
+ self.__password = self.Password(app, "password")
self.add_field(self.__password)
- self.__password.get_input().set_size(20)
+ self.__password.input.set_size(20)
- self.__submit = self.Submit(app, "submit", self)
+ self.__submit = self.Submit(app, "submit")
self.add_child(self.__submit)
def do_process(self, session):
@@ -128,17 +128,17 @@
self.__errors = self.Errors(app, "errors")
self.add_attribute(self.__errors)
- self.__current = self.Current(app, "current", self)
+ self.__current = self.Current(app, "current")
self.add_field(self.__current)
- self.__current.get_input().set_size(20)
+ self.__current.input.size = 20
- self.__new0 = self.New0(app, "new0", self)
+ self.__new0 = self.New0(app, "new0")
self.add_field(self.__new0)
- self.__new0.get_input().set_size(20)
+ self.__new0.input.size = 20
- self.__new1 = self.New1(app, "new1", self)
+ self.__new1 = self.New1(app, "new1")
self.add_field(self.__new1)
- self.__new1.get_input().set_size(20)
+ self.__new1.input.size = 20
def process_cancel(self, session):
branch = session.branch()
Modified: mgmt/trunk/cumin/python/cumin/widgets.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/widgets.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/cumin/widgets.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -147,23 +147,23 @@
self.frame.show_remove(branch)
return branch.marshal()
-class FormHelp(FormInput):
- def __init__(self, app, name, form):
- super(FormHelp, self).__init__(app, name, form)
+class FormHelp(Widget):
+ def __init__(self, app, name):
+ super(FormHelp, self).__init__(app, name)
class CuminForm(Form):
def __init__(self, app, name):
super(CuminForm, self).__init__(app, name)
- self.__cancel = self.Cancel(app, "cancel", self)
+ self.__cancel = self.Cancel(app, "cancel")
self.__cancel.set_tab_index(201)
self.add_child(self.__cancel)
- self.__submit = self.Submit(app, "submit", self)
+ self.__submit = self.Submit(app, "submit")
self.__submit.set_tab_index(200)
self.add_child(self.__submit)
- self.__help = self.Help(app, "help", self)
+ self.__help = self.Help(app, "help")
self.add_child(self.__help)
def submit(self, session):
@@ -663,11 +663,11 @@
return self.paginator.get_bounds(session)
class BrokerGroupInput(OptionInputSet):
- def __init__(self, app, name, form):
- super(BrokerGroupInput, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(BrokerGroupInput, self).__init__(app, name, None)
- self.set_parameter(BrokerGroupParameter(app, "param"))
- self.add_parameter(self.get_parameter())
+ self.param = BrokerGroupParameter(app, "param")
+ self.add_parameter(self.param)
def do_get_items(self, session):
return list(BrokerGroup.select()) #XXX avoid list()ing this?
@@ -682,7 +682,7 @@
def __init__(self, app, name):
super(BindingSet, self).__init__(app, name)
- self.ids = CheckboxIdColumn(app, "id", self)
+ self.ids = CheckboxIdColumn(app, "id")
self.add_column(self.ids)
col = self.QNameColumn(app, "q_id")
@@ -755,29 +755,25 @@
binding = Binding.get(data["id"])
return self.app.model.binding.msgMatched.value(binding)
-class CheckboxIdColumn(SqlTableColumn):
- def __init__(self, app, name, form):
- super(CheckboxIdColumn, self).__init__(app, name)
+class CheckboxIdColumn(FormInput, SqlTableColumn):
+ def __init__(self, app, name):
+ super(CheckboxIdColumn, self).__init__(app, name, None)
- self.form = form
self.header_class = CheckboxIdColumnHeader
- param = IntegerParameter(app, "param")
- self.add_parameter(param)
+ item = IntegerParameter(app, "param")
+ self.add_parameter(item) # XXX lose this?
- self.ids = ListParameter(app, "id", param)
- self.add_parameter(self.ids)
+ self.param = ListParameter(app, "id", item)
+ self.add_parameter(self.param)
- def get(self, session):
- return self.ids.get(session)
-
def clear(self, session):
- self.ids.set(session, list())
+ self.param.set(session, list())
def do_render(self, session, data, disabled=False):
- name = self.ids.path
+ name = self.param.path
id = data[self.name]
- attr = id in self.ids.get(session) and "checked=\"checked\"" or ""
+ attr = id in self.param.get(session) and "checked=\"checked\"" or ""
disa = disabled and "disabled=\"disabled\"" or ""
t = "<td><input type=\"checkbox\" name=\"%s\" value=\"%i\" %s %s/></td>"
@@ -788,11 +784,11 @@
return self.column.form.path
def render_elem_name(self, session, *args):
- return self.column.ids.path
+ return self.column.param.path
class FilteredCheckboxIdColumn(CheckboxIdColumn):
def __init__(self, app, name, form, callback=None):
- super(FilteredCheckboxIdColumn, self).__init__(app, name, form)
+ super(FilteredCheckboxIdColumn, self).__init__(app, name)
# call back that returns True if the checkbox is to be disabled
self.__callback = callback
@@ -803,10 +799,9 @@
disabled=disabled)
class CheckboxStringIdColumn(SqlTableColumn):
- def __init__(self, app, name, form):
+ def __init__(self, app, name):
super(CheckboxStringIdColumn, self).__init__(app, name)
- self.form = form
self.header_class = CheckboxIdColumnHeader
param = Parameter(app, "param")
@@ -832,8 +827,8 @@
class NameField(StringField):
- def __init__(self, app, name, form):
- super(NameField, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(NameField, self).__init__(app, name)
self.required = True
self.illegal_chars = ""
@@ -862,8 +857,8 @@
break
class TextField(NameField):
- def __init__(self, app, name, form):
- super(TextField, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(TextField, self).__init__(app, name)
self.__title = "Title"
@@ -874,8 +869,8 @@
return self.__title
class ExchangeNameField(NameField):
- def __init__(self, app, name, form):
- super(ExchangeNameField, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(ExchangeNameField, self).__init__(app, name)
self.illegal_chars = " (){}[]-<>&%"
self.legal_chars_desc = """
@@ -884,8 +879,8 @@
"""
class UniqueNameField(NameField):
- def __init__(self, app, name, form, cls, fld="name"):
- super(UniqueNameField, self).__init__(app, name, form)
+ def __init__(self, app, name, cls, fld="name"):
+ super(UniqueNameField, self).__init__(app, name)
self.__class = cls
self.__field = fld
@@ -921,19 +916,18 @@
return "An item with this %s already exists" % self.__field
class DurabilityField(RadioField):
- def __init__(self, app, name, form):
- super(DurabilityField, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(DurabilityField, self).__init__(app, name, None)
- param = Parameter(app, "param")
- param.default = "durable"
- self.add_parameter(param)
- self.set_parameter(param)
+ self.param = Parameter(app, "param")
+ self.param.default = "durable"
+ self.add_parameter(self.param)
- option = self.Durable(app, "durable", form)
- option.set_value(param.default)
+ option = self.Durable(app, "durable", self.param)
+ option.set_value(self.param.default)
self.add_option(option)
- option = self.Transient(app, "transient", form)
+ option = self.Transient(app, "transient", self.param)
option.set_value("transient")
self.add_option(option)
@@ -955,19 +949,18 @@
return "Transient"
class SavedField(RadioField):
- def __init__(self, app, name, form):
- super(SavedField, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(SavedField, self).__init__(app, name, None)
- param = Parameter(app, "param")
- param.default = "notsaved"
- self.add_parameter(param)
- self.set_parameter(param)
+ self.param = Parameter(app, "param")
+ self.param.default = "notsaved"
+ self.add_parameter(self.param)
- option = self.Saved(app, "saved", form)
+ option = self.Saved(app, "saved", self.param)
option.set_value("saved")
self.add_option(option)
- option = self.NotSaved(app, "notsaved", form)
+ option = self.NotSaved(app, "notsaved", self.param)
option.set_value("notsaved")
self.add_option(option)
@@ -989,19 +982,18 @@
return "No, do not restore if broker restarts"
class ExclusivityField(RadioField):
- def __init__(self, app, name, form):
- super(ExclusivityField, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(ExclusivityField, self).__init__(app, name)
- param = Parameter(app, "param")
- param.default = "exclusive"
- self.add_parameter(param)
- self.set_parameter(param)
+ self.param = Parameter(app, "param")
+ self.param.default = "exclusive"
+ self.add_parameter(self.param)
- option = self.Exclusive(app, "exclusive", form)
- option.set_value(param.default)
+ option = self.Exclusive(app, "exclusive")
+ option.set_value(self.param.default)
self.add_option(option)
- option = self.NonExclusive(app, "non-exclusive", form)
+ option = self.NonExclusive(app, "non-exclusive")
option.set_value("non-exclusive")
self.add_option(option)
@@ -1023,17 +1015,16 @@
return "Non-exclusive"
class MultiplicityField(RadioField):
- def __init__(self, app, name, form):
- super(MultiplicityField, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(MultiplicityField, self).__init__(app, name, None)
- param = Parameter(app, "param")
- param.default = "all"
- self.add_parameter(param)
- self.set_parameter(param)
+ self.param = Parameter(app, "param")
+ self.param.default = "all"
+ self.add_parameter(self.param)
- self.add_option(self.All(app, "all", form))
- self.add_option(self.Top(app, "top", form))
- self.top_n = self.TopN(app, "topn", form)
+ self.add_option(self.All(app, "all", self.param))
+ self.add_option(self.Top(app, "top", self.param))
+ self.top_n = self.TopN(app, "topn", self.param)
self.add_option(self.top_n)
def render_title(self, session):
@@ -1054,11 +1045,10 @@
return "Top message"
class TopN(RadioFieldOption):
- def __init__(self, app, name, form):
- super(MultiplicityField.TopN, self).__init__(app, name, form)
+ def __init__(self, app, name, param):
+ super(MultiplicityField.TopN, self).__init__(app, name, param)
self.__n_value = IntegerParameter(app, "arg")
- form.add_form_parameter(self.__n_value)
self.add_parameter(self.__n_value)
def render_value(self, session):
@@ -1077,19 +1067,18 @@
return
class AutoDeleteField(RadioField):
- def __init__(self, app, name, form):
- super(AutoDeleteField, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(AutoDeleteField, self).__init__(app, name, None)
- param = Parameter(app, "param")
- param.default = "autodel"
- self.add_parameter(param)
- self.set_parameter(param)
+ self.param = Parameter(app, "param")
+ self.param.default = "autodel"
+ self.add_parameter(self.param)
- option = self.AutoDel(app, "autodel", form)
- option.set_value(param.default)
+ option = self.AutoDel(app, "autodel", self.param)
+ option.set_value(self.param.default)
self.add_option(option)
- option = self.Preserve(app, "preserve", form)
+ option = self.Preserve(app, "preserve", self.param)
option.set_value("preserve")
self.add_option(option)
Modified: mgmt/trunk/cumin/python/wooly/__init__.py
===================================================================
--- mgmt/trunk/cumin/python/wooly/__init__.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/wooly/__init__.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -1,4 +1,4 @@
-import sys, os
+import sys, os, logging
from cStringIO import StringIO
from urllib import quote, unquote_plus, unquote
from copy import copy
@@ -111,6 +111,8 @@
self.sealed = False
def init(self):
+ #print "Initializing %s" % str(self)
+
assert not self.sealed
ancestors = list()
@@ -150,7 +152,9 @@
def add_child(self, child):
assert not self.sealed
+ assert child is not None
assert child is not self
+
self.children.append(child)
self.children_by_name[child.name] = child
child.parent = self
Modified: mgmt/trunk/cumin/python/wooly/forms.py
===================================================================
--- mgmt/trunk/cumin/python/wooly/forms.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/cumin/python/wooly/forms.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -30,9 +30,6 @@
return origin
- def add_form_parameter(self, param):
- self.form_params.add(param)
-
def render_hidden_inputs(self, session, *args):
writer = Writer()
# remember our roots
@@ -103,25 +100,30 @@
return list()
class FormInput(Widget):
- def __init__(self, app, name, form):
+ def __init__(self, app, name, param):
super(FormInput, self).__init__(app, name)
- self.form = form
- self.param = None
-
+ self.param = param
self.tab_index = 100
self.disabled = False
- def set_parameter(self, param):
- if self.param:
- raise Exception("Parameter already set")
+ self.form = None
- self.param = param;
- self.form.add_form_parameter(self.param)
+ def init(self):
+ super(FormInput, self).init()
- def get_parameter(self):
- return self.param
+ assert self.param is not None
+ assert isinstance(self.param, Parameter)
+ for anc in reversed(self.ancestors):
+ if isinstance(anc, Form):
+ self.form = anc
+
+ if self.form:
+ self.form.form_params.add(self.param)
+ else:
+ print "Warning: FormInput '%s' not inside a form" % self
+
def get(self, session):
return self.param.get(session)
@@ -158,11 +160,12 @@
super(EmptyInputError, self).__init__("This value is required")
class ScalarInput(FormInput):
- def __init__(self, app, name, form):
- super(ScalarInput, self).__init__(app, name, form)
+ def __init__(self, app, name, param):
+ super(ScalarInput, self).__init__(app, name, param)
self.size = 32
+ # XXX lose this
def set_size(self, size):
self.size = size
@@ -170,43 +173,44 @@
return self.size
class StringInput(ScalarInput):
- def __init__(self, app, name, form):
- super(StringInput, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(StringInput, self).__init__(app, name, None)
- self.set_parameter(Parameter(app, "param"))
- self.add_parameter(self.get_parameter())
+ self.param = Parameter(app, "param")
+ self.add_parameter(self.param)
- self.set_size(30)
+ self.size = 30
class PasswordInput(StringInput):
pass
class IntegerInput(ScalarInput):
- def __init__(self, app, name, form):
- super(IntegerInput, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(IntegerInput, self).__init__(app, name, None)
- self.set_parameter(IntegerParameter(app, "param"))
- self.add_parameter(self.get_parameter())
+ self.param = IntegerParameter(app, "param")
+ self.add_parameter(self.param)
- self.set_size(15)
+ self.size = 15
class CheckboxInput(FormInput):
- def __init__(self, app, name, form):
- super(CheckboxInput, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(CheckboxInput, self).__init__(app, name, None)
- self.set_parameter(VoidBooleanParameter(app, "param"))
- self.add_parameter(self.get_parameter())
+ self.param = VoidBooleanParameter(app, "param")
+ self.add_parameter(self.param)
def render_checked_attr(self, session, *args):
if self.get(session):
return "checked=\"checked\""
class RadioInput(FormInput):
- def __init__(self, app, name, form):
- super(RadioInput, self).__init__(app, name, form)
+ def __init__(self, app, name, param):
+ super(RadioInput, self).__init__(app, name, param)
self.value = None
-
+
+ # XXX lose this
def set_value(self, value):
self.value = value
@@ -220,11 +224,11 @@
return "checked=\"checked\""
class FormButton(FormInput):
- def __init__(self, app, name, form):
- super(FormButton, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(FormButton, self).__init__(app, name, None)
- self.set_parameter(BooleanParameter(app, "param"))
- self.add_parameter(self.get_parameter())
+ self.param = BooleanParameter(app, "param")
+ self.add_parameter(self.param)
def do_process(self, session, *args):
if self.get(session):
@@ -284,33 +288,12 @@
return writer.to_string()
class FormField(Widget):
- def __init__(self, app, name, form):
+ def __init__(self, app, name):
super(FormField, self).__init__(app, name)
- self.__form = form
- self.__param = None
-
self.__errors = FormErrorSet(app, "errors")
self.add_child(self.__errors)
- def get_parameter(self):
- return self.__param
-
- def set_parameter(self, param):
- assert isinstance(param, Parameter)
-
- self.__param = param
- return param
-
- def get_form(self):
- return self.__form
-
- def get(self, session):
- return self.__param.get(session)
-
- def set(self, session, value):
- return self.__param.set(session, value)
-
def validate(self, session):
errors = self.__errors.get(session)
@@ -322,62 +305,69 @@
pass
class ScalarField(FormField):
- def __init__(self, app, name, form):
- super(ScalarField, self).__init__(app, name, form)
+ def __init__(self, app, name, input):
+ super(ScalarField, self).__init__(app, name)
- self.__input = None
+ self.input = input
- def get_input(self):
- return self.__input
+ def init(self):
+ super(ScalarField, self).init()
- def set_input(self, input):
- assert isinstance(input, FormInput)
+ assert self.input is not None
+ assert isinstance(self.input, ScalarInput)
- self.set_parameter(input.get_parameter())
- self.__input = input
+ def get(self, session):
+ return self.input.get(session)
- return input
+ def set(self, session, value):
+ return self.input.set(session, value)
def render_inputs(self, session, *args):
- return self.__input.render(session)
+ return self.input.render(session)
class StringField(ScalarField):
- def __init__(self, app, name, form):
- super(StringField, self).__init__(app, name, form)
-
- input = StringInput(app, "input", form)
- self.add_child(input)
- self.set_input(input)
+ def __init__(self, app, name):
+ super(StringField, self).__init__(app, name, None)
+ self.input = StringInput(app, "input")
+ self.add_child(self.input)
+
class PasswordField(ScalarField):
- def __init__(self, app, name, form):
- super(PasswordField, self).__init__(app, name, form)
-
- input = PasswordInput(app, "input", form)
- self.add_child(input)
- self.set_input(input)
+ def __init__(self, app, name):
+ super(PasswordField, self).__init__(app, name, None)
+ self.input = PasswordInput(app, "input")
+ self.add_child(self.input)
+
class IntegerField(ScalarField):
- def __init__(self, app, name, form):
- super(IntegerInputField, self).__init__(app, name, form)
+ def __init__(self, app, name):
+ super(IntegerInputField, self).__init__(app, name, None)
- input = IntegerInput(app, "input", form)
- self.add_child(input)
- self.set_input(input)
+ self.input = PasswordInput(app, "input")
+ self.add_child(self.input)
+# XXX make this use a RadioInputSet instead?
class RadioField(FormField):
- def __init__(self, app, name, form):
- super(RadioField, self).__init__(app, name, form)
+ def __init__(self, app, name, param):
+ super(RadioField, self).__init__(app, name)
+ self.param = param
self.options = list()
+ def init(self):
+ super(RadioField, self).init()
+
+ assert self.param is not None
+ assert isinstance(self.param, Parameter)
+
def add_option(self, option):
assert isinstance(option, RadioFieldOption)
- option.set_parameter(self.get_parameter())
self.options.append(option)
self.add_child(option)
+ option.param = self.param
+
def render_inputs(self, session, *args):
writer = Writer()
Modified: mgmt/trunk/misc/boneyard.py
===================================================================
--- mgmt/trunk/misc/boneyard.py 2008-10-03 11:09:19 UTC (rev 2584)
+++ mgmt/trunk/misc/boneyard.py 2008-10-03 13:27:39 UTC (rev 2585)
@@ -153,30 +153,27 @@
self.source.default = "local"
self.add_parameter(self.source)
- self.profile = RadioInput(app, "profile", self)
- self.profile.set_parameter(self.source)
+ self.profile = RadioInput(app, "profile", self.source)
self.profile.set_value("profile")
self.add_child(self.profile)
- self.pvalue = StringInput(app, "profile_value", self)
+ self.pvalue = StringInput(app, "profile_value")
self.pvalue.set_disabled(True)
self.add_child(self.pvalue)
- self.broker = RadioInput(app, "broker", self)
- self.broker.set_parameter(self.source)
+ self.broker = RadioInput(app, "broker", self.source)
self.broker.set_value("broker")
self.add_child(self.broker)
- self.svalue = StringInput(app, "broker_value", self)
+ self.svalue = StringInput(app, "broker_value")
self.svalue.set_disabled(True)
self.add_child(self.svalue)
- self.local = RadioInput(app, "local", self)
- self.local.set_parameter(self.source)
+ self.local = RadioInput(app, "local", self.source)
self.local.set_value("local")
self.add_child(self.local)
- self.lvalue = StringInput(app, "local_value", self)
+ self.lvalue = StringInput(app, "local_value")
self.add_child(self.lvalue)
def render_title(self, session, prop):
16 years, 5 months
rhmessaging commits: r2584 - in store/branches/java/broker-queue-refactor/java/bdbstore/src: tools/java/org/apache/qpid/server/store/berkeleydb and 1 other directory.
by rhmessaging-commits@lists.jboss.org
Author: ritchiem
Date: 2008-10-03 07:09:19 -0400 (Fri, 03 Oct 2008)
New Revision: 2584
Modified:
store/branches/java/broker-queue-refactor/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStore.java
store/branches/java/broker-queue-refactor/java/bdbstore/src/tools/java/org/apache/qpid/server/store/berkeleydb/BDBStoreUpgrade.java
Log:
BDBMessageStore : Removed debug logging that was committed by mistake
BDBStoreUpgrade : Corrected default usage line and added ' to end of a log statement.
Modified: store/branches/java/broker-queue-refactor/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStore.java
===================================================================
--- store/branches/java/broker-queue-refactor/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStore.java 2008-10-03 10:44:49 UTC (rev 2583)
+++ store/branches/java/broker-queue-refactor/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStore.java 2008-10-03 11:09:19 UTC (rev 2584)
@@ -342,8 +342,6 @@
try
{
_environment = new Environment(environmentPath, envConfig);
- System.err.println("Created("+this+") Environment:"+_environment);
- new Exception().printStackTrace();
return false;
}
catch (DatabaseException de)
@@ -356,12 +354,9 @@
{
_environment.cleanLog();
_environment.close();
- System.err.println("Close("+this+") Environment:"+_environment);
}
_environment = new Environment(environmentPath, envConfig);
- System.err.println("Created("+this+") Environment:"+_environment);
- new Exception().printStackTrace();
-
+
return true;
}
else
@@ -456,7 +451,6 @@
// get a chance to finish.
_environment.cleanLog();
_environment.close();
- System.err.println("Close("+this+") Environment:"+_environment);
}
}
Modified: store/branches/java/broker-queue-refactor/java/bdbstore/src/tools/java/org/apache/qpid/server/store/berkeleydb/BDBStoreUpgrade.java
===================================================================
--- store/branches/java/broker-queue-refactor/java/bdbstore/src/tools/java/org/apache/qpid/server/store/berkeleydb/BDBStoreUpgrade.java 2008-10-03 10:44:49 UTC (rev 2583)
+++ store/branches/java/broker-queue-refactor/java/bdbstore/src/tools/java/org/apache/qpid/server/store/berkeleydb/BDBStoreUpgrade.java 2008-10-03 11:09:19 UTC (rev 2584)
@@ -128,15 +128,10 @@
if (userInteract("Upgrade destination exists do you wish to replace it?"))
{
- try
+ if (!FileUtils.delete(_toDir, true))
{
- FileUtils.delete(_toDir, true);
+ throw new IllegalArgumentException("Unable to remove upgrade destination '" + toDir + "'");
}
- catch (IOException e)
- {
- throw new IllegalArgumentException("Unable to remove upgrade destination '" + toDir + "':"
- + e.getMessage());
- }
}
else
{
@@ -147,15 +142,10 @@
{
if (force)
{
- try
+ if (!FileUtils.delete(_toDir, true))
{
- FileUtils.delete(_toDir, true);
+ throw new IllegalArgumentException("Unable to remove upgrade destination '" + toDir + "'");
}
- catch (IOException e)
- {
- throw new IllegalArgumentException("Unable to remove upgrade destination '" + toDir + "':"
- + e.getMessage());
- }
}
else
{
@@ -265,7 +255,7 @@
*/
public void upgradeFromVersion(int version, File fromDir, File toDir, File backupDir, boolean force) throws Exception
{
- _logger.info("Located store to upgrade at '" + fromDir);
+ _logger.info("Located store to upgrade at '" + fromDir + "'");
if (_interactive)
{
@@ -468,7 +458,7 @@
private static void usage()
{
System.out.println("usage: BDBStoreUpgrade:\n [-h|--help] [-q|--quiet] [-f|--force] [-b|--backup <Path to backup-db>] " +
- "-o|--input <Path to input-db> -o|--output <Path to upgraded-db>");
+ "-i|--input <Path to input-db> -o|--output <Path to upgraded-db>");
}
private static void help()
16 years, 5 months
rhmessaging commits: r2583 - store/branches/java/broker-queue-refactor/java/bdbstore/lib.
by rhmessaging-commits@lists.jboss.org
Author: ritchiem
Date: 2008-10-03 06:44:49 -0400 (Fri, 03 Oct 2008)
New Revision: 2583
Added:
store/branches/java/broker-queue-refactor/java/bdbstore/lib/commons-cli-1.0.jar
Log:
Added missing commons-cli used by the upgrade tool
Added: store/branches/java/broker-queue-refactor/java/bdbstore/lib/commons-cli-1.0.jar
===================================================================
(Binary files differ)
Property changes on: store/branches/java/broker-queue-refactor/java/bdbstore/lib/commons-cli-1.0.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
16 years, 5 months