@classmethod
def fetch_many(cls, job_ids, connection):
    """
        Bulk version of Job.fetch

        For any job_ids which a job does not exist, the corresponding item in
        the returned list will be None.
        """
    with connection.pipeline() as pipeline:
        for job_id in job_ids:
            pipeline.hgetall(cls.key_for(job_id))
        results = pipeline.execute()
    jobs = []
    for i, job_id in enumerate(job_ids):
        if results[i]:
            job = cls(job_id, connection=connection)
            job.restore(results[i])
            jobs.append(job)
        else:
            jobs.append(None)
    return jobs
