src/CasinoBundle/Entity/Game.php line 15

Open in your IDE?
  1. <?php
  2. namespace App\CasinoBundle\Entity;
  3. use Doctrine\Common\Collections\ArrayCollection;
  4. use Doctrine\Common\Collections\Collection;
  5. use Doctrine\ORM\Mapping as ORM;
  6. /**
  7.  * Game
  8.  *
  9.  * @ORM\Table(name="game")
  10.  * @ORM\Entity(repositoryClass="App\CasinoBundle\Repository\GameRepository")
  11.  * @ORM\Cache(usage="READ_ONLY", region="one_day")
  12.  */
  13. class Game
  14. {
  15.     /**
  16.      * @var int
  17.      *
  18.      * @ORM\Column(name="id", type="integer", nullable=false)
  19.      * @ORM\Id
  20.      * @ORM\GeneratedValue()
  21.      */
  22.     private $id;
  23.     /**
  24.      * @var string
  25.      *
  26.      * @ORM\Column(name="name", type="string", length=255, nullable=false)
  27.      */
  28.     private $name;
  29.     /**
  30.      * @ORM\ManyToMany(targetEntity="App\CasinoBundle\Entity\Casino", mappedBy="games", fetch="EXTRA_LAZY", cascade={"persist"})
  31.      * @ORM\JoinTable(
  32.      *     name="casino_game",
  33.      *     joinColumns={
  34.      *          @ORM\JoinColumn(name="casino_id", referencedColumnName="id")
  35.      *     },
  36.      *     inverseJoinColumns={
  37.      *          @ORM\JoinColumn(name="game_id", referencedColumnName="id")
  38.      *     }
  39.      * )
  40.      */
  41.     private $casinos;
  42.     /**
  43.      * @ORM\ManyToOne(targetEntity="App\CasinoBundle\Entity\GameType",  inversedBy="games", cascade={"persist"})
  44.      */
  45.     private $gameType;
  46.     private $casino;
  47.     public function setCasino($casino)
  48.     {
  49.         $this->casino $casino;
  50.     }
  51.     public function getCasino()
  52.     {
  53.         return $this->casino;
  54.     }
  55.     public function __construct()
  56.     {
  57.         $this->casinos = new ArrayCollection();
  58.     }
  59.     public function __toString()
  60.     {
  61.         return $this->name;
  62.     }
  63.     /**
  64.      * @return int
  65.      */
  66.     public function getId(): int
  67.     {
  68.         return $this->id;
  69.     }
  70.     /**
  71.      * @param int $id
  72.      */
  73.     public function setId(int $id): void
  74.     {
  75.         $this->id $id;
  76.     }
  77.     /**
  78.      * @return string|null
  79.      */
  80.     public function getName(): ?string
  81.     {
  82.         return $this->name;
  83.     }
  84.     /**
  85.      * @param string $name
  86.      * @return $this
  87.      */
  88.     public function setName(string $name): self
  89.     {
  90.         $this->name $name;
  91.         return $this;
  92.     }
  93.     /**
  94.      * @return Collection|Casino[]
  95.      */
  96.     public function getCasinos(): Collection
  97.     {
  98.         return $this->casinos;
  99.     }
  100.     public function addCasino(Casino $casino): self
  101.     {
  102.         if (!$this->casinos->contains($casino)) {
  103.             $this->casinos[] = $casino;
  104.             $casino->addGame($this);
  105.         }
  106.         return $this;
  107.     }
  108.     public function removeCasino(Casino $casino): self
  109.     {
  110.         if ($this->casinos->contains($casino)) {
  111.             $this->casinos->removeElement($casino);
  112.             $casino->removeGame($this);
  113.         }
  114.         return $this;
  115.     }
  116.     public function getGameType(): ?GameType
  117.     {
  118.         return $this->gameType;
  119.     }
  120.     public function setGameType(?GameType $gameType): self
  121.     {
  122.         $this->gameType $gameType;
  123.         return $this;
  124.     }
  125. }