<?php
namespace App\Entity;
use App\Repository\RadioRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass=RadioRepository::class)
*/
class Radio
{
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $streamLink;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $title;
/**
* @ORM\Column(type="boolean")
*/
private $isPublic;
/**
* @ORM\ManyToMany(targetEntity=Roles::class)
*/
private $roles;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $hasAllCriteria1;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $hasAllCriteria2;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $hasAllCriteria3;
/**
* @ORM\ManyToMany(targetEntity=Criteria1Item::class)
*/
private $criteria1Items;
/**
* @ORM\ManyToMany(targetEntity=Criteria2Item::class)
*/
private $criteria2Items;
/**
* @ORM\ManyToMany(targetEntity=Criteria3Item::class)
*/
private $criteria3Items;
public function __construct()
{
$this->roles = new ArrayCollection();
$this->criteria1Items = new ArrayCollection();
$this->criteria2Items = new ArrayCollection();
$this->criteria3Items = new ArrayCollection();
}
public function getId(): ?int
{
return $this->id;
}
public function getStreamLink(): ?string
{
return $this->streamLink;
}
public function setStreamLink(?string $streamLink): self
{
$this->streamLink = $streamLink;
return $this;
}
public function getTitle(): ?string
{
return $this->title;
}
public function setTitle(?string $title): self
{
$this->title = $title;
return $this;
}
public function getIsPublic(): ?bool
{
return $this->isPublic;
}
public function setIsPublic(bool $isPublic): self
{
$this->isPublic = $isPublic;
return $this;
}
/**
* @return Collection<int, Roles>
*/
public function getRoles(): Collection
{
return $this->roles;
}
public function addRole(Roles $role): self
{
if (!$this->roles->contains($role)) {
$this->roles[] = $role;
}
return $this;
}
public function hasAllCriteria1(): ?bool
{
return $this->hasAllCriteria1;
}
public function setHasAllCriteria1(?bool $hasAllCriteria1): self
{
$this->hasAllCriteria1 = $hasAllCriteria1;
return $this;
}
public function hasAllCriteria2(): ?bool
{
return $this->hasAllCriteria2;
}
public function setHasAllCriteria2(?bool $hasAllCriteria2): self
{
$this->hasAllCriteria2 = $hasAllCriteria2;
return $this;
}
public function hasAllCriteria3(): ?bool
{
return $this->hasAllCriteria3;
}
public function setHasAllCriteria3(?bool $hasAllCriteria3): self
{
$this->hasAllCriteria3 = $hasAllCriteria3;
return $this;
}
/**
* @return Collection<int, Criteria1Item>
*/
public function getCriteria1Items(): Collection
{
return $this->criteria1Items;
}
public function addCriteria1Item(Criteria1Item $criteria1Item): self
{
if (!$this->criteria1Items->contains($criteria1Item)) {
$this->criteria1Items[] = $criteria1Item;
}
return $this;
}
/**
* @return Collection<int, Criteria2Item>
*/
public function getCriteria2Items(): Collection
{
return $this->criteria2Items;
}
public function addCriteria2Item(Criteria2Item $criteria2Item): self
{
if (!$this->criteria2Items->contains($criteria2Item)) {
$this->criteria2Items[] = $criteria2Item;
}
return $this;
}
/**
* @return Collection<int, Criteria3Item>
*/
public function getCriteria3Items(): Collection
{
return $this->criteria3Items;
}
public function addCriteria3Item(Criteria3Item $criteria3Item): self
{
if (!$this->criteria3Items->contains($criteria3Item)) {
$this->criteria3Items[] = $criteria3Item;
}
return $this;
}
}