9 use Magento\Customer\Api\Data\AttributeMetadataInterfaceFactory;
11 use Magento\Customer\Api\Data\OptionInterfaceFactory;
13 use Magento\Customer\Api\Data\ValidationRuleInterfaceFactory;
25 private $attributeMetadataFactory;
30 private $optionFactory;
35 private $validationRuleFactory;
40 private $dataObjectProcessor;
51 AttributeMetadataInterfaceFactory $attributeMetadataFactory,
52 OptionInterfaceFactory $optionFactory,
53 ValidationRuleInterfaceFactory $validationRuleFactory,
56 $this->attributeMetadataFactory = $attributeMetadataFactory;
57 $this->optionFactory = $optionFactory;
58 $this->validationRuleFactory = $validationRuleFactory;
59 $this->dataObjectProcessor = $dataObjectProcessor;
80 return $this->attributeMetadataFactory->create([
'data' =>
$data]);
89 private function createOptions(array
$data)
106 private function createValidationRules(array
$data)
108 foreach (
$data as $key => $validationRuleData) {
109 $data[$key] = $this->validationRuleFactory->create([
'data' => $validationRuleData]);
122 return $this->dataObjectProcessor->buildOutputDataArray(
124 AttributeMetadata::class