1: <?php
2: /*
3: * This class was auto-generated from the API references found at
4: * https://apireference.connect.worldline-solutions.com/
5: */
6: namespace Worldline\Connect\Sdk\V1\Domain;
7:
8: use UnexpectedValueException;
9: use Worldline\Connect\Sdk\Domain\DataObject;
10:
11: /**
12: * @package Worldline\Connect\Sdk\V1\Domain
13: */
14: class InstallmentOptionsResponse extends DataObject
15: {
16: /**
17: * @var InstallmentOptions[]|null
18: */
19: public ?array $installmentOptions = null;
20:
21: /**
22: * @return object
23: */
24: public function toObject(): object
25: {
26: $object = parent::toObject();
27: if (!is_null($this->installmentOptions)) {
28: $object->installmentOptions = [];
29: foreach ($this->installmentOptions as $element) {
30: if (!is_null($element)) {
31: $object->installmentOptions[] = $element->toObject();
32: }
33: }
34: }
35: return $object;
36: }
37:
38: /**
39: * @param object $object
40: *
41: * @return $this
42: * @throws UnexpectedValueException
43: */
44: public function fromObject(object $object): InstallmentOptionsResponse
45: {
46: parent::fromObject($object);
47: if (property_exists($object, 'installmentOptions')) {
48: if (!is_array($object->installmentOptions) && !is_object($object->installmentOptions)) {
49: throw new UnexpectedValueException('value \'' . print_r($object->installmentOptions, true) . '\' is not an array or object');
50: }
51: $this->installmentOptions = [];
52: foreach ($object->installmentOptions as $element) {
53: $value = new InstallmentOptions();
54: $this->installmentOptions[] = $value->fromObject($element);
55: }
56: }
57: return $this;
58: }
59: }
60: