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:
10: /**
11: * @package Worldline\Connect\Sdk\V1\Domain
12: */
13: class EInvoicePaymentMethodSpecificInput extends AbstractEInvoicePaymentMethodSpecificInput
14: {
15: /**
16: * @var bool|null
17: */
18: public ?bool $acceptedTermsAndConditions = null;
19:
20: /**
21: * @var EInvoicePaymentProduct9000SpecificInput|null
22: */
23: public ?EInvoicePaymentProduct9000SpecificInput $paymentProduct9000SpecificInput = null;
24:
25: /**
26: * @return object
27: */
28: public function toObject(): object
29: {
30: $object = parent::toObject();
31: if (!is_null($this->acceptedTermsAndConditions)) {
32: $object->acceptedTermsAndConditions = $this->acceptedTermsAndConditions;
33: }
34: if (!is_null($this->paymentProduct9000SpecificInput)) {
35: $object->paymentProduct9000SpecificInput = $this->paymentProduct9000SpecificInput->toObject();
36: }
37: return $object;
38: }
39:
40: /**
41: * @param object $object
42: *
43: * @return $this
44: * @throws UnexpectedValueException
45: */
46: public function fromObject(object $object): EInvoicePaymentMethodSpecificInput
47: {
48: parent::fromObject($object);
49: if (property_exists($object, 'acceptedTermsAndConditions')) {
50: $this->acceptedTermsAndConditions = $object->acceptedTermsAndConditions;
51: }
52: if (property_exists($object, 'paymentProduct9000SpecificInput')) {
53: if (!is_object($object->paymentProduct9000SpecificInput)) {
54: throw new UnexpectedValueException('value \'' . print_r($object->paymentProduct9000SpecificInput, true) . '\' is not an object');
55: }
56: $value = new EInvoicePaymentProduct9000SpecificInput();
57: $this->paymentProduct9000SpecificInput = $value->fromObject($object->paymentProduct9000SpecificInput);
58: }
59: return $this;
60: }
61: }
62: