Search jobs: spike out some search combinator jobs
Created by: camdencheek
Now that jobs are statically defined within the scope of a basic query, we can make combinator jobs that control the runtime behavior of a set of jobs.
This creates two new combinator jobs; JobWithOptional
and ParallelJob
.
JobWithOptional
now encapsulates our logic for optional and required searches, allowing us to remove the Required
method from the Job
interface.
ParallelJob
encapsulates the process of running a set of jobs in parallel.