pdm = new PersistentDataManager(); } public function getByUser(User $user): Generator { $select = new Select(\Container::$dbConnection); $select->where('user_id', '=', $user->getId()); yield from $this->pdm->selectMultipleFromDb($select, UserPlayedPlace::class); } public function getAllByPlace(Place $place): Generator { $select = new Select(\Container::$dbConnection); $select->where('place_id', '=', $place->getId()); yield from $this->pdm->selectMultipleFromDb($select, UserPlayedPlace::class); } public function getAllByUser(User $user) : Generator { $select = new Select(\Container::$dbConnection); $select->where('user_id', '=', $user->getId()); yield from $this->pdm->selectMultipleFromDb($select, UserPlayedPlace::class, true); } public function getByUserIdAndPlaceId(int $userId, int $placeId) : ?UserPlayedPlace { $select = new Select(\Container::$dbConnection); $select->where('user_id', '=', $userId); $select->where('place_id', '=', $placeId); return $this->pdm->selectFromDb($select, UserPlayedPlace::class); } }