<?php 
 
namespace App\Entity; 
 
use App\Repository\SyncQueueRepository; 
use Doctrine\ORM\Mapping as ORM; 
 
#[ORM\Entity(repositoryClass: SyncQueueRepository::class)] 
#[ORM\Table(name: 'sync_queue')] 
class SyncQueue 
{ 
    #[ORM\Id] 
    #[ORM\GeneratedValue] 
    #[ORM\Column] 
    private ?int $id = null; 
 
    #[ORM\Column(length: 50)] 
    private ?string $entityType = null; 
 
    #[ORM\Column] 
    private ?int $entityId = null; 
 
    #[ORM\Column(length: 10)] 
    private ?string $action = null; 
 
    #[ORM\Column] 
    private ?\DateTimeImmutable $createdAt = null; 
 
    #[ORM\Column] 
    private ?bool $processed = false; 
 
    public function getId(): ?int 
    { 
        return $this->id; 
    } 
 
    public function getEntityType(): ?string 
    { 
        return $this->entityType; 
    } 
 
    public function setEntityType(string $entityType): self 
    { 
        $this->entityType = $entityType; 
 
        return $this; 
    } 
 
    public function getEntityId(): ?int 
    { 
        return $this->entityId; 
    } 
 
    public function setEntityId(int $entityId): self 
    { 
        $this->entityId = $entityId; 
 
        return $this; 
    } 
 
    public function getAction(): ?string 
    { 
        return $this->action; 
    } 
 
    public function setAction(string $action): self 
    { 
        $this->action = $action; 
 
        return $this; 
    } 
 
    public function getCreatedAt(): ?\DateTimeImmutable 
    { 
        return $this->createdAt; 
    } 
 
    public function setCreatedAt(\DateTimeImmutable $createdAt): self 
    { 
        $this->createdAt = $createdAt; 
 
        return $this; 
    } 
 
    public function isProcessed(): ?bool 
    { 
        return $this->processed; 
    } 
 
    public function setProcessed(bool $processed): self 
    { 
        $this->processed = $processed; 
 
        return $this; 
    } 
}