category; } public function getDate(): ?\DateTimeInterface { return $this->date; } public function getDescription(): string { return $this->description; } public function getObject(): ?StoredObject { return $this->object; } public function getTemplate(): ?DocGeneratorTemplate { return $this->template; } #[Assert\Length(min: 2, max: 250)] public function getTitle(): string { return (string) $this->getObject()?->getTitle(); } public function getUser() { return $this->user; } public function setCategory(DocumentCategory $category): self { $this->category = $category; return $this; } public function setDate(\DateTimeInterface $date): self { $this->date = $date; return $this; } public function setDescription($description): self { $this->description = (string) $description; return $this; } public function setObject(?StoredObject $object = null) { $this->object = $object; if ('' !== $this->proxyTitle) { $this->object->setTitle($this->proxyTitle); } return $this; } public function setTemplate(?DocGeneratorTemplate $template): self { $this->template = $template; return $this; } public function setTitle(string $title): self { if (null !== $this->getObject()) { $this->getObject()->setTitle($title); } else { $this->proxyTitle = $title; } return $this; } public function setUser(?\Chill\MainBundle\Entity\User $user): self { $this->user = $user; return $this; } }