[Checkins] SVN: lovely.remotetask/trunk/src/lovely/remotetask/ Make
it usable in ZMI.
Jürgen Kartnaller
juergen at kartnaller.at
Tue Apr 17 08:45:57 EDT 2007
Log message for revision 74199:
Make it usable in ZMI.
Cron jobs can be canceled
Changed:
U lovely.remotetask/trunk/src/lovely/remotetask/configure.zcml
U lovely.remotetask/trunk/src/lovely/remotetask/interfaces.py
U lovely.remotetask/trunk/src/lovely/remotetask/job.py
U lovely.remotetask/trunk/src/lovely/remotetask/service.py
-=-
Modified: lovely.remotetask/trunk/src/lovely/remotetask/configure.zcml
===================================================================
--- lovely.remotetask/trunk/src/lovely/remotetask/configure.zcml 2007-04-17 10:24:40 UTC (rev 74198)
+++ lovely.remotetask/trunk/src/lovely/remotetask/configure.zcml 2007-04-17 12:45:56 UTC (rev 74199)
@@ -19,6 +19,15 @@
set_schema=".interfaces.IJob" />
</class>
+ <class class=".job.CronJob">
+ <implements
+ interface="zope.annotation.interfaces.IAttributeAnnotatable" />
+ <require
+ permission="zope.Public"
+ interface=".interfaces.ICronJob"
+ set_schema=".interfaces.ICronJob" />
+ </class>
+
<!-- Demo: Echo Task -->
<utility
factory=".task.EchoTask"
Modified: lovely.remotetask/trunk/src/lovely/remotetask/interfaces.py
===================================================================
--- lovely.remotetask/trunk/src/lovely/remotetask/interfaces.py 2007-04-17 10:24:40 UTC (rev 74198)
+++ lovely.remotetask/trunk/src/lovely/remotetask/interfaces.py 2007-04-17 12:45:56 UTC (rev 74199)
@@ -178,7 +178,7 @@
description=u'The date/time at which the job was completed.')
-class ICron(zope.interface.Interface):
+class ICronJob(IJob):
"""Parameters for cron jobs"""
minute = zope.schema.Tuple(
Modified: lovely.remotetask/trunk/src/lovely/remotetask/job.py
===================================================================
--- lovely.remotetask/trunk/src/lovely/remotetask/job.py 2007-04-17 10:24:40 UTC (rev 74198)
+++ lovely.remotetask/trunk/src/lovely/remotetask/job.py 2007-04-17 12:45:56 UTC (rev 74199)
@@ -51,16 +51,14 @@
class CronJob(Job):
"""A job for reocuring tasks"""
- zope.interface.implements(interfaces.ICron)
+ zope.interface.implements(interfaces.ICronJob)
- minute = FieldProperty(interfaces.ICron['minute'])
- hour = FieldProperty(interfaces.ICron['hour'])
- dayOfMonth = FieldProperty(interfaces.ICron['dayOfMonth'])
- month = FieldProperty(interfaces.ICron['month'])
- dayOfWeek = FieldProperty(interfaces.ICron['dayOfWeek'])
+ minute = FieldProperty(interfaces.ICronJob['minute'])
+ hour = FieldProperty(interfaces.ICronJob['hour'])
+ dayOfMonth = FieldProperty(interfaces.ICronJob['dayOfMonth'])
+ month = FieldProperty(interfaces.ICronJob['month'])
+ dayOfWeek = FieldProperty(interfaces.ICronJob['dayOfWeek'])
- _lastExecutionTime = None
-
def __init__(self, id, task, input,
minute=(),
hour=(),
Modified: lovely.remotetask/trunk/src/lovely/remotetask/service.py
===================================================================
--- lovely.remotetask/trunk/src/lovely/remotetask/service.py 2007-04-17 10:24:40 UTC (rev 74198)
+++ lovely.remotetask/trunk/src/lovely/remotetask/service.py 2007-04-17 12:45:56 UTC (rev 74199)
@@ -105,6 +105,10 @@
job.status = interfaces.CANCELLED
self._queue.pull(idx)
break
+ if jobid in self.jobs:
+ job = self.jobs[jobid]
+ if job.status == interfaces.CRONJOB:
+ job.status = interfaces.CANCELLED
def getStatus(self, jobid):
"""See interfaces.ITaskService"""
More information about the Checkins
mailing list