src/Entity/DiscussionMessage.php line 15

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Entity\Traits\Timestampable;
  4. use App\Repository\DiscussionMessageRepository;
  5. use Doctrine\Common\Collections\ArrayCollection;
  6. use Doctrine\Common\Collections\Collection;
  7. use Doctrine\DBAL\Types\Types;
  8. use Doctrine\ORM\Mapping as ORM;
  9. use JMS\Serializer\Annotation\Groups;
  10. #[ORM\HasLifecycleCallbacks]
  11. #[ORM\Entity(repositoryClassDiscussionMessageRepository::class)]
  12. class DiscussionMessage
  13. {
  14.     use Timestampable;
  15.     #[ORM\Id]
  16.     #[ORM\GeneratedValue]
  17.     #[ORM\Column]
  18.     #[Groups(['getDiscussion''getDiscussionMessage'])]
  19.     private ?int $id null;
  20.     #[ORM\ManyToOne(inversedBy'discussionMessages')]
  21.     #[Groups(['getDiscussion''getDiscussionMessage'])]
  22.     private ?User $messageBy null;
  23.     #[ORM\ManyToOne(inversedBy'discussionMessages')]
  24.     #[Groups(['getDiscussion''getDiscussionMessage'])]
  25.     private ?User $messageFor null;
  26.     #[ORM\Column]
  27.     #[Groups(['getDiscussion''getDiscussionMessage'])]
  28.     private ?bool $isRead null;
  29.     #[ORM\Column(typeTypes::TEXTnullabletrue)]
  30.     #[Groups(['getDiscussion''getDiscussionMessage'])]
  31.     private ?string $message null;
  32.     #[ORM\ManyToOne(inversedBy'discussionMessages')]
  33.     #[ORM\JoinColumn(nullablefalse)]
  34.     private ?Discussion $discussion null;
  35.     #[ORM\Column(length255nullabletrue)]
  36.     #[Groups(['getDiscussion''getDiscussionMessage'])]
  37.     private ?string $fileName null;
  38.     #[ORM\ManyToOne(targetEntityself::class, inversedBy'discussionMessagesReply')]
  39.     #[Groups(['getDiscussion''getDiscussionMessage'])]
  40.     private ?self $replyToMessage null;
  41.     #[ORM\OneToMany(mappedBy'replyToMessage'targetEntityself::class)]
  42.     private Collection $discussionMessagesReply;
  43.     #[ORM\Column(nullabletrue)]
  44.     #[Groups(['getDiscussion''getDiscussionMessage'])]
  45.     private ?int $size null;
  46.     #[ORM\Column(nullabletrue)]
  47.     #[Groups(['getDiscussion''getDiscussionMessage'])]
  48.     private ?int $duration null;
  49.     #[ORM\Column(length255nullabletrue)]
  50.     #[Groups(['getDiscussion''getDiscussionMessage'])]
  51.     private ?string $cachedSenderPath null;
  52.     #[ORM\Column(length255nullabletrue)]
  53.     #[Groups(['getDiscussion''getDiscussionMessage'])]
  54.     private ?string $cachedReciverPath null;
  55.     #[ORM\Column(nullabletrue)]
  56.     #[Groups(['getDiscussion''getDiscussionMessage'])]
  57.     private ?string $localId null;
  58.     #[ORM\Column(length255)]
  59.     #[Groups(['getDiscussion''getDiscussionMessage'])]
  60.     private ?string $type null;
  61.     #[ORM\Column(length255nullabletrue)]
  62.     #[Groups(['getDiscussion''getDiscussionMessage'])]
  63.     private ?string $url null;
  64.     public function __construct()
  65.     {
  66.         $this->discussionMessagesReply = new ArrayCollection();
  67.     }
  68.     public function getId(): ?int
  69.     {
  70.         return $this->id;
  71.     }
  72.     public function getMessageBy(): ?User
  73.     {
  74.         return $this->messageBy;
  75.     }
  76.     public function setMessageBy(?User $messageBy): static
  77.     {
  78.         $this->messageBy $messageBy;
  79.         return $this;
  80.     }
  81.     public function getMessageFor(): ?User
  82.     {
  83.         return $this->messageFor;
  84.     }
  85.     public function setMessageFor(?User $messageFor): static
  86.     {
  87.         $this->messageFor $messageFor;
  88.         return $this;
  89.     }
  90.     public function isIsRead(): ?bool
  91.     {
  92.         return $this->isRead;
  93.     }
  94.     public function setIsRead(bool $isRead): static
  95.     {
  96.         $this->isRead $isRead;
  97.         return $this;
  98.     }
  99.     public function getMessage(): ?string
  100.     {
  101.         return $this->message;
  102.     }
  103.     public function setMessage(?string $message): static
  104.     {
  105.         $this->message $message;
  106.         return $this;
  107.     }
  108.     public function getDiscussion(): ?Discussion
  109.     {
  110.         return $this->discussion;
  111.     }
  112.     public function setDiscussion(?Discussion $discussion): static
  113.     {
  114.         $this->discussion $discussion;
  115.         return $this;
  116.     }
  117.     public function getFileName(): ?string
  118.     {
  119.         return $this->fileName;
  120.     }
  121.     public function setFileName(?string $fileName): static
  122.     {
  123.         $this->fileName $fileName;
  124.         return $this;
  125.     }
  126.     public function getReplyToMessage(): ?self
  127.     {
  128.         return $this->replyToMessage;
  129.     }
  130.     public function setReplyToMessage(?self $replyToMessage): static
  131.     {
  132.         $this->replyToMessage $replyToMessage;
  133.         return $this;
  134.     }
  135.     /**
  136.      * @return Collection<int, self>
  137.      */
  138.     public function getDiscussionMessagesReply(): Collection
  139.     {
  140.         return $this->discussionMessagesReply;
  141.     }
  142.     public function addDiscussionMessagesReply(self $discussionMessagesReply): static
  143.     {
  144.         if (!$this->discussionMessagesReply->contains($discussionMessagesReply)) {
  145.             $this->discussionMessagesReply->add($discussionMessagesReply);
  146.             $discussionMessagesReply->setReplyToMessage($this);
  147.         }
  148.         return $this;
  149.     }
  150.     public function removeDiscussionMessagesReply(self $discussionMessagesReply): static
  151.     {
  152.         if ($this->discussionMessagesReply->removeElement($discussionMessagesReply)) {
  153.             // set the owning side to null (unless already changed)
  154.             if ($discussionMessagesReply->getReplyToMessage() === $this) {
  155.                 $discussionMessagesReply->setReplyToMessage(null);
  156.             }
  157.         }
  158.         return $this;
  159.     }
  160.     public function getSize(): ?int
  161.     {
  162.         return $this->size;
  163.     }
  164.     public function setSize(?int $size): static
  165.     {
  166.         $this->size $size;
  167.         return $this;
  168.     }
  169.     public function getDuration(): ?int
  170.     {
  171.         return $this->duration;
  172.     }
  173.     public function setDuration(?int $duration): static
  174.     {
  175.         $this->duration $duration;
  176.         return $this;
  177.     }
  178.     public function getCachedSenderPath(): ?string
  179.     {
  180.         return $this->cachedSenderPath;
  181.     }
  182.     public function setCachedSenderPath(?string $cachedSenderPath): static
  183.     {
  184.         $this->cachedSenderPath $cachedSenderPath;
  185.         return $this;
  186.     }
  187.     public function getCachedReciverPath(): ?string
  188.     {
  189.         return $this->cachedReciverPath;
  190.     }
  191.     public function setCachedReciverPath(?string $cachedReciverPath): static
  192.     {
  193.         $this->cachedReciverPath $cachedReciverPath;
  194.         return $this;
  195.     }
  196.     public function getLocalId(): ?string
  197.     {
  198.         return $this->localId;
  199.     }
  200.     public function setLocalId(?string $localId): static
  201.     {
  202.         $this->localId $localId;
  203.         return $this;
  204.     }
  205.     public function getType(): ?string
  206.     {
  207.         return $this->type;
  208.     }
  209.     public function setType(string $type): static
  210.     {
  211.         $this->type $type;
  212.         return $this;
  213.     }
  214.     public function getUrl(): ?string
  215.     {
  216.         return $this->url;
  217.     }
  218.     public function setUrl(?string $url): static
  219.     {
  220.         $this->url $url;
  221.         return $this;
  222.     }
  223. }