3declare(strict_types=1);
136 if (is_null($this->key)) {
138 $data = $this->
raw(self::FIELD_KEY);
139 if (is_null($data)) {
142 $this->key = (string) $data;
157 if (is_null($this->value)) {
159 $data = $this->
raw(self::FIELD_VALUE);
160 if (is_null($data)) {
178 if (is_null($this->country)) {
180 $data = $this->
raw(self::FIELD_COUNTRY);
181 if (is_null($data)) {
184 $this->country = (string) $data;
198 if (is_null($this->customerGroup)) {
200 $data = $this->
raw(self::FIELD_CUSTOMER_GROUP);
201 if (is_null($data)) {
205 $this->customerGroup = CustomerGroupResourceIdentifierModel::of($data);
219 if (is_null($this->channel)) {
221 $data = $this->
raw(self::FIELD_CHANNEL);
222 if (is_null($data)) {
226 $this->channel = ChannelResourceIdentifierModel::of($data);
240 if (is_null($this->validFrom)) {
242 $data = $this->
raw(self::FIELD_VALID_FROM);
243 if (is_null($data)) {
246 $data = DateTimeImmutable::createFromFormat(MapperFactory::DATETIME_FORMAT, $data);
247 if (
false === $data) {
250 $this->validFrom = $data;
264 if (is_null($this->validUntil)) {
266 $data = $this->
raw(self::FIELD_VALID_UNTIL);
267 if (is_null($data)) {
270 $data = DateTimeImmutable::createFromFormat(MapperFactory::DATETIME_FORMAT, $data);
271 if (
false === $data) {
274 $this->validUntil = $data;
295 if (is_null($this->discounted)) {
297 $data = $this->
raw(self::FIELD_DISCOUNTED);
298 if (is_null($data)) {
317 if (is_null($this->tiers)) {
319 $data = $this->
raw(self::FIELD_TIERS);
320 if (is_null($data)) {
337 if (is_null($this->custom)) {
339 $data = $this->
raw(self::FIELD_CUSTOM);
340 if (is_null($data)) {
344 $this->custom = CustomFieldsDraftModel::of($data);
358 if (is_null($this->recurrencePolicy)) {
360 $data = $this->
raw(self::FIELD_RECURRENCE_POLICY);
361 if (is_null($data)) {
365 $this->recurrencePolicy = RecurrencePolicyResourceIdentifierModel::of($data);
461 #[\ReturnTypeWillChange]
472 return (
object) $data;