public function locate(Map $map, Ship $ship) { if (!$this->shipCanBeLocated->itSatisfiedBy($map)) { throw new RuntimeException(); } $this->mapRepository->save($map); $this->shipRepository->save($ship); }