Parse the contents of the output files retrieved in the `FolderData`.

def parse(self, **kwargs):
        """Parse the contents of the output files retrieved in the `FolderData`."""
        try:
            output_folder = self.retrieved
        except exceptions.NotExistent:
            return self.exit_codes.ERROR_NO_RETRIEVED_FOLDER

        filename_stdout = self.node.get_attribute('output_filename')
        filename_stderr = self.node.get_attribute('error_filename')

        try:
            with output_folder.open(filename_stderr, 'r') as handle:
                exit_code = self.parse_stderr(handle)
        except (OSError, IOError):
            self.logger.exception('Failed to read the stderr file\n%s', traceback.format_exc())
            return self.exit_codes.ERROR_READING_ERROR_FILE

        if exit_code:
            return exit_code

        try:
            with output_folder.open(filename_stdout, 'r') as handle:
                handle.seek(0)
                exit_code = self.parse_stdout(handle)
        except (OSError, IOError):
            self.logger.exception('Failed to read the stdout file\n%s', traceback.format_exc())
            return self.exit_codes.ERROR_READING_OUTPUT_FILE

        if exit_code:
            return exit_code