feat: add IANA fields for accredited registrars

This commit is contained in:
Maël Gangloff
2025-09-10 21:35:43 +02:00
parent f9ae2ac5e1
commit 28fb5f2fc3
6 changed files with 207 additions and 18 deletions

View File

@@ -4,9 +4,11 @@ namespace App\Entity;
use ApiPlatform\Metadata\ApiResource;
use ApiPlatform\Metadata\Get;
use App\Config\RegistrarStatus;
use App\Repository\EntityRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\DBAL\Types\Types;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Serializer\Attribute\Groups;
use Symfony\Component\Serializer\Attribute\SerializedName;
@@ -86,6 +88,25 @@ class Entity
#[Groups(['entity:item', 'domain:item'])]
private ?array $remarks = null;
#[ORM\Column(length: 255, nullable: true)]
#[Groups(['entity:item', 'domain:item'])]
private ?string $registrarNameIANA = null;
#[ORM\Column(length: 255, nullable: true)]
#[Groups(['entity:item', 'domain:item'])]
private ?string $rdapBaseUrlIANA = null;
#[ORM\Column(nullable: true, enumType: RegistrarStatus::class)]
#[Groups(['entity:item', 'domain:item'])]
private ?RegistrarStatus $statusIANA = null;
#[ORM\Column(type: Types::DATE_IMMUTABLE, nullable: true)]
private ?\DateTimeImmutable $updatedIANA = null;
#[ORM\Column(type: Types::DATE_IMMUTABLE, nullable: true)]
private ?\DateTimeImmutable $dateIANA = null;
public function __construct()
{
$this->domainEntities = new ArrayCollection();
@@ -242,4 +263,64 @@ class Entity
return $this;
}
public function getRegistrarNameIANA(): ?string
{
return $this->registrarNameIANA;
}
public function setRegistrarNameIANA(?string $registrarNameIANA): static
{
$this->registrarNameIANA = $registrarNameIANA;
return $this;
}
public function getRdapBaseUrlIANA(): ?string
{
return $this->rdapBaseUrlIANA;
}
public function setRdapBaseUrlIANA(?string $rdapBaseUrlIANA): static
{
$this->rdapBaseUrlIANA = $rdapBaseUrlIANA;
return $this;
}
public function getStatusIANA(): ?RegistrarStatus
{
return $this->statusIANA;
}
public function setStatusIANA(?RegistrarStatus $statusIANA): static
{
$this->statusIANA = $statusIANA;
return $this;
}
public function getUpdatedIANA(): ?\DateTimeImmutable
{
return $this->updatedIANA;
}
public function setUpdatedIANA(?\DateTimeImmutable $updatedIANA): static
{
$this->updatedIANA = $updatedIANA;
return $this;
}
public function getDateIANA(): ?\DateTimeImmutable
{
return $this->dateIANA;
}
public function setDateIANA(?\DateTimeImmutable $dateIANA): static
{
$this->dateIANA = $dateIANA;
return $this;
}
}