Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
All Data Structures Namespaces Files Functions Variables Pages
ProductSalableResult.php
Go to the documentation of this file.
1 <?php
6 declare(strict_types=1);
7 
9 
13 use Magento\InventorySalesApi\Api\Data\ProductSalableResultExtensionInterface;
14 
16 {
20  private $errors = [];
21 
34  public function __construct(
35  \Magento\Framework\Model\Context $context,
36  \Magento\Framework\Registry $registry,
37  \Magento\Framework\Api\ExtensionAttributesFactory $extensionFactory,
38  \Magento\Framework\Api\AttributeValueFactory $customAttributeFactory,
39  array $errors,
40  \Magento\Framework\Model\ResourceModel\AbstractResource $resource = null,
41  \Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
42  array $data = []
43  ) {
44  parent::__construct(
45  $context,
46  $registry,
47  $extensionFactory,
49  $resource,
50  $resourceCollection,
51  $data
52  );
53  $this->errors = $errors;
54  }
55 
59  public function isSalable(): bool
60  {
61  return empty($this->errors);
62  }
63 
67  public function getErrors(): array
68  {
69  return $this->errors;
70  }
71 
75  public function getExtensionAttributes(): ?ProductSalableResultExtensionInterface
76  {
78  if (null === $extensionAttributes) {
79  $extensionAttributes = $this->extensionAttributesFactory->create(ProductSalableResultInterface::class);
81  }
82  return $extensionAttributes;
83  }
84 
88  public function setExtensionAttributes(ProductSalableResultExtensionInterface $extensionAttributes): void
89  {
90  $this->_setExtensionAttributes($extensionAttributes);
91  }
92 }
__construct(\Magento\Framework\Model\Context $context, \Magento\Framework\Registry $registry, \Magento\Framework\Api\ExtensionAttributesFactory $extensionFactory, \Magento\Framework\Api\AttributeValueFactory $customAttributeFactory, array $errors, \Magento\Framework\Model\ResourceModel\AbstractResource $resource=null, \Magento\Framework\Data\Collection\AbstractDb $resourceCollection=null, array $data=[])
_setExtensionAttributes(\Magento\Framework\Api\ExtensionAttributesInterface $extensionAttributes)
setExtensionAttributes(ProductSalableResultExtensionInterface $extensionAttributes)
$resource
Definition: bulk.php:12
$errors
Definition: overview.phtml:9