3 declare(strict_types=1);
19 use DateTimeImmutable;
133 if (is_null($this->projectKey)) {
135 $data = $this->
raw(self::FIELD_PROJECT_KEY);
136 if (is_null($data)) {
139 $this->projectKey = (string) $data;
153 if (is_null($this->notificationType)) {
155 $data = $this->
raw(self::FIELD_NOTIFICATION_TYPE);
156 if (is_null($data)) {
159 $this->notificationType = (string) $data;
173 if (is_null($this->resource)) {
175 $data = $this->
raw(self::FIELD_RESOURCE);
176 if (is_null($data)) {
180 $this->resource = $className::of($data);
194 if (is_null($this->resourceUserProvidedIdentifiers)) {
196 $data = $this->
raw(self::FIELD_RESOURCE_USER_PROVIDED_IDENTIFIERS);
197 if (is_null($data)) {
215 if (is_null($this->
id)) {
217 $data = $this->
raw(self::FIELD_ID);
218 if (is_null($data)) {
221 $this->
id = (string) $data;
235 if (is_null($this->version)) {
237 $data = $this->
raw(self::FIELD_VERSION);
238 if (is_null($data)) {
241 $this->version = (int) $data;
255 if (is_null($this->createdAt)) {
257 $data = $this->
raw(self::FIELD_CREATED_AT);
258 if (is_null($data)) {
262 if (
false === $data) {
265 $this->createdAt = $data;
279 if (is_null($this->lastModifiedAt)) {
281 $data = $this->
raw(self::FIELD_LAST_MODIFIED_AT);
282 if (is_null($data)) {
286 if (
false === $data) {
289 $this->lastModifiedAt = $data;
304 if (is_null($this->sequenceNumber)) {
306 $data = $this->
raw(self::FIELD_SEQUENCE_NUMBER);
307 if (is_null($data)) {
310 $this->sequenceNumber = (int) $data;
324 if (is_null($this->resourceVersion)) {
326 $data = $this->
raw(self::FIELD_RESOURCE_VERSION);
327 if (is_null($data)) {
330 $this->resourceVersion = (int) $data;
344 if (is_null($this->payloadNotIncluded)) {
346 $data = $this->
raw(self::FIELD_PAYLOAD_NOT_INCLUDED);
347 if (is_null($data)) {
439 #[\ReturnTypeWillChange]
450 return (
object) $data;