'Check if the process launched to process this file is done.
:return: whether the process is finished running
:rtype: bool'

@property
def done(self):

    if (self._process is None):
        raise AirflowException(u"Tried    to    see    if    it's    done    before    starting!")
    if self._done:
        return True
    if (not self._result_queue.empty()):
        self._result = self._result_queue.get_nowait()
        self._done = True
        logging.debug(u'Waiting    for    %s', self._process)
        self._process.join()
        return True
    if (not self._process.is_alive()):
        self._done = True
        if (not self._result_queue.empty()):
            self._result = self._result_queue.get_nowait()
        logging.debug(u'Waiting    for    %s', self._process)
        self._process.join()
        return True
    return False
