Added the ability to unschedule jobs to the scheduler

This commit is contained in:
Roberto Rosario
2011-07-27 01:27:16 -04:00
parent 85ed58f9bc
commit 529a9e7eca
3 changed files with 18 additions and 5 deletions

View File

@@ -1,12 +1,24 @@
from scheduler import scheduler
from scheduler.exceptions import AlreadyScheduled
registered_jobs = {}
def register_interval_job(func, weeks=0, days=0, hours=0, minutes=0,
def register_interval_job(name, title, func, weeks=0, days=0, hours=0, minutes=0,
seconds=0, start_date=None, args=None,
kwargs=None, job_name=None, **options):
scheduler.add_interval_job(func=func, weeks=weeks, days=days,
if name in registered_jobs:
raise AlreadyScheduled
job = scheduler.add_interval_job(func=func, weeks=weeks, days=days,
hours=hours, minutes=minutes, seconds=seconds,
start_date=start_date, args=args, kwargs=kwargs)#, **options)
start_date=start_date, args=args, kwargs=kwargs, **options)
registered_jobs[name] = {'title': title, 'job': job}
def remove_job(name):
if name in registered_jobs:
scheduler.unschedule_job(registered_jobs[name]['job'])