/** * @param LetterGuessedCorrectly $event */ public function applyLetterGuessedCorrectly(LetterGuessedCorrectly $event) { $readModel = $this->repository->findBy(["gameId" => $event->getGameId()]); Assertion::notNull($readModel, "Readmodel doesn't hold an object"); $lastResult = end($readModel); $readModel = $lastResult->setLetterCorrectlyGuessed($event->getLetters()); $this->repository->save($readModel); }
/** * @param LetterGuessedCorrectly $event */ public function applyLetterGuessedCorrectly(LetterGuessedCorrectly $event) { $readModel = new LetterChosen(); $readModel->setGameId($event->getGameId()); $readModel->setLetter($event->getLetters()); $readModel->setCorrectGuessed(true); $this->repository->save($readModel); }
/** * @param LetterGuessedCorrectly $event */ public function applyLetterGuessedCorrectly(LetterGuessedCorrectly $event) { $lettersAndPosition = $this->word->getLocationsAndLettersOfContainer($event->getLetters()); // add the letters to the container foreach ($lettersAndPosition as $pos => $val) { $this->lettersCorrectlyGuessed->addLetterWithKeyToContainer($pos, $val); } }