def error_message(self):
if '<STR_LIT:error>' in self._op:<EOL><INDENT>if '<STR_LIT>' in self._op['<STR_LIT>']['<STR_LIT>']:<EOL><INDENT>job_id = self._op['<STR_LIT>']['<STR_LIT>']['<STR_LIT>']<EOL><DEDENT>else:<EOL><INDENT>job_id = self._op['<STR_LIT>']['<STR_LIT>']['<STR_LIT>']<EOL><DEDENT>return '<STR_LIT>' % (job_id,<EOL>self._op['<STR_LIT:error>']['<STR_LIT:code>'],<EOL>self._op['<STR_LIT:error>']['<STR_LIT:message>'])<EOL><DEDENT>else:<EOL><INDENT>return '<STR_LIT>'<EOL><DEDENT>
Returns an error message if the operation failed for any reason.

        Failure as defined here means; ended for any reason other than 'success'.
        This means that a successful cancelation will also create an error message
        here.

        Returns:
          string, string will be empty if job did not error.