def post_schedule_job(scheduler, handler_name, **kwargs): try: # Translate 'kwargs' in POST to handler key-value arguments passing, if needed kwargs.update(kwargs.pop('kwargs', {})) job = Scheduler.schedule_job(scheduler, handler_name, **kwargs) return {"job": job2raw_dict(job)}, 201 except ScheduleJobError as exc: return {"error": str(exc)}, 401
def get_jobs(scheduler, job_type=None): jobs = scheduler.get_jobs() job_types = ('all', 'failed', 'user', None) if job_type not in job_types: return {"error": "Unknown job type filtering supplied: '%s', should be one of %s" % (job_type, job_types)}, 401 job_list = [] job_type = job_type or 'all' for job in jobs: if job_type == 'failed' and is_failed_job(job): job_list.append(job2raw_dict(job)) if job_type == 'user' and not is_failed_job(job): job_list.append(job2raw_dict(job)) if job_type == 'all': job_list.append(job2raw_dict(job)) return {"jobs": job_list, "jobs_count": len(job_list)}, 200
def post_schedule_job(scheduler, handler_name, **kwargs): # No need to add @requires_auth for this one, assuming handler specific POST endpoints take care of it try: # Translate 'kwargs' in POST to handler key-value arguments passing, if needed kwargs.update(kwargs.pop('kwargs', {})) job = Scheduler.schedule_job(scheduler, handler_name, **kwargs) return {"job": job2raw_dict(job)}, 201 except ScheduleJobError as exc: return {"error": str(exc)}, 401