You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

225 line
15 KiB

  1. <?xml version="1.0"?>
  2. <!--
  3. /**
  4. * Copyright © Magento, Inc. All rights reserved.
  5. * See COPYING.txt for license details.
  6. */
  7. -->
  8. <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
  9. <preference for="Magento\Eav\Model\Entity\Setup\PropertyMapperInterface" type="Magento\Eav\Model\Entity\Setup\PropertyMapper\Composite" />
  10. <preference for="Magento\Eav\Model\Entity\AttributeLoaderInterface" type="Magento\Eav\Model\Entity\AttributeLoader" />
  11. <preference for="Magento\Eav\Model\Entity\Attribute\UniqueValidationInterface" type="Magento\Eav\Model\Entity\Attribute\UniqueValidator" />
  12. <preference for="Magento\Eav\Model\ReservedAttributeCheckerInterface" type="Magento\Eav\Model\ReservedAttributeChecker" />
  13. <preference for="Magento\Eav\Api\Data\AttributeInterface" type="Magento\Eav\Model\Entity\Attribute" />
  14. <preference for="Magento\Eav\Api\AttributeRepositoryInterface" type="Magento\Eav\Model\AttributeRepository" />
  15. <preference for="Magento\Eav\Api\Data\AttributeGroupInterface" type="Magento\Eav\Model\Entity\Attribute\Group" />
  16. <preference for="Magento\Eav\Api\AttributeGroupRepositoryInterface" type="Magento\Eav\Model\Attribute\GroupRepository" />
  17. <preference for="Magento\Eav\Api\AttributeSetRepositoryInterface" type="Magento\Eav\Model\AttributeSetRepository" />
  18. <preference for="Magento\Eav\Api\AttributeSetManagementInterface" type="Magento\Eav\Model\AttributeSetManagement" />
  19. <preference for="Magento\Eav\Api\Data\AttributeSetInterface" type="Magento\Eav\Model\Entity\Attribute\Set" />
  20. <preference for="Magento\Eav\Api\AttributeManagementInterface" type="Magento\Eav\Model\AttributeManagement" />
  21. <preference for="Magento\Eav\Api\Data\AttributeFrontendLabelInterface" type="Magento\Eav\Model\Entity\Attribute\FrontendLabel" />
  22. <preference for="Magento\Eav\Api\Data\AttributeOptionInterface" type="Magento\Eav\Model\Entity\Attribute\Option" />
  23. <preference for="Magento\Eav\Api\AttributeOptionManagementInterface" type="Magento\Eav\Model\Entity\Attribute\OptionManagement" />
  24. <preference for="Magento\Eav\Api\AttributeOptionUpdateInterface" type="Magento\Eav\Model\Entity\Attribute\OptionManagement" />
  25. <preference for="Magento\Eav\Api\Data\AttributeOptionLabelInterface" type="Magento\Eav\Model\Entity\Attribute\OptionLabel" />
  26. <preference for="Magento\Eav\Api\Data\AttributeValidationRuleInterface" type="Magento\Eav\Model\Entity\Attribute\ValidationRule" />
  27. <preference for="Magento\Eav\Api\Data\AttributeSearchResultsInterface" type="Magento\Eav\Model\AttributeSearchResults" />
  28. <preference for="Magento\Eav\Api\Data\AttributeSetSearchResultsInterface" type="Magento\Eav\Model\AttributeSetSearchResults" />
  29. <preference for="Magento\Eav\Api\Data\AttributeGroupSearchResultsInterface" type="Magento\Eav\Model\AttributeGroupSearchResults" />
  30. <preference for="Magento\Framework\Webapi\CustomAttributeTypeLocatorInterface" type="Magento\Eav\Model\TypeLocator" />
  31. <type name="Magento\Eav\Model\Entity\Attribute\Config">
  32. <arguments>
  33. <argument name="reader" xsi:type="object">Magento\Eav\Model\Entity\Attribute\Config\Reader\Proxy</argument>
  34. </arguments>
  35. </type>
  36. <type name="Magento\Eav\Model\ResourceModel\Helper">
  37. <arguments>
  38. <argument name="modulePrefix" xsi:type="string">eav</argument>
  39. </arguments>
  40. </type>
  41. <type name="Magento\Eav\Model\Entity\Setup\PropertyMapper\Composite">
  42. <arguments>
  43. <argument name="propertyMappers" xsi:type="array">
  44. <item name="default" xsi:type="string">Magento\Eav\Model\Entity\Setup\PropertyMapper</item>
  45. </argument>
  46. </arguments>
  47. </type>
  48. <type name="Magento\Eav\Model\ResourceModel\Entity\Attribute">
  49. <plugin name="storeLabelCaching" type="Magento\Eav\Plugin\Model\ResourceModel\Entity\Attribute" />
  50. </type>
  51. <type name="Magento\Framework\Webapi\ServiceTypeToEntityTypeMap">
  52. <arguments>
  53. <argument name="serviceTypeToEntityTypeMap" xsi:type="array" />
  54. </arguments>
  55. </type>
  56. <type name="Magento\Eav\Model\TypeLocator">
  57. <arguments>
  58. <argument name="typeLocators" xsi:type="array">
  59. <item name="simpleType" sortOrder="50" xsi:type="object">Magento\Eav\Model\TypeLocator\SimpleType</item>
  60. <item name="complexType" sortOrder="10" xsi:type="object">Magento\Eav\Model\TypeLocator\ComplexType</item>
  61. <item name="serviceClassType" sortOrder="0" xsi:type="object">Magento\Eav\Model\TypeLocator\ServiceClassLocator</item>
  62. </argument>
  63. </arguments>
  64. </type>
  65. <type name="Magento\Eav\Model\TypeLocator\ComplexType">
  66. <arguments>
  67. <argument name="backendModelToAttributeTypeMap" xsi:type="array">
  68. <item name="Magento\Eav\Model\Attribute\Data\Text" xsi:type="string">string</item>
  69. <item name="Magento\Eav\Model\Attribute\Data\Date" xsi:type="string">string</item>
  70. <item name="Magento\Eav\Model\Attribute\Data\Boolean" xsi:type="string">boolean</item>
  71. <item name="Magento\Eav\Model\Attribute\Data\File" xsi:type="string">string</item>
  72. <item name="Magento\Eav\Model\Attribute\Data\Hidden" xsi:type="string">string</item>
  73. <item name="Magento\Eav\Model\Attribute\Data\Image" xsi:type="string">Magento\Framework\Api\Data\ImageContentInterface</item>
  74. <item name="Magento\Eav\Model\Attribute\Data\Multiline" xsi:type="string">string</item>
  75. <item name="Magento\Eav\Model\Attribute\Data\Multiselect" xsi:type="string">string</item>
  76. <item name="Magento\Eav\Model\Attribute\Data\Select" xsi:type="string">string</item>
  77. <item name="Magento\Eav\Model\Attribute\Data\Textarea" xsi:type="string">string</item>
  78. <item name="Magento\Eav\Model\Entity\Attribute\Backend\DefaultBackend" xsi:type="string">string</item>
  79. </argument>
  80. </arguments>
  81. </type>
  82. <type name="Magento\Eav\Model\Entity\Attribute">
  83. <arguments>
  84. <argument name="reservedAttributeList" xsi:type="object">Magento\Catalog\Model\Product\ReservedAttributeList\Proxy</argument>
  85. </arguments>
  86. </type>
  87. <type name="Magento\Framework\EntityManager\Operation\AttributePool">
  88. <arguments>
  89. <argument name="extensionActions" xsi:type="array">
  90. <item name="eav" xsi:type="array">
  91. <item name="default" xsi:type="array">
  92. <item name="read" xsi:type="string">Magento\Eav\Model\ResourceModel\ReadHandler</item>
  93. <item name="create" xsi:type="string">Magento\Eav\Model\ResourceModel\CreateHandler</item>
  94. <item name="update" xsi:type="string">Magento\Eav\Model\ResourceModel\UpdateHandler</item>
  95. </item>
  96. </item>
  97. </argument>
  98. </arguments>
  99. </type>
  100. <type name="Magento\Framework\Model\EntitySnapshot\AttributeProvider">
  101. <arguments>
  102. <argument name="providers" xsi:type="array">
  103. <item name="default" xsi:type="array">
  104. <item name="eav" xsi:type="string">\Magento\Eav\Model\AttributeProvider</item>
  105. </item>
  106. </argument>
  107. </arguments>
  108. </type>
  109. <type name="Magento\Eav\Model\Entity\AbstractEntity">
  110. <plugin name="clean_cache" type="Magento\Framework\App\Cache\FlushCacheByTags" />
  111. </type>
  112. <virtualType name="Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor">
  113. <arguments>
  114. <argument name="processors" xsi:type="array">
  115. <item name="filters" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor</item>
  116. <item name="sorting" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\SortingProcessor</item>
  117. <item name="pagination" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\PaginationProcessor</item>
  118. </argument>
  119. </arguments>
  120. </virtualType>
  121. <type name="Magento\Eav\Model\AttributeRepository">
  122. <arguments>
  123. <argument name="collectionProcessor" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\AttributeCollectionProcessor</argument>
  124. </arguments>
  125. </type>
  126. <virtualType name="Magento\Eav\Model\Api\SearchCriteria\AttributeCollectionProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor">
  127. <arguments>
  128. <argument name="processors" xsi:type="array">
  129. <item name="filters" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeFilterProcessor</item>
  130. <item name="sorting" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeSortingProcessor</item>
  131. <item name="pagination" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\PaginationProcessor</item>
  132. </argument>
  133. </arguments>
  134. </virtualType>
  135. <virtualType name="Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeFilterProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\FilterProcessor">
  136. <arguments>
  137. <argument name="fieldMapping" xsi:type="array">
  138. <item name="attribute_id" xsi:type="string">main_table.attribute_id</item>
  139. </argument>
  140. </arguments>
  141. </virtualType>
  142. <virtualType name="Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeSortingProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\SortingProcessor">
  143. <arguments>
  144. <argument name="fieldMapping" xsi:type="array">
  145. <item name="attribute_id" xsi:type="string">main_table.attribute_id</item>
  146. </argument>
  147. </arguments>
  148. </virtualType>
  149. <virtualType name="Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeSetFilterProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\FilterProcessor">
  150. <arguments>
  151. <argument name="customFilters" xsi:type="array">
  152. <item name="entity_type_code" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\AttributeSetEntityTypeCodeFilter</item>
  153. </argument>
  154. </arguments>
  155. </virtualType>
  156. <virtualType name="Magento\Eav\Model\Api\SearchCriteria\AttributeSetCollectionProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor">
  157. <arguments>
  158. <argument name="processors" xsi:type="array">
  159. <item name="filters" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeSetFilterProcessor</item>
  160. <item name="sorting" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\SortingProcessor</item>
  161. <item name="pagination" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\PaginationProcessor</item>
  162. </argument>
  163. </arguments>
  164. </virtualType>
  165. <type name="Magento\Eav\Model\AttributeSetRepository">
  166. <arguments>
  167. <argument name="collectionProcessor" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\AttributeSetCollectionProcessor</argument>
  168. </arguments>
  169. </type>
  170. <virtualType name="Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeGroupFilterProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\FilterProcessor">
  171. <arguments>
  172. <argument name="fieldMapping" xsi:type="array">
  173. <item name="attribute_group_code" xsi:type="string">main_table.attribute_group_code</item>
  174. </argument>
  175. <argument name="customFilters" xsi:type="array">
  176. <item name="attribute_set_id" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\AttributeGroupAttributeSetIdFilter</item>
  177. <item name="attribute_group_code" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\FilterProcessor\AttributeGroupCodeFilter</item>
  178. </argument>
  179. </arguments>
  180. </virtualType>
  181. <virtualType name="Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeGroupSortingProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor\SortingProcessor">
  182. <arguments>
  183. <argument name="fieldMapping" xsi:type="array">
  184. <item name="attribute_group_code" xsi:type="string">main_table.attribute_group_code</item>
  185. </argument>
  186. <argument name="defaultOrders" xsi:type="array">
  187. <item name="sort_order" xsi:type="string">ASC</item>
  188. </argument>
  189. </arguments>
  190. </virtualType>
  191. <virtualType name="Magento\Eav\Model\Api\SearchCriteria\AttributeGroupCollectionProcessor" type="Magento\Framework\Api\SearchCriteria\CollectionProcessor">
  192. <arguments>
  193. <argument name="processors" xsi:type="array">
  194. <item name="filters" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeGroupFilterProcessor</item>
  195. <item name="sorting" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\CollectionProcessor\AttributeGroupSortingProcessor</item>
  196. <item name="pagination" xsi:type="object">Magento\Framework\Api\SearchCriteria\CollectionProcessor\PaginationProcessor</item>
  197. </argument>
  198. </arguments>
  199. </virtualType>
  200. <type name="Magento\Eav\Model\Attribute\GroupRepository">
  201. <arguments>
  202. <argument name="collectionProcessor" xsi:type="object">Magento\Eav\Model\Api\SearchCriteria\AttributeGroupCollectionProcessor</argument>
  203. </arguments>
  204. </type>
  205. <type name="Magento\Framework\EntityManager\CompositeMapper">
  206. <arguments>
  207. <argument name="mappers" xsi:type="array">
  208. <item name="mapper" xsi:type="object">Magento\Framework\EntityManager\Mapper</item>
  209. <item name="customAttributesMapper" xsi:type="object">Magento\Eav\Model\CustomAttributesMapper</item>
  210. </argument>
  211. </arguments>
  212. </type>
  213. <virtualType name="configured_eav_cache" type="Magento\Framework\App\Cache">
  214. <arguments>
  215. <argument name="cacheIdentifier" xsi:type="string">eav</argument>
  216. </arguments>
  217. </virtualType>
  218. <type name="Magento\Eav\Model\Config">
  219. <arguments>
  220. <argument name="cache" xsi:type="object">configured_eav_cache</argument>
  221. </arguments>
  222. </type>
  223. </config>