atomresponder/signals.py (3 lines of code) (raw):

# from celery.signals import task_failure,task_success,task_revoked import logging from django.dispatch import receiver logger = logging.getLogger(__name__) # @receiver(task_success, sender=update_pacdata) # def edl_import_success(signal=None,result=None,sender=None,**kwargs): # #sender is of type Task # from .models import PacFormXml # taskid = sender.request.id # logger.info("update edl data task {0} ({1}) completed with {2}".format(taskid, sender.name, result)) # # try: # pac_xml_task = PacFormXml.objects.get(celery_task_id=taskid) # pac_xml_task.status = "PROCESSED" # pac_xml_task.last_error = "" # pac_xml_task.save() # logger.info("Updated pac form xml information") # except PacFormXml.DoesNotExist: # logger.warning("PAC form import completed on something not imported from atom tool") # except Exception as e: # logger.exception(str(e)) # # # @receiver(task_failure, sender=update_pacdata) # def edl_import_failure(task_id=None,exception=None, traceback=None, sender=None, **kwargs): # logger.info("edl_import_failure: {0}".format(kwargs)) # logger.warning("update edl data task {0} ({2}) failed with {1}".format(task_id, str(exception), sender.name)) # from .models import PacFormXml # # try: # pac_xml_task = PacFormXml.objects.get(celery_task_id=task_id) # pac_xml_task.status = "ERROR" # pac_xml_task.last_error = traceback.format_exc() # pac_xml_task.save() # logger.info("Updated pac form xml information for failed task") # except PacFormXml.DoesNotExist: # logger.warning("PAC form import failed on something not imported from atom tool") # except Exception as e: # logger.exception(str(e)) # # # @task_revoked.connect()#(sender='portal.plugins.gnm_masters.edl_import.update_edl_data') # def edl_import_revoked(request=None, signum=None, terminated=None, expired=None, sender=None, **kwargs): # from .models import PacFormXml # taskid = sender.request.id # # logger.warning("PAC form import task {0} revoked".format(taskid)) # if taskid is None: # return #can't do anything if we have not had a task id passed # try: # pac_xml_task = PacFormXml.objects.get(celery_task_id=taskid) # pac_xml_task.status = "ERROR" # pac_xml_task.last_error = """Task revoked on signal number {0}\nTerminated? {1}\nExpired? {2}""".format(signum, terminated, expired) # pac_xml_task.save() # logger.info("Updated pac form xml information for revoked task") # except PacFormXml.DoesNotExist: # logger.warning("PAC form import revoked on something not imported from atom tool") # except Exception as e: # logger.exception(str(e)) # # def setup_signals(): # """ # called from models.py during intialisation to register our vs_project_saved signal handler. # :return: # """ # if not 'CI' in os.environ: # from portal.plugins.gnm_projects.signals import post_create_project, post_project_updated # post_create_project.connect(handle_project_created, dispatch_uid='media-atom-notify-project-created') # post_project_updated.connect(handle_project_updated, dispatch_uid='media-atom-notify-project-updated')