1: <?php
2: /*
3: * This file was automatically generated.
4: */
5: namespace Worldline\Acquiring\Sdk\V1\Domain;
6:
7: use UnexpectedValueException;
8:
9: /**
10: * @package Worldline\Acquiring\Sdk\V1\Domain
11: */
12: class DukptPinEncryptionData extends PinEncryptionData
13: {
14: const PIN_ENCRYPTION_TYPE = 'DUKPT';
15:
16: /**
17: * @var string|null
18: */
19: public ?string $keySerialNumber = null;
20:
21: public function __construct()
22: {
23: $this->pinEncryptionType = self::PIN_ENCRYPTION_TYPE;
24: }
25:
26: /**
27: * @return object
28: */
29: public function toObject(): object
30: {
31: $object = parent::toObject();
32: if (!is_null($this->keySerialNumber)) {
33: $object->keySerialNumber = $this->keySerialNumber;
34: }
35: $object->pinEncryptionType = self::PIN_ENCRYPTION_TYPE;
36: return $object;
37: }
38:
39: /**
40: * @param object $object
41: *
42: * @return $this
43: * @throws UnexpectedValueException
44: */
45: public function fromObject(object $object): DukptPinEncryptionData
46: {
47: parent::fromObject($object);
48: $this->pinEncryptionType = self::PIN_ENCRYPTION_TYPE;
49: if (property_exists($object, 'keySerialNumber')) {
50: $this->keySerialNumber = $object->keySerialNumber;
51: }
52: return $this;
53: }
54: }
55: