def enqueue(id, text): if not in_queue(id): j = Job() j.status, j.tweet_id = -1, id db.session.add(j) db.session.commit() f = open(unknown_command_path, 'a') f.write('%s\n' % text.encode('utf-8')) f.close() return j else: return db.session.query(Job).filter( Job.status == -1, Job.tweet_id == id).one()
def enqueue(action, tweet_id, username): summary = human2machine(action) if summary: action, action_type, obj, repeated = summary user = db.session.query(User).filter(User.name == username).one() job = Job() job.action = action job.obj = obj job.tweet_id = tweet_id job.type = action_type job.status = 0 job.repeated = repeated job.added_time = datetime.utcnow() db.session.add(job) job.user = user logger.debug(user.name) db.session.commit() return job else: return None
def enqueue_job(func, *args, description=None, course_id=None, user_id=None, timeout=300, result_kind='string', **kwargs): if not description: raise ValueError('Description required to start background job') if not course_id: raise ValueError('Course ID required to start background job') if not user_id: user_id = current_user.id job = Job(status='queued', course_id=course_id, user_id=user_id, name=func.__name__, description=description, result_kind=result_kind) db.session.add(job) db.session.commit() try: get_queue().enqueue_call(func=func, args=args, kwargs=kwargs, job_id=str(job.id), timeout=timeout) except redis.exceptions.ConnectionError as e: job.failed = True job.status = 'finished' job.log = 'Could not connect to Redis: ' + str(e) db.session.add(job) db.session.commit() return job
def enqueue_job(func, *args, description=None, course_id=None, user_id=None, timeout=300, result_kind='string', **kwargs): if not description: raise ValueError('Description required to start background job') if not course_id: raise ValueError('Course ID required to start background job') if not user_id: user_id = current_user.id job = Job( status='queued', course_id=course_id, user_id=user_id, name=func.__name__, description=description, result_kind=result_kind ) db.session.add(job) db.session.commit() try: get_queue().enqueue_call( func=func, args=args, kwargs=kwargs, job_id=str(job.id), timeout=timeout ) except redis.exceptions.ConnectionError as e: job.failed = True job.status = 'finished' job.log = 'Could not connect to Redis: ' + str(e) db.session.add(job) db.session.commit() return job