commercetools-sdk-php-v2  master
The platform, import-api and ml-api PHP sdks generated from our api reference.
AttributeSetTypeBuilder.php
1 <?php
2 
3 declare(strict_types=1);
10 
16 use stdClass;
17 
21 final class AttributeSetTypeBuilder implements Builder
22 {
27  private $elementType;
28 
33  public function getElementType()
34  {
35  return $this->elementType instanceof AttributeTypeBuilder ? $this->elementType->build() : $this->elementType;
36  }
37 
42  public function withElementType(?AttributeType $elementType)
43  {
44  $this->elementType = $elementType;
45 
46  return $this;
47  }
48 
53  public function withElementTypeBuilder(?AttributeTypeBuilder $elementType)
54  {
55  $this->elementType = $elementType;
56 
57  return $this;
58  }
59 
60  public function build(): AttributeSetType
61  {
62  return new AttributeSetTypeModel(
63  $this->elementType instanceof AttributeTypeBuilder ? $this->elementType->build() : $this->elementType
64  );
65  }
66 
67  public static function of(): AttributeSetTypeBuilder
68  {
69  return new self();
70  }
71 }