attrLockValidator = $lockValidator; parent::__construct( $context, $registry, $extensionFactory, $customAttributeFactory, $eavConfig, $eavTypeFactory, $storeManager, $resourceHelper, $universalFactory, $optionDataFactory, $dataObjectProcessor, $dataObjectHelper, $localeDate, $reservedAttributeList, $localeResolver, $dateTimeFormatter, $resource, $resourceCollection, $data ); } /** * Processing object before save data * * @return \Magento\Framework\Model\AbstractModel * @throws \Magento\Framework\Exception\LocalizedException */ public function beforeSave() { try { $this->attrLockValidator->validate($this); } catch (\Magento\Framework\Exception\LocalizedException $exception) { throw new \Magento\Framework\Exception\LocalizedException(__($exception->getMessage())); } $this->setData('modulePrefix', self::MODULE_NAME); return parent::beforeSave(); } /** * Processing object after save data * * @return \Magento\Framework\Model\AbstractModel */ public function afterSave() { /** * Fix saving attribute in admin */ $this->_eavConfig->clear(); return parent::afterSave(); } }