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 PaymentProductFiltersHostedCheckout extends DataObject
15: {
16: /**
17: * @var PaymentProductFilter
18: */
19: public $exclude = null;
20:
21: /**
22: * @var PaymentProductFilter
23: */
24: public $restrictTo = null;
25:
26: /**
27: * @var bool
28: */
29: public $tokensOnly = null;
30:
31: /**
32: * @return object
33: */
34: public function toObject()
35: {
36: $object = parent::toObject();
37: if (!is_null($this->exclude)) {
38: $object->exclude = $this->exclude->toObject();
39: }
40: if (!is_null($this->restrictTo)) {
41: $object->restrictTo = $this->restrictTo->toObject();
42: }
43: if (!is_null($this->tokensOnly)) {
44: $object->tokensOnly = $this->tokensOnly;
45: }
46: return $object;
47: }
48:
49: /**
50: * @param object $object
51: * @return $this
52: * @throws UnexpectedValueException
53: */
54: public function fromObject($object)
55: {
56: parent::fromObject($object);
57: if (property_exists($object, 'exclude')) {
58: if (!is_object($object->exclude)) {
59: throw new UnexpectedValueException('value \'' . print_r($object->exclude, true) . '\' is not an object');
60: }
61: $value = new PaymentProductFilter();
62: $this->exclude = $value->fromObject($object->exclude);
63: }
64: if (property_exists($object, 'restrictTo')) {
65: if (!is_object($object->restrictTo)) {
66: throw new UnexpectedValueException('value \'' . print_r($object->restrictTo, true) . '\' is not an object');
67: }
68: $value = new PaymentProductFilter();
69: $this->restrictTo = $value->fromObject($object->restrictTo);
70: }
71: if (property_exists($object, 'tokensOnly')) {
72: $this->tokensOnly = $object->tokensOnly;
73: }
74: return $this;
75: }
76: }
77: