ILIAS  trunk Revision v11.0_alpha-2638-g80c1d007f79
ILIAS\Certificate\ValueObject\CertificateId Class Reference
+ Collaboration diagram for ILIAS\Certificate\ValueObject\CertificateId:

Public Member Functions

 __construct (string $certificate_id)
 
 asString ()
 

Private Attributes

const UUID_LENGTH = 36
 
const UUID_SEPARATOR_COUNT = 4
 
readonly string $certificate_id
 

Detailed Description

Definition at line 25 of file CertificateId.php.

Constructor & Destructor Documentation

◆ __construct()

ILIAS\Certificate\ValueObject\CertificateId::__construct ( string  $certificate_id)

Definition at line 32 of file CertificateId.php.

References ILIAS\Certificate\ValueObject\CertificateId\$certificate_id.

33  {
34  if ($certificate_id === '') {
35  throw new InvalidArgumentException('certificate_id cannot be empty.');
36  }
37 
38  if (strlen($certificate_id) !== self::UUID_LENGTH) {
39  throw new InvalidArgumentException(sprintf(
40  'certificate_id must be a valid UUID. UUID must be %s characters long.',
41  self::UUID_LENGTH
42  ));
43  }
44 
45  if (substr_count($certificate_id, '-') !== 4) {
46  throw new InvalidArgumentException(sprintf(
47  'certificate_id must be a valid UUID. UUID must contain %s "-" characters.',
48  self::UUID_SEPARATOR_COUNT
49  ));
50  }
51  $this->certificate_id = $certificate_id;
52  }

Member Function Documentation

◆ asString()

ILIAS\Certificate\ValueObject\CertificateId::asString ( )

Definition at line 54 of file CertificateId.php.

References ILIAS\Certificate\ValueObject\CertificateId\$certificate_id.

54  : string
55  {
56  return $this->certificate_id;
57  }

Field Documentation

◆ $certificate_id

readonly string ILIAS\Certificate\ValueObject\CertificateId::$certificate_id
private

◆ UUID_LENGTH

const ILIAS\Certificate\ValueObject\CertificateId::UUID_LENGTH = 36
private

Definition at line 27 of file CertificateId.php.

◆ UUID_SEPARATOR_COUNT

const ILIAS\Certificate\ValueObject\CertificateId::UUID_SEPARATOR_COUNT = 4
private

Definition at line 28 of file CertificateId.php.


The documentation for this class was generated from the following file: