*/ class ContingentSyncStateRepository extends ServiceEntityRepository { public function __construct(ManagerRegistry $registry) { parent::__construct($registry, ContingentSyncState::class); } public function findOneByAccommodation(Accommodation $accommodation): ?ContingentSyncState { return $this->findOneBy(['accommodation' => $accommodation]); } /** * Returns every sync state keyed by accommodation id, for the revisions endpoint. * * @return array */ public function findAllIndexedByAccommodationId(): array { $indexed = []; foreach ($this->findAll() as $state) { $accommodation = $state->getAccommodation(); if (null === $accommodation || null === $accommodation->getId()) { continue; } $indexed[$accommodation->getId()] = $state; } return $indexed; } }