'Decide if the asynchronous job has ended.
:type  response: :class:`xml.etree.ElementTree`
:param response: Response object returned by poll request
:rtype:          ``bool``
:return:         Whether the job has completed'

def has_completed(self, response):

    task = response.object
    task_state = task.findtext('state')
    return (task_state in ['FINISHED_SUCCESSFULLY', 'ABORTED', 'FINISHED_UNSUCCESSFULLY'])
