src/Entity/Taxonomy.php line 13

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\TaxonomyRepository;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. /**
  8. * @ORM\Entity(repositoryClass=TaxonomyRepository::class)
  9. */
  10. class Taxonomy extends BaseEntity
  11. {
  12. /**
  13. * @ORM\Id
  14. * @ORM\GeneratedValue
  15. * @ORM\Column(type="integer")
  16. */
  17. private $id;
  18. /**
  19. * @ORM\Column(type="string", length=255)
  20. */
  21. private $name;
  22. /**
  23. * @ORM\ManyToMany(targetEntity=Module::class, mappedBy="taxonomies")
  24. */
  25. private $modules;
  26. public function __construct()
  27. {
  28. $this->modules = new ArrayCollection();
  29. }
  30. public function getId(): ?int
  31. {
  32. return $this->id;
  33. }
  34. public function getName(): ?string
  35. {
  36. return $this->name;
  37. }
  38. public function setName(string $name): self
  39. {
  40. $this->name = $name;
  41. return $this;
  42. }
  43. /**
  44. * @return Collection<int, Module>
  45. */
  46. public function getModules(): Collection
  47. {
  48. return $this->modules;
  49. }
  50. public function addModule(Module $module): self
  51. {
  52. if (!$this->modules->contains($module)) {
  53. $this->modules[] = $module;
  54. $module->addTaxonomy($this);
  55. }
  56. return $this;
  57. }
  58. public function removeModule(Module $module): self
  59. {
  60. if ($this->modules->removeElement($module)) {
  61. $module->removeTaxonomy($this);
  62. }
  63. return $this;
  64. }
  65. }