code: def create_downloadjob(entry, domain, config):
      
      logging.info('Checking record %r', entry['assembly_accession'])
      full_output_dir = create_dir(entry, config.section, domain, config.output)
  
      symlink_path = None
      if config.human_readable:
          symlink_path = create_readable_dir(entry, config.section, domain, config.output)
  
      checksums = grab_checksums_file(entry)
  
      # TODO: Only write this when the checksums file changed
      with open(os.path.join(full_output_dir, 'MD5SUMS'), 'w') as handle:
          handle.write(checksums)
  
      parsed_checksums = parse_checksums(checksums)
  
      download_jobs = []
      for fmt in config.file_format:
          try:
              if has_file_changed(full_output_dir, parsed_checksums, fmt):
                  download_jobs.append(
                      download_file_job(entry, full_output_dir, parsed_checksums, fmt, symlink_path))
              elif need_to_create_symlink(full_output_dir, parsed_checksums, fmt, symlink_path):
                  download_jobs.append(
                      create_symlink_job(full_output_dir, parsed_checksums, fmt, symlink_path))
          except ValueError as err:
              logging.error(err)
  
      return download_jobs
docs: Create download jobs for all file formats from a summary file entry.