mirror of
https://github.com/maelgangloff/domain-watchdog.git
synced 2025-12-29 16:15:04 +00:00
refactor: add DTO class to validate schema
This commit is contained in:
19
src/Dto/Connector/AutodnsProviderDto.php
Normal file
19
src/Dto/Connector/AutodnsProviderDto.php
Normal file
@@ -0,0 +1,19 @@
|
||||
<?php
|
||||
|
||||
namespace App\Dto\Connector;
|
||||
|
||||
use Symfony\Component\Validator\Constraints as Assert;
|
||||
|
||||
final class AutodnsProviderDto extends DefaultProviderDto
|
||||
{
|
||||
#[Assert\NotBlank]
|
||||
public string $username;
|
||||
|
||||
#[Assert\NotBlank]
|
||||
public string $password;
|
||||
|
||||
#[Assert\IsTrue]
|
||||
public bool $ownerConfirm;
|
||||
|
||||
public int $context = 4;
|
||||
}
|
||||
17
src/Dto/Connector/DefaultProviderDto.php
Normal file
17
src/Dto/Connector/DefaultProviderDto.php
Normal file
@@ -0,0 +1,17 @@
|
||||
<?php
|
||||
|
||||
namespace App\Dto\Connector;
|
||||
|
||||
use Symfony\Component\Validator\Constraints as Assert;
|
||||
|
||||
class DefaultProviderDto
|
||||
{
|
||||
#[Assert\IsTrue]
|
||||
public bool $ownerLegalAge;
|
||||
|
||||
#[Assert\IsTrue]
|
||||
public bool $acceptConditions;
|
||||
|
||||
#[Assert\IsTrue]
|
||||
public bool $waiveRetractationPeriod;
|
||||
}
|
||||
13
src/Dto/Connector/GandiProviderDto.php
Normal file
13
src/Dto/Connector/GandiProviderDto.php
Normal file
@@ -0,0 +1,13 @@
|
||||
<?php
|
||||
|
||||
namespace App\Dto\Connector;
|
||||
|
||||
use Symfony\Component\Validator\Constraints as Assert;
|
||||
|
||||
final class GandiProviderDto extends DefaultProviderDto
|
||||
{
|
||||
#[Assert\NotBlank]
|
||||
public string $token;
|
||||
|
||||
public ?string $sharingId = null;
|
||||
}
|
||||
14
src/Dto/Connector/NameComProviderDto.php
Normal file
14
src/Dto/Connector/NameComProviderDto.php
Normal file
@@ -0,0 +1,14 @@
|
||||
<?php
|
||||
|
||||
namespace App\Dto\Connector;
|
||||
|
||||
use Symfony\Component\Validator\Constraints as Assert;
|
||||
|
||||
final class NameComProviderDto extends DefaultProviderDto
|
||||
{
|
||||
#[Assert\NotBlank]
|
||||
public string $username;
|
||||
|
||||
#[Assert\NotBlank]
|
||||
public string $token;
|
||||
}
|
||||
14
src/Dto/Connector/NamecheapProviderDto.php
Normal file
14
src/Dto/Connector/NamecheapProviderDto.php
Normal file
@@ -0,0 +1,14 @@
|
||||
<?php
|
||||
|
||||
namespace App\Dto\Connector;
|
||||
|
||||
use Symfony\Component\Validator\Constraints as Assert;
|
||||
|
||||
final class NamecheapProviderDto extends DefaultProviderDto
|
||||
{
|
||||
#[Assert\NotBlank]
|
||||
public string $ApiUser;
|
||||
|
||||
#[Assert\NotBlank]
|
||||
public string $ApiKey;
|
||||
}
|
||||
26
src/Dto/Connector/OvhProviderDto.php
Normal file
26
src/Dto/Connector/OvhProviderDto.php
Normal file
@@ -0,0 +1,26 @@
|
||||
<?php
|
||||
|
||||
namespace App\Dto\Connector;
|
||||
|
||||
use Symfony\Component\Validator\Constraints as Assert;
|
||||
|
||||
final class OvhProviderDto extends DefaultProviderDto
|
||||
{
|
||||
#[Assert\NotBlank]
|
||||
public string $appKey;
|
||||
|
||||
#[Assert\NotBlank]
|
||||
public string $appSecret;
|
||||
|
||||
#[Assert\NotBlank]
|
||||
public string $apiEndpoint;
|
||||
|
||||
#[Assert\NotBlank]
|
||||
public string $consumerKey;
|
||||
|
||||
#[Assert\Choice(['create-default', 'create-premium'])]
|
||||
public string $pricingMode;
|
||||
|
||||
#[Assert\NotBlank]
|
||||
public string $ovhSubsidiary;
|
||||
}
|
||||
Reference in New Issue
Block a user