/** * @param array $validationSubject * @return bool * @throws NotFoundException * @throws \Exception */ public function validate(array $validationSubject) { $isValid = true; $storeId = $validationSubject['storeId']; if ((int) $this->config->getValue('allowspecific', $storeId) === 1) { $availableCountries = explode(',', $this->config->getValue('specificcountry', $storeId)); if (!in_array($validationSubject['country'], $availableCountries)) { $isValid = false; } } return $this->resultFactory->create(['isValid' => $isValid]); }
/** * Performs domain level validation for business object * * @param array $validationSubject * @return ResultInterface */ public function validate(array $validationSubject) { $isValid = true; $failsDescriptionAggregate = []; foreach ($this->validators as $validator) { $result = $validator->validate($validationSubject); if (!$result->isValid()) { $isValid = false; $failsDescriptionAggregate = array_merge($failsDescriptionAggregate, $result->getFailsDescription()); } } return $this->resultFactory->create(['isValid' => $isValid, 'failsDescription' => $failsDescriptionAggregate]); }