commercetools-sdk-php-v2
The commercetools platform, import-api and PHP sdks generated from our api reference.
Loading...
Searching...
No Matches
ExtensionBuilder.php
1<?php
2
3declare(strict_types=1);
10
22use DateTimeImmutable;
23use stdClass;
24
28final class ExtensionBuilder implements Builder
29{
34 private $id;
35
40 private $version;
41
46 private $createdAt;
47
52 private $lastModifiedAt;
53
58 private $lastModifiedBy;
59
64 private $createdBy;
65
70 private $key;
71
76 private $destination;
77
82 private $triggers;
83
88 private $timeoutInMs;
89
94 private $dependencies;
95
100 private $expansionPaths;
101
106 private $additionalContext;
107
114 public function getId()
115 {
116 return $this->id;
117 }
118
125 public function getVersion()
126 {
127 return $this->version;
128 }
129
136 public function getCreatedAt()
137 {
138 return $this->createdAt;
139 }
140
147 public function getLastModifiedAt()
148 {
149 return $this->lastModifiedAt;
150 }
151
158 public function getLastModifiedBy()
159 {
160 return $this->lastModifiedBy instanceof LastModifiedByBuilder ? $this->lastModifiedBy->build() : $this->lastModifiedBy;
161 }
162
169 public function getCreatedBy()
170 {
171 return $this->createdBy instanceof CreatedByBuilder ? $this->createdBy->build() : $this->createdBy;
172 }
173
180 public function getKey()
181 {
182 return $this->key;
183 }
184
191 public function getDestination()
192 {
193 return $this->destination instanceof ExtensionDestinationBuilder ? $this->destination->build() : $this->destination;
194 }
195
202 public function getTriggers()
203 {
204 return $this->triggers;
205 }
206
216 public function getTimeoutInMs()
217 {
218 return $this->timeoutInMs;
219 }
220
227 public function getDependencies()
228 {
229 return $this->dependencies;
230 }
231
239 public function getExpansionPaths()
240 {
241 return $this->expansionPaths;
242 }
243
250 public function getAdditionalContext()
251 {
252 return $this->additionalContext instanceof ExtensionAdditionalContextBuilder ? $this->additionalContext->build() : $this->additionalContext;
253 }
254
259 public function withId(?string $id)
260 {
261 $this->id = $id;
262
263 return $this;
264 }
265
270 public function withVersion(?int $version)
271 {
272 $this->version = $version;
273
274 return $this;
275 }
276
281 public function withCreatedAt(?DateTimeImmutable $createdAt)
282 {
283 $this->createdAt = $createdAt;
284
285 return $this;
286 }
287
292 public function withLastModifiedAt(?DateTimeImmutable $lastModifiedAt)
293 {
294 $this->lastModifiedAt = $lastModifiedAt;
295
296 return $this;
297 }
298
303 public function withLastModifiedBy(?LastModifiedBy $lastModifiedBy)
304 {
305 $this->lastModifiedBy = $lastModifiedBy;
306
307 return $this;
308 }
309
314 public function withCreatedBy(?CreatedBy $createdBy)
315 {
316 $this->createdBy = $createdBy;
317
318 return $this;
319 }
320
325 public function withKey(?string $key)
326 {
327 $this->key = $key;
328
329 return $this;
330 }
331
336 public function withDestination(?ExtensionDestination $destination)
337 {
338 $this->destination = $destination;
339
340 return $this;
341 }
342
347 public function withTriggers(?ExtensionTriggerCollection $triggers)
348 {
349 $this->triggers = $triggers;
350
351 return $this;
352 }
353
358 public function withTimeoutInMs(?int $timeoutInMs)
359 {
360 $this->timeoutInMs = $timeoutInMs;
361
362 return $this;
363 }
364
369 public function withDependencies(?ExtensionReferenceCollection $dependencies)
370 {
371 $this->dependencies = $dependencies;
372
373 return $this;
374 }
375
380 public function withExpansionPaths(?array $expansionPaths)
381 {
382 $this->expansionPaths = $expansionPaths;
383
384 return $this;
385 }
386
391 public function withAdditionalContext(?ExtensionAdditionalContext $additionalContext)
392 {
393 $this->additionalContext = $additionalContext;
394
395 return $this;
396 }
397
402 public function withLastModifiedByBuilder(?LastModifiedByBuilder $lastModifiedBy)
403 {
404 $this->lastModifiedBy = $lastModifiedBy;
405
406 return $this;
407 }
408
413 public function withCreatedByBuilder(?CreatedByBuilder $createdBy)
414 {
415 $this->createdBy = $createdBy;
416
417 return $this;
418 }
419
425 {
426 $this->destination = $destination;
427
428 return $this;
429 }
430
436 {
437 $this->additionalContext = $additionalContext;
438
439 return $this;
440 }
441
442 public function build(): Extension
443 {
444 return new ExtensionModel(
445 $this->id,
446 $this->version,
447 $this->createdAt,
448 $this->lastModifiedAt,
449 $this->lastModifiedBy instanceof LastModifiedByBuilder ? $this->lastModifiedBy->build() : $this->lastModifiedBy,
450 $this->createdBy instanceof CreatedByBuilder ? $this->createdBy->build() : $this->createdBy,
451 $this->key,
452 $this->destination instanceof ExtensionDestinationBuilder ? $this->destination->build() : $this->destination,
453 $this->triggers,
454 $this->timeoutInMs,
455 $this->dependencies,
456 $this->expansionPaths,
457 $this->additionalContext instanceof ExtensionAdditionalContextBuilder ? $this->additionalContext->build() : $this->additionalContext
458 );
459 }
460
461 public static function of(): ExtensionBuilder
462 {
463 return new self();
464 }
465}
withDestinationBuilder(?ExtensionDestinationBuilder $destination)
withLastModifiedByBuilder(?LastModifiedByBuilder $lastModifiedBy)
withLastModifiedAt(?DateTimeImmutable $lastModifiedAt)
withAdditionalContextBuilder(?ExtensionAdditionalContextBuilder $additionalContext)
withDependencies(?ExtensionReferenceCollection $dependencies)
withDestination(?ExtensionDestination $destination)
withAdditionalContext(?ExtensionAdditionalContext $additionalContext)
withTriggers(?ExtensionTriggerCollection $triggers)