def queueJobInQueue(self, queue, quota_names, func, context, *args, **kwargs): """Queue a job in the specified queue.""" portal = getUtility(ISiteRoot) portal_path = portal.getPhysicalPath() context_path = context.getPhysicalPath() uf_path, user_id = _getAuthenticatedUser() job = Job(_executeAsUser, context_path, portal_path, uf_path, user_id, func, *args, **kwargs) if quota_names: job.quota_names = quota_names job = queue.put(job) job.addCallbacks(success=job_success_callback, failure=job_failure_callback) return job
def queueJobInQueue(self, queue, quota_names, func, context, *args, **kwargs): portal = getUtility(ISiteRoot) portal_path = portal.getPhysicalPath() pm = getToolByName(portal, 'portal_membership') user = pm.getAuthenticatedMember() user_id = user.getId() uf_path = user.aq_parent.aq_parent.getPhysicalPath() context_path = context.getPhysicalPath() job = Job(_executeAsUser, portal_path, context_path, user_id, uf_path, func, *args, **kwargs) if quota_names: job.quota_names = quota_names job = queue.put(job) job.addCallbacks(success=job_success_callback, failure=job_failure_callback) return job
def _queueJobsInQueue(self, queue, quota_names, job_infos, serialize=True): """Queue multiple jobs in the specified queue.""" portal = getUtility(ISiteRoot) portal_path = portal.getPhysicalPath() uf_path, user_id = _getAuthenticatedUser() scheduled = [] for (func, context, args, kwargs) in job_infos: context_path = context.getPhysicalPath() job = Job(_executeAsUser, context_path, portal_path, uf_path, user_id, func, *args, **kwargs) scheduled.append(job) if serialize: job = serial(*scheduled) else: job = parallel(*scheduled) if quota_names: job.quota_names = quota_names job = queue.put(job) job.addCallbacks(success=job_success_callback, failure=job_failure_callback) return job
def _queueJobsInQueue(self, queue, quota_names, job_infos, serialize=True): portal = getUtility(ISiteRoot) portal_path = portal.getPhysicalPath() pm = getToolByName(portal, 'portal_membership') user = pm.getAuthenticatedMember() user_id = user.getId() uf_path = user.aq_parent.aq_parent.getPhysicalPath() scheduled = [] for (func, context, args, kwargs) in job_infos: context_path = context.getPhysicalPath() job = Job(_executeAsUser, portal_path, context_path, user_id, uf_path, func, *args, **kwargs) scheduled.append(job) if serialize: job = serial(*scheduled) else: job = parallel(*scheduled) if quota_names: job.quota_names = quota_names job = queue.put(job) job.addCallbacks(success=job_success_callback, failure=job_failure_callback) return job