|
@@ -2,7 +2,11 @@
|
|
from django.http import HttpResponse, Http404
|
|
from django.http import HttpResponse, Http404
|
|
from celery.task import tasks, is_done, apply_async
|
|
from celery.task import tasks, is_done, apply_async
|
|
from celery.result import AsyncResult
|
|
from celery.result import AsyncResult
|
|
-from carrot.serialization import serialize as JSON_dump
|
|
|
|
|
|
+
|
|
|
|
+try:
|
|
|
|
+ import simplejson as json
|
|
|
|
+except ImportError:
|
|
|
|
+ from django.utils import simplejson as json
|
|
|
|
|
|
|
|
|
|
def apply(request, task_name, *args):
|
|
def apply(request, task_name, *args):
|
|
@@ -24,13 +28,13 @@ def apply(request, task_name, *args):
|
|
|
|
|
|
task = tasks[task_name]
|
|
task = tasks[task_name]
|
|
result = apply_async(task, args=args, kwargs=kwargs)
|
|
result = apply_async(task, args=args, kwargs=kwargs)
|
|
- return JSON_dump({"ok": "true", "task_id": result.task_id})
|
|
|
|
|
|
+ return json.dumps({"ok": "true", "task_id": result.task_id})
|
|
|
|
|
|
|
|
|
|
def is_task_done(request, task_id):
|
|
def is_task_done(request, task_id):
|
|
"""Returns task execute status in JSON format."""
|
|
"""Returns task execute status in JSON format."""
|
|
response_data = {"task": {"id": task_id, "executed": is_done(task_id)}}
|
|
response_data = {"task": {"id": task_id, "executed": is_done(task_id)}}
|
|
- return HttpResponse(JSON_dump(response_data), mimetype="application/json")
|
|
|
|
|
|
+ return HttpResponse(json.dumps(response_data), mimetype="application/json")
|
|
|
|
|
|
|
|
|
|
def task_status(request, task_id):
|
|
def task_status(request, task_id):
|
|
@@ -49,5 +53,5 @@ def task_status(request, task_id):
|
|
"status": status,
|
|
"status": status,
|
|
"result": async_result.result,
|
|
"result": async_result.result,
|
|
}
|
|
}
|
|
- return HttpResponse(JSON_dump({"task": response_data}),
|
|
|
|
|
|
+ return HttpResponse(json.dumps({"task": response_data}),
|
|
mimetype="application/json")
|
|
mimetype="application/json")
|