provider = $provider; } /** * @param RecordReference[] $references * @return RecordTechnicalDataSet[] */ public function fetchRecordsTechnicalData($references) { if (!$references instanceof RecordReferenceCollection) { $references = new RecordReferenceCollection($references); } $sets = []; foreach ($references->groupPerDataboxId() as $databoxId => $indexes) { foreach ($this->provider->getRepositoryFor($databoxId)->findByRecordIds(array_keys($indexes)) as $set) { $index = $indexes[$set->getRecordId()]; $sets[$index] = $set; } } ksort($sets); return $sets; } }