src/Entity/Sync/SyncableResource.php line 20

Open in your IDE?
  1. <?php
  2. namespace App\Entity\Sync;
  3. use App\Repository\Sync\SyncableResourceRepository;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. use DrosalysWeb\ObjectExtensions\Timestamp\Model\TimestampInterface;
  8. use DrosalysWeb\ObjectExtensions\Timestamp\Model\TimestampTrait;
  9. #[
  10.     ORM\Entity(repositoryClassSyncableResourceRepository::class),
  11.     ORM\UniqueConstraint(fields: ['resourceType''resourceId']),
  12.     ORM\Index(fields: ['resourceType']),
  13.     ORM\Index(fields: ['resourceId']),
  14.     ORM\Index(fields: ['label']),
  15.     ORM\Table(name'syncable_resource')
  16. ]
  17. class SyncableResource implements TimestampInterface
  18. {
  19.     use TimestampTrait;
  20.     #[ORM\IdORM\GeneratedValueORM\Column(type'integer')]
  21.     private ?int $id null;
  22.     #[ORM\Column(type'string'length255nullablefalse)]
  23.     private ?string $resourceType null;
  24.     #[ORM\Column(type'string'length255nullablefalse)]
  25.     private ?string $resourceId null;
  26.     #[ORM\Column(type'string'length255nullablefalse)]
  27.     private ?string $label null;
  28.     #[ORM\Column(type'datetime'nullabletrue)]
  29.     private ?\DateTime $deletedAt null;
  30.     #[ORM\Column(type'datetime'nullabletrue)]
  31.     private ?\DateTime $lastSyncRequestedAt null;
  32.     #[ORM\OneToMany(mappedBy'syncableResource'targetEntitySyncableResourceAppState::class, cascade: ['persist''remove'], orphanRemovaltrue)]
  33.     private Collection $syncableResourceAppStates;
  34.     public function __construct() {
  35.         $this->syncableResourceAppStates = new ArrayCollection();
  36.     }
  37.     public function getId(): ?int
  38.     {
  39.         return $this->id;
  40.     }
  41.     public function getResourceType(): ?string
  42.     {
  43.         return $this->resourceType;
  44.     }
  45.     public function setResourceType(?string $resourceType): SyncableResource
  46.     {
  47.         $this->resourceType $resourceType;
  48.         return $this;
  49.     }
  50.     public function getResourceId(): ?string
  51.     {
  52.         return $this->resourceId;
  53.     }
  54.     public function setResourceId(string|int|null $resourceId): SyncableResource
  55.     {
  56.         $this->resourceId = (string) $resourceId;
  57.         return $this;
  58.     }
  59.     public function getLabel(): ?string
  60.     {
  61.         return $this->label;
  62.     }
  63.     public function setLabel(?string $label): SyncableResource
  64.     {
  65.         $this->label substr($label0255);
  66.         return $this;
  67.     }
  68.     public function getDeletedAt(): ?\DateTime
  69.     {
  70.         return $this->deletedAt;
  71.     }
  72.     public function setDeletedAt(?\DateTime $deletedAt): SyncableResource
  73.     {
  74.         $this->deletedAt $deletedAt;
  75.         return $this;
  76.     }
  77.     public function getLastSyncRequestedAt(): ?\DateTime
  78.     {
  79.         return $this->lastSyncRequestedAt;
  80.     }
  81.     public function setLastSyncRequestedAt(?\DateTime $lastSyncRequestedAt): SyncableResource
  82.     {
  83.         $this->lastSyncRequestedAt $lastSyncRequestedAt;
  84.         return $this;
  85.     }
  86.     public function getSyncableResourceAppStates(): Collection
  87.     {
  88.         return $this->syncableResourceAppStates;
  89.     }
  90.     public function setSyncableResourceAppStates(Collection $syncableResourceAppStates): SyncableResource
  91.     {
  92.         $this->syncableResourceAppStates $syncableResourceAppStates;
  93.         return $this;
  94.     }
  95. }