ldc-arcadia-genesis-php-client/src/Lib/ApiValueObject/IncoId.php

22 lines
522 B
PHP

<?php
declare(strict_types=1);
namespace Uwil\ArcadiaApiPhpClient\Lib\ApiValueObject;
use Uwil\ArcadiaApiPhpClient\Lib\ValueObjectId;
final readonly class IncoId implements ValueObjectId
{
private const PATTERN = '/^\d{1,}$/';
public function __construct(
public readonly string $value
) {
if (! preg_match(self::PATTERN, $value)) {
throw new \DomainException(
"Invalid value '{$value}' does not match pattern " . self::PATTERN
);
}
}
}