<?phpnamespace App\Monetico\Request;/** * Represents the "contexte_commande" field content. * See technical documentation for a full explanation of each field and the format to use */class OrderContext implements \JsonSerializable{ /** * @var OrderContextBilling */ private $orderContextBilling; /** * @var ?OrderContextClient */ private $orderContextClient; /** * @var ?OrderContextShipping */ private $orderContextShipping; /** * @var ?OrderContextShoppingCart */ private $orderContextShoppingCart; /** * OrderContext constructor. * * @param ?OrderContextBilling $billing */ public function __construct($billing) { $this->setOrderContextBilling($billing); } public function jsonSerialize() { return array_filter([ 'billing' => $this->getOrderContextBilling(), 'client' => $this->getOrderContextClient(), 'shipping' => $this->getOrderContextShipping(), 'shoppingCart' => $this->getOrderContextShoppingCart() ], function ($value) { return !is_null($value); }); } /** * @return \App\Monetico\Request\OrderContextBilling */ public function getOrderContextBilling(): \App\Monetico\Request\OrderContextBilling { return $this->orderContextBilling; } /** * @param \App\Monetico\Request\OrderContextBilling $orderContextBilling */ public function setOrderContextBilling(\App\Monetico\Request\OrderContextBilling $orderContextBilling): void { $this->orderContextBilling = $orderContextBilling; } /** * @return \App\Monetico\Request\OrderContextClient|null */ public function getOrderContextClient(): ?\App\Monetico\Request\OrderContextClient { return $this->orderContextClient; } /** * @param \App\Monetico\Request\OrderContextClient|null $orderContextClient */ public function setOrderContextClient(?\App\Monetico\Request\OrderContextClient $orderContextClient): void { $this->orderContextClient = $orderContextClient; } /** * @return \App\Monetico\Request\OrderContextShipping|null */ public function getOrderContextShipping(): ?\App\Monetico\Request\OrderContextShipping { return $this->orderContextShipping; } /** * @param \App\Monetico\Request\OrderContextShipping|null $orderContextShipping */ public function setOrderContextShipping(?\App\Monetico\Request\OrderContextShipping $orderContextShipping): void { $this->orderContextShipping = $orderContextShipping; } /** * @return \App\Monetico\Request\OrderContextShoppingCart|null */ public function getOrderContextShoppingCart(): ?\App\Monetico\Request\OrderContextShoppingCart { return $this->orderContextShoppingCart; } /** * @param \App\Monetico\Request\OrderContextShoppingCart|null $orderContextShoppingCart */ public function setOrderContextShoppingCart(?\App\Monetico\Request\OrderContextShoppingCart $orderContextShoppingCart): void { $this->orderContextShoppingCart = $orderContextShoppingCart; }}?>