<?phpnamespace App\Entity;use Doctrine\ORM\Mapping as ORM;/** * @ORM\Entity(repositoryClass="App\Repository\AdditionalLanguageRepository") */class AdditionalLanguage implements \JsonSerializable{ /** * @ORM\Id() * @ORM\GeneratedValue() * @ORM\Column(type="integer") */ private $id; /** * @ORM\ManyToOne(targetEntity="App\Entity\Language") */ private $language; /** * @ORM\ManyToOne(targetEntity="App\Entity\LanguageLevel") */ private $level; /** * @ORM\ManyToOne(targetEntity="App\Entity\Candidate", inversedBy="additionalLanguages") */ private $candidate; public function getId(): ?int { return $this->id; } public function getLanguage(): ?Language { return $this->language; } public function setLanguage(?Language $language): self { $this->language = $language; return $this; } public function getLevel(): ?LanguageLevel { return $this->level; } public function setLevel(?LanguageLevel $level): self { $this->level = $level; return $this; } /** * @return Candidate */ public function getCandidate(): ?Candidate { return $this->candidate; } /** * @param Candidate $candidate * * @return self */ public function setCandidate(Candidate $candidate): self { $this->candidate = $candidate; return $this; } public function __toString() { return (string) $this->getLanguage(); } /** * Specify data which should be serialized to JSON * * @link https://php.net/manual/en/jsonserializable.jsonserialize.php * @return mixed data which can be serialized by <b>json_encode</b>, * which is a value of any type other than a resource. * @since 5.4.0 */ public function jsonSerialize() { return [ 'id' => $this->getId(), 'language' => $this->getLanguage(), 'level' => $this->getLevel() ]; }}