di.xml 4.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  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"
  9. xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
  10. <preference for="Magento\Search\Api\SearchInterface" type="Magento\Search\Model\Search"/>
  11. <preference for="Magento\Framework\Search\EngineResolverInterface" type="Magento\Search\Model\EngineResolver"/>
  12. <type name="Magento\Framework\Module\Setup\Migration">
  13. <arguments>
  14. <argument name="compositeModules" xsi:type="array">
  15. <item name="search" xsi:type="string">Magento_Search</item>
  16. </argument>
  17. </arguments>
  18. </type>
  19. <type name="Magento\Search\Model\AdapterFactory">
  20. <arguments>
  21. <argument name="adapters" xsi:type="array">
  22. <item name="mysql" xsi:type="string">Magento\Framework\Search\Adapter\Mysql\Adapter</item>
  23. </argument>
  24. </arguments>
  25. </type>
  26. <preference for="Magento\Search\Model\QueryFactoryInterface" type="Magento\Search\Model\QueryFactory" />
  27. <preference for="Magento\Search\Model\QueryInterface" type="Magento\Search\Model\Query" />
  28. <preference for="Magento\Search\Api\SynonymAnalyzerInterface" type="Magento\Search\Model\SynonymAnalyzer" />
  29. <type name="Magento\Search\Model\Adminhtml\System\Config\Source\Engine">
  30. <arguments>
  31. <argument name="engines" xsi:type="array">
  32. <item name="mysql" xsi:type="string">MySQL</item>
  33. </argument>
  34. </arguments>
  35. </type>
  36. <type name="Magento\Search\Model\EngineResolver">
  37. <arguments>
  38. <argument name="path" xsi:type="string">catalog/search/engine</argument>
  39. <argument name="scopeType" xsi:type="string">default</argument>
  40. <argument name="engines" xsi:type="array">
  41. <item name="mysql" xsi:type="string">mysql</item>
  42. </argument>
  43. </arguments>
  44. </type>
  45. <preference for="Magento\Search\Model\AutocompleteInterface" type="Magento\Search\Model\Autocomplete" />
  46. <preference for="Magento\Search\Model\Autocomplete\ItemInterface" type="Magento\Search\Model\Autocomplete\Item" />
  47. <preference for="Magento\Framework\Search\SearchEngineInterface" type="Magento\Search\Model\SearchEngine"/>
  48. <type name="Magento\Framework\View\Element\UiComponent\DataProvider\FilterPool">
  49. <arguments>
  50. <argument name="appliers" xsi:type="array">
  51. <item name="regular" xsi:type="object">Magento\Framework\View\Element\UiComponent\DataProvider\RegularFilter</item>
  52. <item name="fulltext" xsi:type="object">Magento\Framework\View\Element\UiComponent\DataProvider\FulltextFilter</item>
  53. </argument>
  54. </arguments>
  55. </type>
  56. <!-- @api -->
  57. <virtualType name="Magento\Search\Model\ResourceModel\Synonyms\Grid\Collection" type="Magento\Framework\View\Element\UiComponent\DataProvider\SearchResult">
  58. <arguments>
  59. <argument name="name" xsi:type="string">search_synonyms_grid_data_source</argument>
  60. <argument name="primaryFieldName" xsi:type="string">group_id</argument>
  61. <argument name="requestFieldName" xsi:type="string">id</argument>
  62. <argument name="mainTable" xsi:type="string">search_synonyms</argument>
  63. <argument name="resourceModel" xsi:type="string">Magento\Search\Model\ResourceModel\SynonymGroup</argument>
  64. </arguments>
  65. </virtualType>
  66. <type name="Magento\Framework\View\Element\UiComponent\DataProvider\CollectionFactory">
  67. <arguments>
  68. <argument name="collections" xsi:type="array">
  69. <item name="search_synonyms_grid_data_source" xsi:type="string">Magento\Search\Model\ResourceModel\Synonyms\Grid\Collection</item>
  70. </argument>
  71. </arguments>
  72. </type>
  73. <preference for="Magento\Search\Api\Data\SynonymGroupInterface" type="Magento\Search\Model\SynonymGroup" />
  74. <preference for="Magento\Search\Api\SynonymGroupRepositoryInterface" type="Magento\Search\Model\SynonymGroupRepository" />
  75. <preference for="Magento\Framework\Search\Adapter\Preprocessor\PreprocessorInterface" type="Magento\Search\Adapter\Query\Preprocessor\Synonyms" />
  76. <type name="Magento\Framework\Search\Adapter\Mysql\Query\Builder\Match">
  77. <arguments>
  78. <argument name="preprocessors" xsi:type="array">
  79. <item name="synonymsPreprocessor" xsi:type="object">Magento\Search\Adapter\Query\Preprocessor\Synonyms</item>
  80. </argument>
  81. </arguments>
  82. </type>
  83. <preference for="Magento\Framework\Search\SearchEngine\ConfigInterface" type="Magento\Search\Model\SearchEngine\Config" />
  84. <type name="Magento\Search\Model\SearchEngine\Config">
  85. <arguments>
  86. <argument name="dataStorage" xsi:type="object">Magento\Search\Model\SearchEngine\Config\Data</argument>
  87. </arguments>
  88. </type>
  89. </config>