--- a/src/catedit/views/utils.py Fri Apr 10 17:30:19 2015 +0200
+++ b/src/catedit/views/utils.py Tue Apr 14 12:31:07 2015 +0200
@@ -1,5 +1,5 @@
#!/usr/bin/env python
-# -*- coding: utf-8 -*-
+# -*- coding: utf-8 -*-
"""
utils.py:
Module that groups utility functions and classes that are used by views,
@@ -7,7 +7,7 @@
be cached
"""
-from catedit import app, github, cache, log_api_rate, save_links
+from catedit import app, github, cache, log_api_rate, save_links, celery
from catedit.models import Category
from catedit.resources import CategoryAPI, CategoryChangesAPI
from flask import redirect, url_for, session
@@ -572,3 +572,21 @@
}
)
return cat_list
+
+
+def get_tasks_status(task_ids_list, delete_task_from_session, repository) :
+ logger.debug("get_tasks_status : %r " % task_ids_list)
+ res = { 'states' : {} }
+ running_tasks_nb = 0
+ for task_id in task_ids_list:
+ a_res = celery.AsyncResult(task_id)
+ res['states'][task_id] = a_res.state
+ if a_res.ready():
+ a_res.forget()
+ if delete_task_from_session:
+ session.get('tasks',{}).get(repository, []).remove(task_id)
+ else:
+ running_tasks_nb += 1
+ res['running_tasks_nb'] = running_tasks_nb
+
+ return res