meilisearch->isSupported()) { return; } match (true) { $message instanceof AddMediaMessage => $this->addMedia($message), $message instanceof UpdatePlaylistsMessage => $this->updatePlaylists($message), default => null, }; } private function addMedia(AddMediaMessage $message): void { $storageLocation = $this->storageLocationRepo->find($message->storage_location_id); if (!($storageLocation instanceof StorageLocation)) { return; } $index = $this->meilisearch->getIndex($storageLocation); $index->refreshMedia( $message->media_ids, $message->include_playlists ); } private function updatePlaylists(UpdatePlaylistsMessage $message): void { $station = $this->stationRepo->find($message->station_id); if (!($station instanceof Station)) { return; } $storageLocation = $station->getMediaStorageLocation(); $index = $this->meilisearch->getIndex($storageLocation); $index->refreshPlaylists($station, $message->media_ids); } }