1: <?php
2: /*
3: * This file was automatically generated.
4: */
5: namespace Worldline\Acquiring\Sdk\V1\Domain;
6:
7: use UnexpectedValueException;
8: use Worldline\Acquiring\Sdk\Domain\DataObject;
9:
10: /**
11: * @package Worldline\Acquiring\Sdk\V1\Domain
12: */
13: class AmountBreakdownData extends DataObject
14: {
15: /**
16: * @var AmountData|null
17: */
18: public ?AmountData $cashbackAmount = null;
19:
20: /**
21: * @var AmountData|null
22: */
23: public ?AmountData $tipAmount = null;
24:
25: /**
26: * @return object
27: */
28: public function toObject(): object
29: {
30: $object = parent::toObject();
31: if (!is_null($this->cashbackAmount)) {
32: $object->cashbackAmount = $this->cashbackAmount->toObject();
33: }
34: if (!is_null($this->tipAmount)) {
35: $object->tipAmount = $this->tipAmount->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): AmountBreakdownData
47: {
48: parent::fromObject($object);
49: if (property_exists($object, 'cashbackAmount')) {
50: if (!is_object($object->cashbackAmount)) {
51: throw new UnexpectedValueException('value \'' . print_r($object->cashbackAmount, true) . '\' is not an object');
52: }
53: $value = new AmountData();
54: $this->cashbackAmount = $value->fromObject($object->cashbackAmount);
55: }
56: if (property_exists($object, 'tipAmount')) {
57: if (!is_object($object->tipAmount)) {
58: throw new UnexpectedValueException('value \'' . print_r($object->tipAmount, true) . '\' is not an object');
59: }
60: $value = new AmountData();
61: $this->tipAmount = $value->fromObject($object->tipAmount);
62: }
63: return $this;
64: }
65: }
66: