/**
  * @param array $criteria
  * @return Job[]
  * @throws \Keboola\StorageApi\Exception
  */
 public function findJobs(array $criteria, $offset = 0, $limit = JobManager::PAGING)
 {
     $exportOptions = $this->buildExportOptions($criteria);
     $data = $this->syrupJobSearch->getJobs(array('projectId' => $this->token->getProjectId(), 'component' => KeboolaOrchestratorBundle::SYRUP_COMPONENT_NAME, 'offset' => $offset, 'limit' => $limit, 'query' => $exportOptions));
     $manager = $this;
     return array_map(function ($line) use($manager) {
         $esJob = new Elasticsearch\Job($this->objectEncryptor, $line, $line['_index'], $line['_type']);
         $job = new Job();
         $job->build($esJob);
         $job->setUrl($manager->generateJobUri($job));
         $job->setToken($this->decryptToken($job->getToken()));
         return $job;
     }, $data);
 }