diff --git a/app/code/Magento/Search/Adapter/Query/Preprocessor/Synonyms.php b/app/code/Magento/Search/Adapter/Query/Preprocessor/Synonyms.php index 9a5a79cb4db06..faa4406b9331a 100644 --- a/app/code/Magento/Search/Adapter/Query/Preprocessor/Synonyms.php +++ b/app/code/Magento/Search/Adapter/Query/Preprocessor/Synonyms.php @@ -10,19 +10,14 @@ class Synonyms implements PreprocessorInterface { - /** - * @var SynonymAnalyzerInterface - */ - private $synonymsAnalyzer; - /** * Constructor * * @param SynonymAnalyzerInterface $synonymsAnalyzer */ - public function __construct(SynonymAnalyzerInterface $synonymsAnalyzer) - { - $this->synonymsAnalyzer = $synonymsAnalyzer; + public function __construct( + private readonly SynonymAnalyzerInterface $synonymsAnalyzer + ) { } /** diff --git a/app/code/Magento/Search/Block/Adminhtml/Dashboard/Last.php b/app/code/Magento/Search/Block/Adminhtml/Dashboard/Last.php index ff49f4a15b06a..454a81ef2c5f8 100644 --- a/app/code/Magento/Search/Block/Adminhtml/Dashboard/Last.php +++ b/app/code/Magento/Search/Block/Adminhtml/Dashboard/Last.php @@ -5,26 +5,36 @@ */ namespace Magento\Search\Block\Adminhtml\Dashboard; +use Exception; +use Magento\Backend\Block\Dashboard\Grid as DashboardGrid; +use Magento\Backend\Block\Dashboard\Searches\Renderer\Searchquery; +use Magento\Backend\Block\Template\Context as TemplateContext; +use Magento\Backend\Helper\Data as BackendHelper; +use Magento\Framework\Exception\LocalizedException; +use Magento\Framework\Module\Manager as ModuleManager; +use Magento\Search\Model\ResourceModel\Query\Collection as QueryCollection; +use Magento\Search\Model\ResourceModel\Query\CollectionFactory as QueryCollectionFactory; + /** * Dashboard last search keywords block * @api * @SuppressWarnings(PHPMD.DepthOfInheritance) * @since 100.0.2 */ -class Last extends \Magento\Backend\Block\Dashboard\Grid +class Last extends DashboardGrid { /** - * @var \Magento\Search\Model\ResourceModel\Query\Collection + * @var QueryCollection */ protected $_collection; /** - * @var \Magento\Search\Model\ResourceModel\Query\CollectionFactory + * @var QueryCollectionFactory */ protected $_queriesFactory; /** - * @var \Magento\Framework\Module\Manager + * @var ModuleManager */ protected $_moduleManager; @@ -34,17 +44,17 @@ class Last extends \Magento\Backend\Block\Dashboard\Grid protected $_template = 'Magento_Backend::dashboard/grid.phtml'; /** - * @param \Magento\Backend\Block\Template\Context $context - * @param \Magento\Backend\Helper\Data $backendHelper - * @param \Magento\Framework\Module\Manager $moduleManager - * @param \Magento\Search\Model\ResourceModel\Query\CollectionFactory $queriesFactory + * @param TemplateContext $context + * @param BackendHelper $backendHelper + * @param ModuleManager $moduleManager + * @param QueryCollectionFactory $queriesFactory * @param array $data */ public function __construct( - \Magento\Backend\Block\Template\Context $context, - \Magento\Backend\Helper\Data $backendHelper, - \Magento\Framework\Module\Manager $moduleManager, - \Magento\Search\Model\ResourceModel\Query\CollectionFactory $queriesFactory, + TemplateContext $context, + BackendHelper $backendHelper, + ModuleManager $moduleManager, + QueryCollectionFactory $queriesFactory, array $data = [] ) { $this->_moduleManager = $moduleManager; @@ -67,7 +77,7 @@ protected function _construct() * Prepare collection. * * @return $this - * @throws \Magento\Framework\Exception\LocalizedException + * @throws LocalizedException */ protected function _prepareCollection() { @@ -93,7 +103,7 @@ protected function _prepareCollection() * Prepare columns. * * @return $this - * @throws \Exception + * @throws Exception */ protected function _prepareColumns() { @@ -103,7 +113,7 @@ protected function _prepareColumns() 'header' => __('Search Term'), 'sortable' => false, 'index' => 'query_text', - 'renderer' => \Magento\Backend\Block\Dashboard\Searches\Renderer\Searchquery::class, + 'renderer' => Searchquery::class, 'header_css_class' => 'col-search-query', 'column_css_class' => 'col-search-query' ] diff --git a/app/code/Magento/Search/Block/Adminhtml/Dashboard/Top.php b/app/code/Magento/Search/Block/Adminhtml/Dashboard/Top.php index 3e10e1137d6b6..ed847f45cdc2c 100644 --- a/app/code/Magento/Search/Block/Adminhtml/Dashboard/Top.php +++ b/app/code/Magento/Search/Block/Adminhtml/Dashboard/Top.php @@ -5,26 +5,34 @@ */ namespace Magento\Search\Block\Adminhtml\Dashboard; +use Magento\Backend\Block\Dashboard\Grid as DashboardGrid; +use Magento\Backend\Block\Dashboard\Searches\Renderer\Searchquery; +use Magento\Backend\Block\Template\Context as TemplateContext; +use Magento\Backend\Helper\Data as BackendHelper; +use Magento\Framework\Module\Manager as ModuleManager; +use Magento\Search\Model\ResourceModel\Query\Collection as QueryCollection; +use Magento\Search\Model\ResourceModel\Query\CollectionFactory as QueryCollectionFactory; + /** * Dashboard last search keywords block * @api * @SuppressWarnings(PHPMD.DepthOfInheritance) * @since 100.0.2 */ -class Top extends \Magento\Backend\Block\Dashboard\Grid +class Top extends DashboardGrid { /** - * @var \Magento\Search\Model\ResourceModel\Query\Collection + * @var QueryCollection */ protected $_collection; /** - * @var \Magento\Search\Model\ResourceModel\Query\CollectionFactory + * @var QueryCollectionFactory */ protected $_queriesFactory; /** - * @var \Magento\Framework\Module\Manager + * @var ModuleManager */ protected $_moduleManager; @@ -34,17 +42,17 @@ class Top extends \Magento\Backend\Block\Dashboard\Grid protected $_template = 'Magento_Backend::dashboard/grid.phtml'; /** - * @param \Magento\Backend\Block\Template\Context $context - * @param \Magento\Backend\Helper\Data $backendHelper - * @param \Magento\Framework\Module\Manager $moduleManager - * @param \Magento\Search\Model\ResourceModel\Query\CollectionFactory $queriesFactory + * @param TemplateContext $context + * @param BackendHelper $backendHelper + * @param ModuleManager $moduleManager + * @param QueryCollectionFactory $queriesFactory * @param array $data */ public function __construct( - \Magento\Backend\Block\Template\Context $context, - \Magento\Backend\Helper\Data $backendHelper, - \Magento\Framework\Module\Manager $moduleManager, - \Magento\Search\Model\ResourceModel\Query\CollectionFactory $queriesFactory, + TemplateContext $context, + BackendHelper $backendHelper, + ModuleManager $moduleManager, + QueryCollectionFactory $queriesFactory, array $data = [] ) { $this->_moduleManager = $moduleManager; @@ -98,7 +106,7 @@ protected function _prepareColumns() 'header' => __('Search Term'), 'sortable' => false, 'index' => 'query_text', - 'renderer' => \Magento\Backend\Block\Dashboard\Searches\Renderer\Searchquery::class, + 'renderer' => Searchquery::class, 'header_css_class' => 'col-search-query', 'column_css_class' => 'col-search-query' ] diff --git a/app/code/Magento/Search/Block/Adminhtml/Reports/Search.php b/app/code/Magento/Search/Block/Adminhtml/Reports/Search.php index 4e8803b62c865..96b921695fd78 100644 --- a/app/code/Magento/Search/Block/Adminhtml/Reports/Search.php +++ b/app/code/Magento/Search/Block/Adminhtml/Reports/Search.php @@ -5,13 +5,15 @@ */ namespace Magento\Search\Block\Adminhtml\Reports; +use Magento\Backend\Block\Widget\Grid\Container; + /** * Adminhtml search report page content block * * @api * @since 100.0.2 */ -class Search extends \Magento\Backend\Block\Widget\Grid\Container +class Search extends Container { /** * Initialize Grid Container diff --git a/app/code/Magento/Search/Block/Adminhtml/Synonyms.php b/app/code/Magento/Search/Block/Adminhtml/Synonyms.php index fedcf6a2ed9fb..479ad86a13189 100644 --- a/app/code/Magento/Search/Block/Adminhtml/Synonyms.php +++ b/app/code/Magento/Search/Block/Adminhtml/Synonyms.php @@ -5,10 +5,12 @@ */ namespace Magento\Search\Block\Adminhtml; +use Magento\Backend\Block\Widget\Grid\Container; + /** * Adminhtml synonym group content block */ -class Synonyms extends \Magento\Backend\Block\Widget\Grid\Container +class Synonyms extends Container { /** * @return void diff --git a/app/code/Magento/Search/Block/Adminhtml/Synonyms/Edit/GenericButton.php b/app/code/Magento/Search/Block/Adminhtml/Synonyms/Edit/GenericButton.php index 8dba34c8768bb..74f26e85eb98b 100644 --- a/app/code/Magento/Search/Block/Adminhtml/Synonyms/Edit/GenericButton.php +++ b/app/code/Magento/Search/Block/Adminhtml/Synonyms/Edit/GenericButton.php @@ -5,6 +5,9 @@ */ namespace Magento\Search\Block\Adminhtml\Synonyms\Edit; +use Magento\Backend\Block\Widget\Context as WidgetContext; +use Magento\Framework\Registry; +use Magento\Framework\UrlInterface; use Magento\Search\Controller\RegistryConstants; /** @@ -15,29 +18,21 @@ class GenericButton /** * Url Builder * - * @var \Magento\Framework\UrlInterface + * @var UrlInterface */ protected $urlBuilder; - /** - * Registry - * - * @var \Magento\Framework\Registry - */ - protected $registry; - /** * Constructor * - * @param \Magento\Backend\Block\Widget\Context $context - * @param \Magento\Framework\Registry $registry + * @param WidgetContext $context + * @param Registry $registry Registry */ public function __construct( - \Magento\Backend\Block\Widget\Context $context, - \Magento\Framework\Registry $registry + WidgetContext $context, + protected readonly Registry $registry ) { $this->urlBuilder = $context->getUrlBuilder(); - $this->registry = $registry; } /** diff --git a/app/code/Magento/Search/Block/Adminhtml/Term.php b/app/code/Magento/Search/Block/Adminhtml/Term.php index 444e7afaf74a5..4cb39cccb5876 100644 --- a/app/code/Magento/Search/Block/Adminhtml/Term.php +++ b/app/code/Magento/Search/Block/Adminhtml/Term.php @@ -5,11 +5,13 @@ */ namespace Magento\Search\Block\Adminhtml; +use Magento\Backend\Block\Widget\Grid\Container; + /** * @api * @since 100.0.2 */ -class Term extends \Magento\Backend\Block\Widget\Grid\Container +class Term extends Container { /** * @return void diff --git a/app/code/Magento/Search/Block/Adminhtml/Term/Edit.php b/app/code/Magento/Search/Block/Adminhtml/Term/Edit.php index 62c06e490650c..41f299c342c7f 100644 --- a/app/code/Magento/Search/Block/Adminhtml/Term/Edit.php +++ b/app/code/Magento/Search/Block/Adminhtml/Term/Edit.php @@ -5,29 +5,34 @@ */ namespace Magento\Search\Block\Adminhtml\Term; +use Magento\Backend\Block\Widget\Context as WidgetContext; +use Magento\Backend\Block\Widget\Form\Container; +use Magento\Framework\Phrase; +use Magento\Framework\Registry; + /** * Admin term edit block * * @api * @since 100.0.2 */ -class Edit extends \Magento\Backend\Block\Widget\Form\Container +class Edit extends Container { /** * Core registry * - * @var \Magento\Framework\Registry + * @var Registry */ protected $coreRegistry; /** - * @param \Magento\Backend\Block\Widget\Context $context - * @param \Magento\Framework\Registry $registry + * @param WidgetContext $context + * @param Registry $registry * @param array $data */ public function __construct( - \Magento\Backend\Block\Widget\Context $context, - \Magento\Framework\Registry $registry, + WidgetContext $context, + Registry $registry, array $data = [] ) { $this->coreRegistry = $registry; @@ -50,7 +55,7 @@ protected function _construct() } /** - * @return \Magento\Framework\Phrase + * @return Phrase */ public function getHeaderText() { diff --git a/app/code/Magento/Search/Block/Adminhtml/Term/Edit/Form.php b/app/code/Magento/Search/Block/Adminhtml/Term/Edit/Form.php index b607d426c57b3..d85112dbf1a39 100644 --- a/app/code/Magento/Search/Block/Adminhtml/Term/Edit/Form.php +++ b/app/code/Magento/Search/Block/Adminhtml/Term/Edit/Form.php @@ -12,30 +12,41 @@ namespace Magento\Search\Block\Adminhtml\Term\Edit; +use Magento\Backend\Block\Store\Switcher\Form\Renderer\Fieldset\Element as FieldsetElement; +use Magento\Backend\Block\Template\Context as TemplateContext; +use Magento\Backend\Block\Widget\Form\Generic as FormGeneric; +use Magento\Framework\Data\Form as FormData; +use Magento\Framework\Data\FormFactory; +use Magento\Framework\Exception\LocalizedException; +use Magento\Framework\Exception\NoSuchEntityException; +use Magento\Framework\Registry; +use Magento\Search\Model\Query as ModelQuery; +use Magento\Store\Model\System\Store as SystemStore; + /** * Edit Form Block * * Class \Magento\Search\Block\Adminhtml\Term\Edit\Form */ -class Form extends \Magento\Backend\Block\Widget\Form\Generic +class Form extends FormGeneric { /** - * @var \Magento\Store\Model\System\Store + * @var SystemStore */ protected $_systemStore; /** - * @param \Magento\Backend\Block\Template\Context $context - * @param \Magento\Framework\Registry $registry - * @param \Magento\Framework\Data\FormFactory $formFactory - * @param \Magento\Store\Model\System\Store $systemStore + * @param TemplateContext $context + * @param Registry $registry + * @param FormFactory $formFactory + * @param SystemStore $systemStore * @param array $data */ public function __construct( - \Magento\Backend\Block\Template\Context $context, - \Magento\Framework\Registry $registry, - \Magento\Framework\Data\FormFactory $formFactory, - \Magento\Store\Model\System\Store $systemStore, + TemplateContext $context, + Registry $registry, + FormFactory $formFactory, + SystemStore $systemStore, array $data = [] ) { $this->_systemStore = $systemStore; @@ -58,16 +69,16 @@ protected function _construct() * Prepare form fields * * @return $this - * @throws \Magento\Framework\Exception\LocalizedException - * @throws \Magento\Framework\Exception\NoSuchEntityException + * @throws LocalizedException + * @throws NoSuchEntityException * @SuppressWarnings(PHPMD.ExcessiveMethodLength) */ protected function _prepareForm() { + /* @var ModelQuery $model */ $model = $this->_coreRegistry->registry('current_catalog_search'); - /* @var $model \Magento\Search\Model\Query */ - /** @var \Magento\Framework\Data\Form $form */ + /** @var FormData $form */ $form = $this->_formFactory->create( ['data' => ['id' => 'edit_form', 'action' => $this->getData('action'), 'method' => 'post']] ); @@ -104,7 +115,7 @@ protected function _prepareForm() ] ); $renderer = $this->getLayout()->createBlock( - \Magento\Backend\Block\Store\Switcher\Form\Renderer\Fieldset\Element::class + FieldsetElement::class ); $field->setRenderer($renderer); } else { diff --git a/app/code/Magento/Search/Block/Term.php b/app/code/Magento/Search/Block/Term.php index ed6a2c5215b54..2789d076175bf 100644 --- a/app/code/Magento/Search/Block/Term.php +++ b/app/code/Magento/Search/Block/Term.php @@ -130,7 +130,7 @@ public function getTerms() */ public function getSearchUrl($obj) { - /** @var $url UrlInterface */ + /** @var UrlInterface $url */ $url = $this->_urlFactory->create(); /* * url encoding will be done in Url.php http_build_query diff --git a/app/code/Magento/Search/Controller/Adminhtml/Synonyms/Delete.php b/app/code/Magento/Search/Controller/Adminhtml/Synonyms/Delete.php index 06d15d4d7124e..7d52e2d95305d 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Synonyms/Delete.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Synonyms/Delete.php @@ -6,7 +6,14 @@ namespace Magento\Search\Controller\Adminhtml\Synonyms; +use Exception; +use Magento\Backend\App\Action\Context as ActionContext; +use Magento\Backend\Model\View\Result\Redirect as ResultRedirect; use Magento\Framework\App\Action\HttpPostActionInterface; +use Magento\Framework\Exception\LocalizedException; +use Magento\Search\Api\SynonymGroupRepositoryInterface; +use Magento\Search\Model\SynonymGroup; +use Psr\Log\LoggerInterface; /** * Delete Controller @@ -21,26 +28,26 @@ class Delete extends \Magento\Backend\App\Action implements HttpPostActionInterf const ADMIN_RESOURCE = 'Magento_Search::synonyms'; /** - * @var \Psr\Log\LoggerInterface $logger + * @var LoggerInterface $logger */ private $logger; /** - * @var \Magento\Search\Api\SynonymGroupRepositoryInterface $synGroupRepository + * @var SynonymGroupRepositoryInterface $synGroupRepository */ private $synGroupRepository; /** * Constructor * - * @param \Magento\Backend\App\Action\Context $context - * @param \Magento\Search\Api\SynonymGroupRepositoryInterface $synGroupRepository - * @param \Psr\Log\LoggerInterface $logger + * @param ActionContext $context + * @param SynonymGroupRepositoryInterface $synGroupRepository + * @param LoggerInterface $logger */ public function __construct( - \Magento\Backend\App\Action\Context $context, - \Magento\Search\Api\SynonymGroupRepositoryInterface $synGroupRepository, - \Psr\Log\LoggerInterface $logger + ActionContext $context, + SynonymGroupRepositoryInterface $synGroupRepository, + LoggerInterface $logger ) { $this->synGroupRepository = $synGroupRepository; $this->logger = $logger; @@ -50,28 +57,26 @@ public function __construct( /** * Delete action * - * @return \Magento\Backend\Model\View\Result\Redirect + * @return ResultRedirect */ public function execute() { $id = $this->getRequest()->getParam('group_id'); - /** @var \Magento\Backend\Model\View\Result\Redirect $resultRedirect */ + /** @var ResultRedirect $resultRedirect */ $resultRedirect = $this->resultRedirectFactory->create(); - if ($id) { - try { - /** @var \Magento\Search\Model\SynonymGroup $synGroupModel */ - $synGroupModel = $this->synGroupRepository->get($id); - $this->synGroupRepository->delete($synGroupModel); - $this->messageManager->addSuccessMessage(__('The synonym group has been deleted.')); - } catch (\Magento\Framework\Exception\LocalizedException $e) { - $this->messageManager->addErrorMessage($e->getMessage()); - $this->logger->error($e); - } catch (\Exception $e) { - $this->messageManager->addErrorMessage( - __('An error was encountered while performing delete operation.') - ); - $this->logger->error($e); - } + if ($id) try { + /** @var SynonymGroup $synGroupModel */ + $synGroupModel = $this->synGroupRepository->get($id); + $this->synGroupRepository->delete($synGroupModel); + $this->messageManager->addSuccessMessage(__('The synonym group has been deleted.')); + } catch (LocalizedException $e) { + $this->messageManager->addErrorMessage($e->getMessage()); + $this->logger->error($e); + } catch (Exception $e) { + $this->messageManager->addErrorMessage( + __('An error was encountered while performing delete operation.') + ); + $this->logger->error($e); } else { $this->messageManager->addErrorMessage(__('We can\'t find a synonym group to delete.')); } diff --git a/app/code/Magento/Search/Controller/Adminhtml/Synonyms/Edit.php b/app/code/Magento/Search/Controller/Adminhtml/Synonyms/Edit.php index adc4ecc52030a..d3945e953faef 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Synonyms/Edit.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Synonyms/Edit.php @@ -6,7 +6,16 @@ */ namespace Magento\Search\Controller\Adminhtml\Synonyms; -class Edit extends \Magento\Backend\App\Action +use Magento\Backend\App\Action; +use Magento\Backend\App\Action\Context as ActionContextAlias; +use Magento\Backend\Model\View\Result\Redirect as ResultRedirect; +use Magento\Framework\Controller\ResultInterface; +use Magento\Framework\Registry; +use Magento\Search\Api\Data\SynonymGroupInterface; +use Magento\Search\Api\SynonymGroupRepositoryInterface; +use Magento\Search\Controller\RegistryConstants; + +class Edit extends Action { /** * Authorization level of a basic admin session @@ -15,58 +24,40 @@ class Edit extends \Magento\Backend\App\Action */ const ADMIN_RESOURCE = 'Magento_Search::synonyms'; - /** - * @var \Magento\Framework\Registry $registry - */ - private $registry; - - /** - * @var \Magento\Search\Controller\Adminhtml\Synonyms\ResultPageBuilder $pageBuilder - */ - private $pageBuilder; - - /** - * @var \Magento\Search\Api\SynonymGroupRepositoryInterface $synGroupRepository - */ - private $synGroupRepository; - /** * Edit constructor. * - * @param \Magento\Backend\App\Action\Context $context - * @param \Magento\Framework\Registry $registry - * @param \Magento\Search\Controller\Adminhtml\Synonyms\ResultPageBuilder $pageBuilder - * @param \Magento\Search\Api\SynonymGroupRepositoryInterface $synGroupRepository + * @param ActionContextAlias $context + * @param Registry $registry + * @param ResultPageBuilder $pageBuilder + * @param SynonymGroupRepositoryInterface $synGroupRepository */ public function __construct( - \Magento\Backend\App\Action\Context $context, - \Magento\Framework\Registry $registry, - \Magento\Search\Controller\Adminhtml\Synonyms\ResultPageBuilder $pageBuilder, - \Magento\Search\Api\SynonymGroupRepositoryInterface $synGroupRepository + ActionContextAlias $context, + private readonly Registry $registry, + private readonly ResultPageBuilder $pageBuilder, + private readonly SynonymGroupRepositoryInterface $synGroupRepository ) { - $this->registry = $registry; - $this->synGroupRepository = $synGroupRepository; - $this->pageBuilder = $pageBuilder; parent::__construct($context); } /** * Edit Synonym Group * - * @return \Magento\Framework\Controller\ResultInterface + * @return ResultInterface * @SuppressWarnings(PHPMD.NPathComplexity) */ public function execute() { // 1. Get ID and create model $groupId = $this->getRequest()->getParam('group_id'); - /** @var \Magento\Search\Api\Data\SynonymGroupInterface $synGroup */ + /** @var SynonymGroupInterface $synGroup */ $synGroup = $this->synGroupRepository->get($groupId); // 2. Initial checking if ($groupId && (!$synGroup->getGroupId())) { $this->messageManager->addErrorMessage(__('This synonyms group no longer exists.')); - /** @var \Magento\Backend\Model\View\Result\Redirect $resultRedirect */ + /** @var ResultRedirect $resultRedirect */ $resultRedirect = $this->resultRedirectFactory->create(); return $resultRedirect->setPath('*/*/'); } @@ -82,7 +73,7 @@ public function execute() // 4. Register model to use later in save $this->registry->register( - \Magento\Search\Controller\RegistryConstants::SEARCH_SYNONYMS, + RegistryConstants::SEARCH_SYNONYMS, $synGroup ); diff --git a/app/code/Magento/Search/Controller/Adminhtml/Synonyms/Index.php b/app/code/Magento/Search/Controller/Adminhtml/Synonyms/Index.php index 260c37bd21b0f..a93b55697545f 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Synonyms/Index.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Synonyms/Index.php @@ -5,7 +5,11 @@ */ namespace Magento\Search\Controller\Adminhtml\Synonyms; -class Index extends \Magento\Backend\App\Action +use Magento\Backend\App\Action; +use Magento\Backend\App\Action\Context as ActionContext; +use Magento\Backend\Model\View\Result\Page as ResultPage; + +class Index extends Action { /** * Authorization level of a basic admin session @@ -14,29 +18,23 @@ class Index extends \Magento\Backend\App\Action */ const ADMIN_RESOURCE = 'Magento_Search::synonyms'; - /** - * @var \Magento\Search\Controller\Adminhtml\Synonyms\ResultPageBuilder $pageBuilder - */ - private $pageBuilder; - /** * constructor. * - * @param \Magento\Backend\App\Action\Context $context - * @param \Magento\Search\Controller\Adminhtml\Synonyms\ResultPageBuilder $pageBuilder + * @param ActionContext $context + * @param ResultPageBuilder $pageBuilder */ public function __construct( - \Magento\Backend\App\Action\Context $context, - \Magento\Search\Controller\Adminhtml\Synonyms\ResultPageBuilder $pageBuilder + ActionContext $context, + private readonly ResultPageBuilder $pageBuilder ) { - $this->pageBuilder = $pageBuilder; parent::__construct($context); } /** * Synonyms grid * - * @return \Magento\Backend\Model\View\Result\Page + * @return ResultPage */ public function execute() { diff --git a/app/code/Magento/Search/Controller/Adminhtml/Synonyms/MassDelete.php b/app/code/Magento/Search/Controller/Adminhtml/Synonyms/MassDelete.php index c32ca04d39b61..aa17c7d6bb1ef 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Synonyms/MassDelete.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Synonyms/MassDelete.php @@ -6,14 +6,23 @@ namespace Magento\Search\Controller\Adminhtml\Synonyms; +use Exception; +use Magento\Backend\App\Action; +use Magento\Backend\App\Action\Context; +use Magento\Backend\Model\View\Result\Redirect as ResultRedirect; use Magento\Framework\App\Action\HttpPostActionInterface; +use Magento\Framework\Controller\ResultFactory; +use Magento\Framework\Exception\LocalizedException; +use Magento\Search\Api\SynonymGroupRepositoryInterface; +use Magento\Search\Model\ResourceModel\SynonymGroup\CollectionFactory; +use Magento\Ui\Component\MassAction\Filter; /** * Mass-Delete Controller. * * @SuppressWarnings(PHPMD.CouplingBetweenObjects) */ -class MassDelete extends \Magento\Backend\App\Action implements HttpPostActionInterface +class MassDelete extends Action implements HttpPostActionInterface { /** * Authorization level of a basic admin session. @@ -22,46 +31,28 @@ class MassDelete extends \Magento\Backend\App\Action implements HttpPostActionIn */ const ADMIN_RESOURCE = 'Magento_Search::synonyms'; - /** - * @var \Magento\Ui\Component\MassAction\Filter - */ - private $filter; - - /** - * @var \Magento\Search\Model\ResourceModel\SynonymGroup\CollectionFactory - */ - private $collectionFactory; - - /** - * @var \Magento\Search\Api\SynonymGroupRepositoryInterface $synGroupRepository - */ - private $synGroupRepository; - /** * MassDelete constructor. * - * @param \Magento\Backend\App\Action\Context $context - * @param \Magento\Ui\Component\MassAction\Filter $filter - * @param \Magento\Search\Model\ResourceModel\SynonymGroup\CollectionFactory $collectionFactory - * @param \Magento\Search\Api\SynonymGroupRepositoryInterface $synGroupRepository + * @param Context $context + * @param Filter $filter + * @param CollectionFactory $collectionFactory + * @param SynonymGroupRepositoryInterface $synGroupRepository */ public function __construct( - \Magento\Backend\App\Action\Context $context, - \Magento\Ui\Component\MassAction\Filter $filter, - \Magento\Search\Model\ResourceModel\SynonymGroup\CollectionFactory $collectionFactory, - \Magento\Search\Api\SynonymGroupRepositoryInterface $synGroupRepository + Context $context, + private readonly Filter $filter, + private readonly CollectionFactory $collectionFactory, + private readonly SynonymGroupRepositoryInterface $synGroupRepository ) { - $this->filter = $filter; - $this->collectionFactory = $collectionFactory; - $this->synGroupRepository = $synGroupRepository; parent::__construct($context); } /** * Execute action. * - * @return \Magento\Backend\Model\View\Result\Redirect - * @throws \Magento\Framework\Exception\LocalizedException|\Exception + * @return ResultRedirect + * @throws LocalizedException|Exception */ public function execute() { @@ -73,7 +64,7 @@ public function execute() try { $this->synGroupRepository->delete($synonymGroup); $deletedItems++; - } catch (\Exception $e) { + } catch (Exception $e) { $this->messageManager->addErrorMessage($e->getMessage()); } } @@ -88,8 +79,8 @@ public function execute() __('A total of %1 synonym group(s) have been deleted.', $deletedItems) ); } - /** @var \Magento\Backend\Model\View\Result\Redirect $resultRedirect */ - $resultRedirect = $this->resultFactory->create(\Magento\Framework\Controller\ResultFactory::TYPE_REDIRECT); + /** @var ResultRedirect $resultRedirect */ + $resultRedirect = $this->resultFactory->create(ResultFactory::TYPE_REDIRECT); return $resultRedirect->setPath('*/*/'); } } diff --git a/app/code/Magento/Search/Controller/Adminhtml/Synonyms/NewAction.php b/app/code/Magento/Search/Controller/Adminhtml/Synonyms/NewAction.php index 6061e0b434311..c1f7351c077cc 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Synonyms/NewAction.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Synonyms/NewAction.php @@ -5,7 +5,12 @@ */ namespace Magento\Search\Controller\Adminhtml\Synonyms; -class NewAction extends \Magento\Backend\App\Action +use Magento\Backend\App\Action; +use Magento\Backend\App\Action\Context as ActionContext; +use Magento\Backend\Model\View\Result\Forward as ResultForward; +use Magento\Backend\Model\View\Result\ForwardFactory; + +class NewAction extends Action { /** * Authorization level of a basic admin session @@ -14,29 +19,23 @@ class NewAction extends \Magento\Backend\App\Action */ const ADMIN_RESOURCE = 'Magento_Search::synonyms'; - /** - * @var \Magento\Backend\Model\View\Result\ForwardFactory $forwardFactory - */ - private $forwardFactory; - /** * New Synonym Group Action constructor. * - * @param \Magento\Backend\App\Action\Context $context - * @param \Magento\Backend\Model\View\Result\ForwardFactory $forwardFactory + * @param ActionContext $context + * @param ForwardFactory $forwardFactory */ public function __construct( - \Magento\Backend\App\Action\Context $context, - \Magento\Backend\Model\View\Result\ForwardFactory $forwardFactory + ActionContext $context, + private readonly ForwardFactory $forwardFactory ) { - $this->forwardFactory = $forwardFactory; parent::__construct($context); } /** * Create new synonyms group action * - * @return \Magento\Backend\Model\View\Result\Forward + * @return ResultForward */ public function execute() { diff --git a/app/code/Magento/Search/Controller/Adminhtml/Synonyms/ResultPageBuilder.php b/app/code/Magento/Search/Controller/Adminhtml/Synonyms/ResultPageBuilder.php index d337dc85fcb38..9e0e051adb168 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Synonyms/ResultPageBuilder.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Synonyms/ResultPageBuilder.php @@ -5,8 +5,11 @@ */ namespace Magento\Search\Controller\Adminhtml\Synonyms; +use Magento\Backend\Model\View\Result\Page as ResultPage; +use Magento\Framework\Message\ManagerInterface; use Magento\Framework\Search\EngineResolverInterface; use Magento\Framework\Search\SearchEngine\ConfigInterface; +use Magento\Framework\View\Result\PageFactory; /** * Result page builder class @@ -14,55 +17,31 @@ */ class ResultPageBuilder { - /** - * @var \Magento\Framework\View\Result\PageFactory $resultPageFactory - */ - protected $resultPageFactory; - - /** - * @var EngineResolverInterface $engineResolver - */ - protected $engineResolver; - - /** - * @var ConfigInterface $searchFeatureConfig - */ - protected $searchFeatureConfig; - - /** - * @var \Magento\Framework\Message\ManagerInterface - */ - protected $messageManager; - /** * Constructor * - * @param \Magento\Framework\View\Result\PageFactory $resultPageFactory + * @param PageFactory $resultPageFactory * @param EngineResolverInterface $engineResolver * @param ConfigInterface $searchFeatureConfig - * @param \Magento\Framework\Message\ManagerInterface $messageManager + * @param ManagerInterface $messageManager */ public function __construct( - \Magento\Framework\View\Result\PageFactory $resultPageFactory, - EngineResolverInterface $engineResolver, - ConfigInterface $searchFeatureConfig, - \Magento\Framework\Message\ManagerInterface $messageManager + protected readonly PageFactory $resultPageFactory, + protected readonly EngineResolverInterface $engineResolver, + protected readonly ConfigInterface $searchFeatureConfig, + protected readonly ManagerInterface $messageManager ) { - $this->resultPageFactory = $resultPageFactory; - $this->engineResolver = $engineResolver; - $this->searchFeatureConfig = $searchFeatureConfig; - $this->messageManager = $messageManager; } /** * Build the initial page layout, menu and breadcrumb trail * - * @return \Magento\Backend\Model\View\Result\Page + * @return ResultPage */ public function build() { $this->checkSearchEngineSupport(); - /** @var \Magento\Backend\Model\View\Result\Page $resultPage **/ + /** @var ResultPage $resultPage **/ $resultPage = $this->resultPageFactory->create(); // Make it active on menu and set breadcrumb trail diff --git a/app/code/Magento/Search/Controller/Adminhtml/Synonyms/Save.php b/app/code/Magento/Search/Controller/Adminhtml/Synonyms/Save.php index c890179073a39..0225d4a42ff1d 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Synonyms/Save.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Synonyms/Save.php @@ -6,12 +6,18 @@ */ namespace Magento\Search\Controller\Adminhtml\Synonyms; +use Magento\Backend\App\Action; +use Magento\Backend\App\Action\Context as ActionContext; +use Magento\Backend\Model\View\Result\Redirect as ResultRedirect; +use Magento\Framework\Controller\ResultInterface; +use Magento\Framework\Phrase; +use Magento\Search\Api\SynonymGroupRepositoryInterface; use Magento\Search\Model\Synonym\MergeConflictException; /** * @SuppressWarnings(PHPMD.AllPurposeAction) */ -class Save extends \Magento\Backend\App\Action +class Save extends Action { /** * Authorization level of a basic admin session @@ -20,33 +26,27 @@ class Save extends \Magento\Backend\App\Action */ public const ADMIN_RESOURCE = 'Magento_Search::synonyms'; - /** - * @var \Magento\Search\Api\SynonymGroupRepositoryInterface $synGroupRepository - */ - private $synGroupRepository; - /** * MassDelete constructor. * - * @param \Magento\Backend\App\Action\Context $context - * @param \Magento\Search\Api\SynonymGroupRepositoryInterface $synGroupRepository + * @param ActionContext $context + * @param SynonymGroupRepositoryInterface $synGroupRepository */ public function __construct( - \Magento\Backend\App\Action\Context $context, - \Magento\Search\Api\SynonymGroupRepositoryInterface $synGroupRepository + ActionContext $context, + private readonly SynonymGroupRepositoryInterface $synGroupRepository ) { - $this->synGroupRepository = $synGroupRepository; parent::__construct($context); } /** * Save action * - * @return \Magento\Framework\Controller\ResultInterface + * @return ResultInterface */ public function execute() { - /** @var \Magento\Backend\Model\View\Result\Redirect $resultRedirect */ + /** @var ResultRedirect $resultRedirect */ $resultRedirect = $this->resultRedirectFactory->create(); // check if data sent @@ -110,7 +110,7 @@ public function execute() * Constructs the error message from the Merge conflict exception * * @param MergeConflictException $exception - * @return \Magento\Framework\Phrase + * @return Phrase */ private function getErrorMessage(MergeConflictException $exception) { diff --git a/app/code/Magento/Search/Controller/Adminhtml/Term.php b/app/code/Magento/Search/Controller/Adminhtml/Term.php index c202b0b2382ab..4b0d8d3799081 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Term.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Term.php @@ -6,6 +6,7 @@ namespace Magento\Search\Controller\Adminhtml; use Magento\Backend\App\Action; +use Magento\Backend\Model\View\Result\Page as ResultPage; use Magento\Framework\Controller\ResultFactory; abstract class Term extends Action @@ -18,11 +19,11 @@ abstract class Term extends Action const ADMIN_RESOURCE = 'Magento_Search::search'; /** - * @return \Magento\Backend\Model\View\Result\Page + * @return ResultPage */ protected function createPage() { - /** @var \Magento\Backend\Model\View\Result\Page $resultPage */ + /** @var ResultPage $resultPage */ $resultPage = $this->resultFactory->create(ResultFactory::TYPE_PAGE); $resultPage->setActiveMenu('Magento_Search::search_terms') ->addBreadcrumb(__('Search'), __('Search')); diff --git a/app/code/Magento/Search/Controller/Adminhtml/Term/Delete.php b/app/code/Magento/Search/Controller/Adminhtml/Term/Delete.php index ce3dfcc601fa4..89762cb95c08b 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Term/Delete.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Term/Delete.php @@ -5,23 +5,25 @@ */ namespace Magento\Search\Controller\Adminhtml\Term; +use Magento\Backend\Model\View\Result\Redirect as ResultRedirect; use Magento\Framework\App\Action\HttpPostActionInterface; use Magento\Search\Controller\Adminhtml\Term as TermController; use Magento\Framework\Controller\ResultFactory; +use Magento\Search\Model\Query as ModelQuery; class Delete extends TermController implements HttpPostActionInterface { /** - * @return \Magento\Backend\Model\View\Result\Redirect + * @return ResultRedirect */ public function execute() { $id = $this->getRequest()->getParam('id'); - /** @var \Magento\Backend\Model\View\Result\Redirect $redirectResult */ + /** @var ResultRedirect $redirectResult */ $resultRedirect = $this->resultFactory->create(ResultFactory::TYPE_REDIRECT); if ($id) { try { - $model = $this->_objectManager->create(\Magento\Search\Model\Query::class); + $model = $this->_objectManager->create(ModelQuery::class); $model->setId($id); $model->delete(); $this->messageManager->addSuccessMessage(__('You deleted the search.')); diff --git a/app/code/Magento/Search/Controller/Adminhtml/Term/Edit.php b/app/code/Magento/Search/Controller/Adminhtml/Term/Edit.php index cd1ef7553c7ec..90ed818f45935 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Term/Edit.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Term/Edit.php @@ -5,47 +5,43 @@ */ namespace Magento\Search\Controller\Adminhtml\Term; +use Magento\Backend\Model\Session as BackendSession; +use Magento\Backend\Model\View\Result\Redirect as ResultRedirect; use Magento\Framework\App\Action\HttpGetActionInterface as HttpGetActionInterface; +use Magento\Framework\Controller\ResultInterface; use Magento\Search\Controller\Adminhtml\Term as TermController; use Magento\Backend\App\Action\Context; use Magento\Framework\Registry; use Magento\Framework\Controller\ResultFactory; +use Magento\Search\Model\Query as ModelQuery; class Edit extends TermController implements HttpGetActionInterface { /** - * Core registry - * - * @var \Magento\Framework\Registry - */ - protected $coreRegistry; - - /** - * @param \Magento\Backend\App\Action\Context $context - * @param \Magento\Framework\Registry $coreRegistry + * @param Context $context + * @param Registry $coreRegistry Core registry */ public function __construct( Context $context, - Registry $coreRegistry + protected readonly Registry $coreRegistry ) { - $this->coreRegistry = $coreRegistry; parent::__construct($context); } /** - * @return \Magento\Framework\Controller\ResultInterface + * @return ResultInterface * @SuppressWarnings(PHPMD.NPathComplexity) */ public function execute() { $id = $this->getRequest()->getParam('id'); - $model = $this->_objectManager->create(\Magento\Search\Model\Query::class); + $model = $this->_objectManager->create(ModelQuery::class); if ($id) { $model->load($id); if (!$model->getId()) { $this->messageManager->addErrorMessage(__('This search no longer exists.')); - /** @var \Magento\Backend\Model\View\Result\Redirect $resultRedirect */ + /** @var ResultRedirect $resultRedirect */ $resultRedirect = $this->resultFactory->create(ResultFactory::TYPE_REDIRECT); $resultRedirect->setPath('search/*'); return $resultRedirect; @@ -53,7 +49,7 @@ public function execute() } // set entered data if was error when we do save - $data = $this->_objectManager->get(\Magento\Backend\Model\Session::class)->getPageData(true); + $data = $this->_objectManager->get(BackendSession::class)->getPageData(true); if (!empty($data)) { $model->addData($data); } diff --git a/app/code/Magento/Search/Controller/Adminhtml/Term/ExportSearchCsv.php b/app/code/Magento/Search/Controller/Adminhtml/Term/ExportSearchCsv.php index 128fa1c6c687c..2258e5398138c 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Term/ExportSearchCsv.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Term/ExportSearchCsv.php @@ -5,6 +5,9 @@ */ namespace Magento\Search\Controller\Adminhtml\Term; +use Exception; +use Magento\Framework\App\ResponseInterface; +use Magento\Framework\View\Result\Layout as ResultLayout; use Magento\Search\Controller\Adminhtml\Term as TermController; use Magento\Backend\App\Action\Context; use Magento\Framework\App\Response\Http\FileFactory; @@ -14,31 +17,25 @@ class ExportSearchCsv extends TermController { /** - * @var \Magento\Framework\App\Response\Http\FileFactory - */ - protected $fileFactory; - - /** - * @param \Magento\Backend\App\Action\Context $context - * @param \Magento\Framework\App\Response\Http\FileFactory $fileFactory + * @param Context $context + * @param FileFactory $fileFactory */ public function __construct( Context $context, - FileFactory $fileFactory + protected readonly FileFactory $fileFactory ) { - $this->fileFactory = $fileFactory; parent::__construct($context); } /** * Export search report grid to CSV format * - * @return \Magento\Framework\App\ResponseInterface - * @throws \Exception + * @return ResponseInterface + * @throws Exception */ public function execute() { - /** @var \Magento\Framework\View\Result\Layout $resultLayout */ + /** @var ResultLayout $resultLayout */ $resultLayout = $this->resultFactory->create(ResultFactory::TYPE_LAYOUT); $content = $resultLayout->getLayout()->getChildBlock('adminhtml.report.search.grid', 'grid.export'); return $this->fileFactory->create('search.csv', $content->getCsvFile(), DirectoryList::VAR_DIR); diff --git a/app/code/Magento/Search/Controller/Adminhtml/Term/ExportSearchExcel.php b/app/code/Magento/Search/Controller/Adminhtml/Term/ExportSearchExcel.php index d7e2b02bc5249..430454f499ef9 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Term/ExportSearchExcel.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Term/ExportSearchExcel.php @@ -5,6 +5,9 @@ */ namespace Magento\Search\Controller\Adminhtml\Term; +use Exception; +use Magento\Framework\App\ResponseInterface; +use Magento\Framework\View\Result\Layout as ResultLayout; use Magento\Search\Controller\Adminhtml\Term as TermController; use Magento\Backend\App\Action\Context; use Magento\Framework\App\Response\Http\FileFactory; @@ -14,31 +17,25 @@ class ExportSearchExcel extends TermController { /** - * @var \Magento\Framework\App\Response\Http\FileFactory - */ - protected $fileFactory; - - /** - * @param \Magento\Backend\App\Action\Context $context - * @param \Magento\Framework\App\Response\Http\FileFactory $fileFactory + * @param Context $context + * @param FileFactory $fileFactory */ public function __construct( Context $context, - FileFactory $fileFactory + protected readonly FileFactory $fileFactory ) { - $this->fileFactory = $fileFactory; parent::__construct($context); } /** * Export search report to Excel XML format * - * @return \Magento\Framework\App\ResponseInterface - * @throws \Exception + * @return ResponseInterface + * @throws Exception */ public function execute() { - /** @var \Magento\Framework\View\Result\Layout $resultLayout */ + /** @var ResultLayout $resultLayout */ $resultLayout = $this->resultFactory->create(ResultFactory::TYPE_LAYOUT); $content = $resultLayout->getLayout()->getChildBlock('adminhtml.report.search.grid', 'grid.export'); return $this->fileFactory->create('search.xml', $content->getExcelFile(), DirectoryList::VAR_DIR); diff --git a/app/code/Magento/Search/Controller/Adminhtml/Term/Index.php b/app/code/Magento/Search/Controller/Adminhtml/Term/Index.php index c097cc08489f9..a0782c81f8146 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Term/Index.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Term/Index.php @@ -5,13 +5,14 @@ */ namespace Magento\Search\Controller\Adminhtml\Term; +use Magento\Backend\Model\View\Result\Page as ResultPage; use Magento\Framework\App\Action\HttpGetActionInterface as HttpGetActionInterface; use Magento\Search\Controller\Adminhtml\Term as TermController; class Index extends TermController implements HttpGetActionInterface { /** - * @return \Magento\Backend\Model\View\Result\Page + * @return ResultPage */ public function execute() { diff --git a/app/code/Magento/Search/Controller/Adminhtml/Term/MassDelete.php b/app/code/Magento/Search/Controller/Adminhtml/Term/MassDelete.php index 84e475b7275ae..28887e8155087 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Term/MassDelete.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Term/MassDelete.php @@ -5,14 +5,17 @@ */ namespace Magento\Search\Controller\Adminhtml\Term; +use Exception; +use Magento\Backend\Model\View\Result\Redirect as ResultRedirect; use Magento\Framework\App\Action\HttpPostActionInterface as HttpPostActionInterface; use Magento\Search\Controller\Adminhtml\Term as TermController; use Magento\Framework\Controller\ResultFactory; +use Magento\Search\Model\Query as ModelQuery; class MassDelete extends TermController implements HttpPostActionInterface { /** - * @return \Magento\Backend\Model\View\Result\Redirect + * @return ResultRedirect */ public function execute() { @@ -22,15 +25,15 @@ public function execute() } else { try { foreach ($searchIds as $searchId) { - $model = $this->_objectManager->create(\Magento\Search\Model\Query::class)->load($searchId); + $model = $this->_objectManager->create(ModelQuery::class)->load($searchId); $model->delete(); } $this->messageManager->addSuccessMessage(__('Total of %1 record(s) were deleted.', count($searchIds))); - } catch (\Exception $e) { + } catch (Exception $e) { $this->messageManager->addErrorMessage($e->getMessage()); } } - /** @var \Magento\Backend\Model\View\Result\Redirect $resultRedirect */ + /** @var ResultRedirect $resultRedirect */ $resultRedirect = $this->resultFactory->create(ResultFactory::TYPE_REDIRECT); $resultRedirect->setPath('search/*/'); return $resultRedirect; diff --git a/app/code/Magento/Search/Controller/Adminhtml/Term/NewAction.php b/app/code/Magento/Search/Controller/Adminhtml/Term/NewAction.php index 49805400713fc..70b692be6500d 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Term/NewAction.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Term/NewAction.php @@ -5,6 +5,7 @@ */ namespace Magento\Search\Controller\Adminhtml\Term; +use Magento\Backend\Model\View\Result\Forward as ResultForward; use Magento\Framework\App\Action\HttpGetActionInterface as HttpGetActionInterface; use Magento\Search\Controller\Adminhtml\Term as TermController; use Magento\Framework\Controller\ResultFactory; @@ -12,11 +13,11 @@ class NewAction extends TermController implements HttpGetActionInterface { /** - * @return \Magento\Backend\Model\View\Result\Forward + * @return ResultForward */ public function execute() { - /** @var \Magento\Backend\Model\View\Result\Forward $resultForward */ + /** @var ResultForward $resultForward */ $resultForward = $this->resultFactory->create(ResultFactory::TYPE_FORWARD); return $resultForward->forward('edit'); } diff --git a/app/code/Magento/Search/Controller/Adminhtml/Term/Report.php b/app/code/Magento/Search/Controller/Adminhtml/Term/Report.php index b0ce066f12709..cbfd1eb5ec45d 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Term/Report.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Term/Report.php @@ -5,6 +5,7 @@ */ namespace Magento\Search\Controller\Adminhtml\Term; +use Magento\Backend\Model\View\Result\Page as ResultPage; use Magento\Framework\App\Action\HttpGetActionInterface as HttpGetActionInterface; use Magento\Reports\Controller\Adminhtml\Index as ReportsIndexController; use Magento\Framework\Controller\ResultFactory; @@ -21,12 +22,12 @@ class Report extends ReportsIndexController implements HttpGetActionInterface /** * Search terms report action * - * @return \Magento\Backend\Model\View\Result\Page + * @return ResultPage */ public function execute() { $this->_eventManager->dispatch('on_view_report', ['report' => 'search']); - /** @var \Magento\Backend\Model\View\Result\Page $resultPage */ + /** @var ResultPage $resultPage */ $resultPage = $this->resultFactory->create(ResultFactory::TYPE_PAGE); $resultPage->setActiveMenu('Magento_Search::report_search_term') ->addBreadcrumb(__('Reports'), __('Reports')) diff --git a/app/code/Magento/Search/Controller/Adminhtml/Term/Save.php b/app/code/Magento/Search/Controller/Adminhtml/Term/Save.php index 39ae07f0d3531..ef893e7eb53de 100644 --- a/app/code/Magento/Search/Controller/Adminhtml/Term/Save.php +++ b/app/code/Magento/Search/Controller/Adminhtml/Term/Save.php @@ -5,36 +5,33 @@ */ namespace Magento\Search\Controller\Adminhtml\Term; +use Exception; +use Magento\Backend\Model\View\Result\Redirect as ResultRedirect; use Magento\Framework\App\Action\HttpPostActionInterface as HttpPostActionInterface; use Magento\Backend\App\Action\Context; use Magento\Framework\Controller\ResultFactory; +use Magento\Search\Model\Query as ModelQuery; use Magento\Search\Model\QueryFactory; use Magento\Search\Controller\Adminhtml\Term as TermController; use Magento\Framework\Exception\LocalizedException; class Save extends TermController implements HttpPostActionInterface { - /** - * @var QueryFactory - */ - private $queryFactory; - /** * @param Context $context * @param QueryFactory $queryFactory */ public function __construct( Context $context, - QueryFactory $queryFactory + private readonly QueryFactory $queryFactory ) { parent::__construct($context); - $this->queryFactory = $queryFactory; } /** * Save search query * - * @return \Magento\Backend\Model\View\Result\Redirect + * @return ResultRedirect * @SuppressWarnings(PHPMD.CyclomaticComplexity) */ public function execute() @@ -50,7 +47,7 @@ public function execute() } catch (LocalizedException $e) { $this->messageManager->addErrorMessage($e->getMessage()); return $this->proceedToEdit($data); - } catch (\Exception $e) { + } catch (Exception $e) { $this->messageManager->addExceptionMessage( $e, __('Something went wrong while saving the search query.') @@ -59,7 +56,7 @@ public function execute() } } - /** @var \Magento\Backend\Model\View\Result\Redirect $resultRedirect */ + /** @var ResultRedirect $resultRedirect */ $redirectResult = $this->resultFactory->create(ResultFactory::TYPE_REDIRECT); return $redirectResult->setPath('search/*'); } @@ -67,8 +64,8 @@ public function execute() /** * Create\Load Query model instance * - * @return \Magento\Search\Model\Query - * @throws \Magento\Framework\Exception\LocalizedException + * @return ModelQuery + * @throws LocalizedException */ private function loadQuery() { @@ -76,14 +73,14 @@ private function loadQuery() $queryText = $this->getRequest()->getPost('query_text', false); $queryId = $this->getRequest()->getPost('query_id', null); - /* @var $model \Magento\Search\Model\Query */ + /* @var ModelQuery $model */ $model = $this->queryFactory->create(); if ($queryText) { $storeId = $this->getRequest()->getPost('store_id', false); $model->setStoreId($storeId); $model->loadByQueryText($queryText); if ($model->getId() && $model->getId() != $queryId) { - throw new \Magento\Framework\Exception\LocalizedException( + throw new LocalizedException( __('You already have an identical search term query.') ); } @@ -98,12 +95,12 @@ private function loadQuery() * Redirect to Edit page * * @param array $data - * @return \Magento\Backend\Model\View\Result\Redirect + * @return ResultRedirect */ private function proceedToEdit($data) { $this->_getSession()->setPageData($data); - /** @var \Magento\Backend\Model\View\Result\Redirect $resultRedirect */ + /** @var ResultRedirect $resultRedirect */ $redirectResult = $this->resultFactory->create(ResultFactory::TYPE_REDIRECT); return $redirectResult->setPath('search/*/edit', ['id' => $this->getRequest()->getPost('query_id', null)]); } diff --git a/app/code/Magento/Search/Controller/Ajax/Suggest.php b/app/code/Magento/Search/Controller/Ajax/Suggest.php index 6eab0949145b7..9a79a72e68eb5 100644 --- a/app/code/Magento/Search/Controller/Ajax/Suggest.php +++ b/app/code/Magento/Search/Controller/Ajax/Suggest.php @@ -8,35 +8,32 @@ use Magento\Framework\App\Action\HttpGetActionInterface as HttpGetActionInterface; use Magento\Framework\App\Action\Action; use Magento\Framework\App\Action\Context; +use Magento\Framework\Controller\Result\Json as ResultJson; +use Magento\Framework\Controller\Result\Redirect as ResultRedirect; +use Magento\Framework\Controller\ResultInterface; use Magento\Search\Model\AutocompleteInterface; use Magento\Framework\Controller\ResultFactory; class Suggest extends Action implements HttpGetActionInterface { /** - * @var \Magento\Search\Model\AutocompleteInterface - */ - private $autocomplete; - - /** - * @param \Magento\Framework\App\Action\Context $context - * @param \Magento\Search\Model\AutocompleteInterface $autocomplete + * @param Context $context + * @param AutocompleteInterface $autocomplete */ public function __construct( Context $context, - AutocompleteInterface $autocomplete + private readonly AutocompleteInterface $autocomplete ) { - $this->autocomplete = $autocomplete; parent::__construct($context); } /** - * @return \Magento\Framework\Controller\ResultInterface + * @return ResultInterface */ public function execute() { if (!$this->getRequest()->getParam('q', false)) { - /** @var \Magento\Framework\Controller\Result\Redirect $resultRedirect */ + /** @var ResultRedirect $resultRedirect */ $resultRedirect = $this->resultFactory->create(ResultFactory::TYPE_REDIRECT); $resultRedirect->setUrl($this->_url->getBaseUrl()); return $resultRedirect; @@ -47,7 +44,7 @@ public function execute() foreach ($autocompleteData as $resultItem) { $responseData[] = $resultItem->toArray(); } - /** @var \Magento\Framework\Controller\Result\Json $resultJson */ + /** @var ResultJson $resultJson */ $resultJson = $this->resultFactory->create(ResultFactory::TYPE_JSON); $resultJson->setData($responseData); return $resultJson; diff --git a/app/code/Magento/Search/Controller/Term/Popular.php b/app/code/Magento/Search/Controller/Term/Popular.php index 734554539bcc9..b0391eb6ef249 100644 --- a/app/code/Magento/Search/Controller/Term/Popular.php +++ b/app/code/Magento/Search/Controller/Term/Popular.php @@ -22,21 +22,6 @@ class Popular extends Action implements HttpGetActionInterface { private const XML_PATH_SEO_SEARCH_TERMS = 'catalog/seo/search_terms'; - /** - * @var ResultForwardFactory - */ - private $resultForwardFactory; - - /** - * @var ResultPageFactory - */ - private $resultPageFactory; - - /** - * @var ScopeConfigInterface - */ - private $scopeConfig; - /** * @param Context $context * @param ResultForwardFactory $resultForwardFactory @@ -45,14 +30,11 @@ class Popular extends Action implements HttpGetActionInterface */ public function __construct( Context $context, - ResultForwardFactory $resultForwardFactory, - ResultPageFactory $resultPageFactory, - ScopeConfigInterface $scopeConfig + private readonly ResultForwardFactory $resultForwardFactory, + private readonly ResultPageFactory $resultPageFactory, + private readonly ScopeConfigInterface $scopeConfig ) { parent::__construct($context); - $this->resultForwardFactory = $resultForwardFactory; - $this->resultPageFactory = $resultPageFactory; - $this->scopeConfig = $scopeConfig; } /** diff --git a/app/code/Magento/Search/Helper/Data.php b/app/code/Magento/Search/Helper/Data.php index e813d7342761f..0a8759c1a8a9d 100644 --- a/app/code/Magento/Search/Helper/Data.php +++ b/app/code/Magento/Search/Helper/Data.php @@ -10,6 +10,7 @@ use Magento\Framework\App\Helper\Context; use Magento\Framework\Escaper; use Magento\Framework\Stdlib\StringUtils; +use Magento\Store\Model\ScopeInterface; use Magento\Store\Model\StoreManagerInterface; use Magento\Search\Model\Query as SearchQuery; use Magento\Search\Model\QueryFactory; @@ -28,13 +29,6 @@ class Data extends AbstractHelper */ protected $_messages = []; - /** - * Magento string lib - * - * @var String - */ - protected $string; - /** * Core store config * @@ -43,36 +37,21 @@ class Data extends AbstractHelper */ protected $scopeConfig; - /** - * @var Escaper - * @since 100.1.0 - */ - protected $escaper; - - /** - * @var \Magento\Store\Model\StoreManagerInterface - * @since 100.1.0 - */ - protected $storeManager; - /** * Construct * * @param Context $context - * @param StringUtils $string + * @param StringUtils $string Magento string lib * @param Escaper $escaper * @param StoreManagerInterface $storeManager */ public function __construct( Context $context, - StringUtils $string, - Escaper $escaper, - StoreManagerInterface $storeManager + protected readonly StringUtils $string, + protected readonly Escaper $escaper, + protected readonly StoreManagerInterface $storeManager ) { - $this->string = $string; $this->scopeConfig = $context->getScopeConfig(); - $this->escaper = $escaper; - $this->storeManager = $storeManager; parent::__construct($context); } @@ -148,7 +127,7 @@ public function getMinQueryLength($store = null) { return $this->scopeConfig->getValue( SearchQuery::XML_PATH_MIN_QUERY_LENGTH, - \Magento\Store\Model\ScopeInterface::SCOPE_STORE, + ScopeInterface::SCOPE_STORE, $store ); } @@ -163,7 +142,7 @@ public function getMaxQueryLength($store = null) { return $this->scopeConfig->getValue( SearchQuery::XML_PATH_MAX_QUERY_LENGTH, - \Magento\Store\Model\ScopeInterface::SCOPE_STORE, + ScopeInterface::SCOPE_STORE, $store ); } diff --git a/app/code/Magento/Search/Model/AdapterFactory.php b/app/code/Magento/Search/Model/AdapterFactory.php index f6d2013bd4886..df69674416aa2 100644 --- a/app/code/Magento/Search/Model/AdapterFactory.php +++ b/app/code/Magento/Search/Model/AdapterFactory.php @@ -5,6 +5,11 @@ */ namespace Magento\Search\Model; +use InvalidArgumentException; +use LogicException; +use Magento\Framework\App\Config\ScopeConfigInterface; +use Magento\Framework\ObjectManagerInterface; +use Magento\Framework\Search\AdapterInterface; use Magento\Framework\Search\EngineResolverInterface; /** @@ -16,18 +21,11 @@ class AdapterFactory /** * Scope configuration * - * @var \Magento\Framework\App\Config\ScopeConfigInterface + * @var ScopeConfigInterface * @deprecated 101.0.0 since it is not used anymore */ protected $scopeConfig; - /** - * Object Manager instance - * - * @var \Magento\Framework\ObjectManagerInterface - */ - protected $objectManager; - /** * Config path * @@ -50,43 +48,36 @@ class AdapterFactory private $adapterPool; /** - * @var EngineResolverInterface - */ - private $engineResolver; - - /** - * @param \Magento\Framework\ObjectManagerInterface $objectManager + * @param ObjectManagerInterface $objectManager Object Manager instance * @param array $adapters * @param EngineResolverInterface $engineResolver */ public function __construct( - \Magento\Framework\ObjectManagerInterface $objectManager, + protected readonly ObjectManagerInterface $objectManager, array $adapters, - EngineResolverInterface $engineResolver + private readonly EngineResolverInterface $engineResolver ) { - $this->objectManager = $objectManager; $this->adapterPool = $adapters; - $this->engineResolver = $engineResolver; } /** * Create Adapter instance * * @param array $data - * @return \Magento\Framework\Search\AdapterInterface + * @return AdapterInterface */ public function create(array $data = []) { $currentAdapter = $this->engineResolver->getCurrentSearchEngine(); if (!isset($this->adapterPool[$currentAdapter])) { - throw new \LogicException( + throw new LogicException( 'There is no such adapter: ' . $currentAdapter ); } $adapterClass = $this->adapterPool[$currentAdapter]; $adapter = $this->objectManager->create($adapterClass, $data); - if (!($adapter instanceof \Magento\Framework\Search\AdapterInterface)) { - throw new \InvalidArgumentException( + if (!($adapter instanceof AdapterInterface)) { + throw new InvalidArgumentException( 'Adapter must implement \Magento\Framework\Search\AdapterInterface' ); } diff --git a/app/code/Magento/Search/Model/Adminhtml/System/Config/Source/Engine.php b/app/code/Magento/Search/Model/Adminhtml/System/Config/Source/Engine.php index a57e99ae1b8de..cbf9fb2e9a294 100644 --- a/app/code/Magento/Search/Model/Adminhtml/System/Config/Source/Engine.php +++ b/app/code/Magento/Search/Model/Adminhtml/System/Config/Source/Engine.php @@ -5,28 +5,22 @@ */ namespace Magento\Search\Model\Adminhtml\System\Config\Source; +use Magento\Framework\Option\ArrayInterface; + /** * All registered search adapters * * @api * @since 100.0.2 */ -class Engine implements \Magento\Framework\Option\ArrayInterface +class Engine implements ArrayInterface { /** - * Engines list - * - * @var array - */ - private $engines; - - /** - * @param array $engines + * @param array $engines Engines list */ public function __construct( - array $engines + private readonly array $engines ) { - $this->engines = $engines; } /** diff --git a/app/code/Magento/Search/Model/Autocomplete.php b/app/code/Magento/Search/Model/Autocomplete.php index 57364e4c36bde..787046cf8ceec 100644 --- a/app/code/Magento/Search/Model/Autocomplete.php +++ b/app/code/Magento/Search/Model/Autocomplete.php @@ -11,17 +11,11 @@ class Autocomplete implements AutocompleteInterface { /** - * @var Autocomplete\DataProviderInterface[] - */ - private $dataProviders; - - /** - * @param array $dataProviders + * @param Autocomplete\DataProviderInterface[] $dataProviders */ public function __construct( - array $dataProviders + private array $dataProviders ) { - $this->dataProviders = $dataProviders; ksort($this->dataProviders); } diff --git a/app/code/Magento/Search/Model/Autocomplete/Item.php b/app/code/Magento/Search/Model/Autocomplete/Item.php index e3a6346b3b503..ab0b269b3393e 100644 --- a/app/code/Magento/Search/Model/Autocomplete/Item.php +++ b/app/code/Magento/Search/Model/Autocomplete/Item.php @@ -6,7 +6,9 @@ namespace Magento\Search\Model\Autocomplete; -class Item extends \Magento\Framework\DataObject implements ItemInterface +use Magento\Framework\DataObject; + +class Item extends DataObject implements ItemInterface { /** * {@inheritdoc} diff --git a/app/code/Magento/Search/Model/Autocomplete/ItemFactory.php b/app/code/Magento/Search/Model/Autocomplete/ItemFactory.php index 2ed20ac22f4d9..f9138fdcfa02f 100644 --- a/app/code/Magento/Search/Model/Autocomplete/ItemFactory.php +++ b/app/code/Magento/Search/Model/Autocomplete/ItemFactory.php @@ -7,21 +7,16 @@ namespace Magento\Search\Model\Autocomplete; use Magento\Framework\ObjectManagerInterface; +use Magento\Search\Model\Autocomplete\Item as AutocompleteItem; class ItemFactory { - /** - * @var ObjectManagerInterface - */ - private $objectManager; - /** * @param ObjectManagerInterface $objectManager */ public function __construct( - ObjectManagerInterface $objectManager + private readonly ObjectManagerInterface $objectManager ) { - $this->objectManager = $objectManager; } /** @@ -30,6 +25,6 @@ public function __construct( */ public function create(array $data) { - return $this->objectManager->create(\Magento\Search\Model\Autocomplete\Item::class, ['data' => $data]); + return $this->objectManager->create(AutocompleteItem::class, ['data' => $data]); } } diff --git a/app/code/Magento/Search/Model/EngineResolver.php b/app/code/Magento/Search/Model/EngineResolver.php index d4fa48a985819..306a4426e0824 100644 --- a/app/code/Magento/Search/Model/EngineResolver.php +++ b/app/code/Magento/Search/Model/EngineResolver.php @@ -23,74 +23,24 @@ class EngineResolver implements EngineResolverInterface */ const CATALOG_SEARCH_MYSQL_ENGINE = 'mysql'; - /** - * @var ScopeConfigInterface - * @since 100.1.0 - */ - protected $scopeConfig; - - /** - * Path to catalog search engine - * @var string - * @since 100.1.0 - */ - protected $path; - - /** - * Scope type - * @var string - * @since 100.1.0 - */ - protected $scopeType; - - /** - * Scope code - * @var null|string - * @since 100.1.0 - */ - protected $scopeCode; - - /** - * Available engines - * @var array - */ - private $engines = []; - - /** - * @var LoggerInterface - */ - private $logger; - - /** - * @var string - */ - private $defaultEngine; - /** * @param ScopeConfigInterface $scopeConfig - * @param array $engines + * @param array $engines Available engines * @param LoggerInterface $logger - * @param string $path - * @param string $scopeType - * @param string|null $scopeCode + * @param string $path Path to catalog search engine + * @param string $scopeType Scope type + * @param string|null $scopeCode Scope code * @param string|null $defaultEngine */ public function __construct( - ScopeConfigInterface $scopeConfig, - array $engines, - LoggerInterface $logger, - $path, - $scopeType, - $scopeCode = null, - $defaultEngine = null + protected readonly ScopeConfigInterface $scopeConfig, + private readonly array $engines, + private readonly LoggerInterface $logger, + protected $path, + protected $scopeType, + protected $scopeCode = null, + private $defaultEngine = null ) { - $this->scopeConfig = $scopeConfig; - $this->path = $path; - $this->scopeType = $scopeType; - $this->scopeCode = $scopeCode; - $this->engines = $engines; - $this->logger = $logger; - $this->defaultEngine = $defaultEngine; } /** diff --git a/app/code/Magento/Search/Model/PopularSearchTerms.php b/app/code/Magento/Search/Model/PopularSearchTerms.php index 0a3a7de4e1271..226f06aba4ba8 100644 --- a/app/code/Magento/Search/Model/PopularSearchTerms.php +++ b/app/code/Magento/Search/Model/PopularSearchTerms.php @@ -6,6 +6,10 @@ namespace Magento\Search\Model; +use Magento\Framework\App\Config\ScopeConfigInterface; +use Magento\Search\Model\ResourceModel\Query\Collection as QueryCollection; +use Magento\Store\Model\ScopeInterface; + /** * Finds top search results in search */ @@ -14,29 +18,13 @@ class PopularSearchTerms const XML_PATH_MAX_COUNT_CACHEABLE_SEARCH_TERMS = 'catalog/search/max_count_cacheable_search_terms'; /** - * Scope configuration - * - * @var \Magento\Framework\App\Config\ScopeConfigInterface - */ - private $scopeConfig; - - /** - * Catalog search data - * - * @var \Magento\Search\Model\ResourceModel\Query\Collection - */ - private $queryCollection; - - /** - * @param \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig - * @param \Magento\Search\Model\ResourceModel\Query\Collection $queryCollection + * @param ScopeConfigInterface $scopeConfig Scope configuration + * @param QueryCollection $queryCollection Catalog search data */ public function __construct( - \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig, - \Magento\Search\Model\ResourceModel\Query\Collection $queryCollection + private readonly ScopeConfigInterface $scopeConfig, + private readonly QueryCollection $queryCollection ) { - $this->scopeConfig = $scopeConfig; - $this->queryCollection = $queryCollection; } /** @@ -62,7 +50,7 @@ private function getMaxCountCacheableSearchTerms(int $storeId) { return $this->scopeConfig->getValue( self::XML_PATH_MAX_COUNT_CACHEABLE_SEARCH_TERMS, - \Magento\Store\Model\ScopeInterface::SCOPE_STORE, + ScopeInterface::SCOPE_STORE, $storeId ); } diff --git a/app/code/Magento/Search/Model/Query.php b/app/code/Magento/Search/Model/Query.php index d8c92a4801e8c..bd7625586d361 100644 --- a/app/code/Magento/Search/Model/Query.php +++ b/app/code/Magento/Search/Model/Query.php @@ -5,6 +5,11 @@ */ namespace Magento\Search\Model; +use Exception; +use Magento\Framework\Exception\LocalizedException; +use Magento\Framework\Exception\NoSuchEntityException; +use Magento\Framework\Model\Context as ModelContext; +use Magento\Search\Model\ResourceModel\Query as ResourceQuery; use Magento\Search\Model\ResourceModel\Query\Collection as QueryCollection; use Magento\Search\Model\ResourceModel\Query\CollectionFactory as QueryCollectionFactory; use Magento\Search\Model\SearchCollectionInterface as Collection; @@ -14,29 +19,30 @@ use Magento\Framework\Model\AbstractModel; use Magento\Framework\Model\ResourceModel\AbstractResource; use Magento\Framework\Registry; +use Magento\Store\Model\ScopeInterface; use Magento\Store\Model\StoreManagerInterface; /** * Search query model * - * @method \Magento\Search\Model\Query setQueryText(string $value) + * @method Query setQueryText(string $value) * @method int getNumResults() - * @method \Magento\Search\Model\Query setNumResults(int $value) + * @method Query setNumResults(int $value) * @method int getPopularity() - * @method \Magento\Search\Model\Query setPopularity(int $value) + * @method Query setPopularity(int $value) * @method string getRedirect() - * @method \Magento\Search\Model\Query setRedirect(string $value) + * @method Query setRedirect(string $value) * @method int getDisplayInTerms() - * @method \Magento\Search\Model\Query setDisplayInTerms(int $value) - * @method \Magento\Search\Model\Query setQueryNameExceeded(bool $value) + * @method Query setDisplayInTerms(int $value) + * @method Query setQueryNameExceeded(bool $value) * @method int getIsActive() - * @method \Magento\Search\Model\Query setIsActive(int $value) + * @method Query setIsActive(int $value) * @method int getIsProcessed() - * @method \Magento\Search\Model\Query setIsProcessed(int $value) + * @method Query setIsProcessed(int $value) * @method string getUpdatedAt() - * @method \Magento\Search\Model\Query setUpdatedAt(string $value) - * @method \Magento\Search\Model\Query setIsQueryTextExceeded(bool $value) - * @method \Magento\Search\Model\Query setIsQueryTextShort(bool $value) + * @method Query setUpdatedAt(string $value) + * @method Query setIsQueryTextExceeded(bool $value) + * @method Query setIsQueryTextShort(bool $value) * @SuppressWarnings(PHPMD.CouplingBetweenObjects) * @api * @since 100.0.2 @@ -94,18 +100,18 @@ class Query extends AbstractModel implements QueryInterface /** * Construct * - * @param \Magento\Framework\Model\Context $context + * @param ModelContext $context * @param Registry $registry * @param QueryCollectionFactory $queryCollectionFactory * @param CollectionFactory $searchCollectionFactory * @param StoreManagerInterface $storeManager * @param ScopeConfigInterface $scopeConfig - * @param \Magento\Framework\Model\ResourceModel\AbstractResource $resource + * @param AbstractResource $resource * @param DbCollection $resourceCollection * @param array $data */ public function __construct( - \Magento\Framework\Model\Context $context, + ModelContext $context, Registry $registry, QueryCollectionFactory $queryCollectionFactory, CollectionFactory $searchCollectionFactory, @@ -129,7 +135,7 @@ public function __construct( */ protected function _construct() { - $this->_init(\Magento\Search\Model\ResourceModel\Query::class); + $this->_init(ResourceQuery::class); } /** @@ -146,7 +152,7 @@ public function getSearchCollection() * Retrieve collection of suggest queries * * @return QueryCollection - * @throws \Magento\Framework\Exception\NoSuchEntityException + * @throws NoSuchEntityException */ public function getSuggestCollection() { @@ -167,7 +173,7 @@ public function getSuggestCollection() * * @param string $text * @return $this - * @throws \Magento\Framework\Exception\LocalizedException + * @throws LocalizedException * @deprecated 100.1.0 "synonym for" feature has been removed */ public function loadByQuery($text) @@ -181,7 +187,7 @@ public function loadByQuery($text) * * @param string $text * @return $this - * @throws \Magento\Framework\Exception\LocalizedException + * @throws LocalizedException */ public function loadByQueryText($text) { @@ -206,7 +212,7 @@ public function setStoreId($storeId) * Retrieve store Id * * @return int - * @throws \Magento\Framework\Exception\NoSuchEntityException + * @throws NoSuchEntityException */ public function getStoreId() { @@ -220,7 +226,7 @@ public function getStoreId() * Prepare save query for result * * @return $this - * @throws \Exception + * @throws Exception */ public function prepare() { @@ -239,7 +245,7 @@ public function prepare() * * @return $this * - * @throws \Magento\Framework\Exception\LocalizedException + * @throws LocalizedException */ public function saveIncrementalPopularity() { @@ -254,7 +260,7 @@ public function saveIncrementalPopularity() * @param int $numResults * @return $this * - * @throws \Magento\Framework\Exception\LocalizedException + * @throws LocalizedException */ public function saveNumResults($numResults) { @@ -268,13 +274,13 @@ public function saveNumResults($numResults) * Retrieve minimum query length * * @return int - * @throws \Magento\Framework\Exception\NoSuchEntityException + * @throws NoSuchEntityException */ public function getMinQueryLength() { return $this->_scopeConfig->getValue( self::XML_PATH_MIN_QUERY_LENGTH, - \Magento\Store\Model\ScopeInterface::SCOPE_STORE, + ScopeInterface::SCOPE_STORE, $this->getStoreId() ); } @@ -283,13 +289,13 @@ public function getMinQueryLength() * Retrieve maximum query length * * @return int - * @throws \Magento\Framework\Exception\NoSuchEntityException + * @throws NoSuchEntityException */ public function getMaxQueryLength() { return $this->_scopeConfig->getValue( self::XML_PATH_MAX_QUERY_LENGTH, - \Magento\Store\Model\ScopeInterface::SCOPE_STORE, + ScopeInterface::SCOPE_STORE, $this->getStoreId() ); } diff --git a/app/code/Magento/Search/Model/QueryFactory.php b/app/code/Magento/Search/Model/QueryFactory.php index 4186b5c3055f4..d3ee87fb9b377 100644 --- a/app/code/Magento/Search/Model/QueryFactory.php +++ b/app/code/Magento/Search/Model/QueryFactory.php @@ -7,6 +7,7 @@ use Magento\Framework\App\Config\ScopeConfigInterface; use Magento\Framework\App\Helper\Context; +use Magento\Framework\App\RequestInterface; use Magento\Framework\ObjectManagerInterface; use Magento\Framework\Stdlib\StringUtils as StdlibString; use Magento\Search\Helper\Data; @@ -25,7 +26,7 @@ class QueryFactory implements QueryFactoryInterface const QUERY_VAR_NAME = 'q'; /** - * @var \Magento\Framework\App\RequestInterface + * @var RequestInterface */ private $request; @@ -34,26 +35,11 @@ class QueryFactory implements QueryFactoryInterface */ private $query; - /** - * @var ObjectManagerInterface - */ - private $objectManager; - - /** - * @var StdlibString - */ - private $string; - /** * @var ScopeConfigInterface */ private $scopeConfig; - /** - * @var Data - */ - private $queryHelper; - /** * @param Context $context * @param ObjectManagerInterface $objectManager @@ -62,13 +48,11 @@ class QueryFactory implements QueryFactoryInterface */ public function __construct( Context $context, - ObjectManagerInterface $objectManager, - StdlibString $string, - Data $queryHelper = null + private readonly ObjectManagerInterface $objectManager, + private readonly StdlibString $string, + private ?Data $queryHelper = null ) { $this->request = $context->getRequest(); - $this->objectManager = $objectManager; - $this->string = $string; $this->scopeConfig = $context->getScopeConfig(); $this->queryHelper = $queryHelper === null ? $this->objectManager->get(Data::class) : $queryHelper; } diff --git a/app/code/Magento/Search/Model/QueryResult.php b/app/code/Magento/Search/Model/QueryResult.php index 45cb9785caf74..0d6e67d691774 100644 --- a/app/code/Magento/Search/Model/QueryResult.php +++ b/app/code/Magento/Search/Model/QueryResult.php @@ -11,24 +11,14 @@ */ class QueryResult { - /** - * @var string - */ - private $queryText; - - /** - * @var int - */ - private $resultsCount; - /** * @param string $queryText - * @param string $resultsCount + * @param string|int $resultsCount */ - public function __construct($queryText, $resultsCount) - { - $this->queryText = $queryText; - $this->resultsCount = $resultsCount; + public function __construct( + private $queryText, + private $resultsCount + ) { } /** diff --git a/app/code/Magento/Search/Model/ResourceModel/Query.php b/app/code/Magento/Search/Model/ResourceModel/Query.php index 055c10eacf85b..25d705a6cece1 100644 --- a/app/code/Magento/Search/Model/ResourceModel/Query.php +++ b/app/code/Magento/Search/Model/ResourceModel/Query.php @@ -7,9 +7,14 @@ namespace Magento\Search\Model\ResourceModel; use Magento\Framework\DB\Select; +use Magento\Framework\Exception\LocalizedException; use Magento\Framework\Model\AbstractModel; use Magento\Framework\Model\ResourceModel\Db\AbstractDb; +use Magento\Framework\Model\ResourceModel\Db\Context as DbContext; +use Magento\Framework\Stdlib\DateTime; +use Magento\Framework\Stdlib\DateTime\DateTime as DateTimeModel; use Magento\Search\Model\Query as QueryModel; +use Zend_Db_Expr; /** * Search query resource model @@ -22,29 +27,23 @@ class Query extends AbstractDb /** * Date * - * @var \Magento\Framework\Stdlib\DateTime\DateTime + * @var DateTimeModel */ protected $_date; /** - * @var \Magento\Framework\Stdlib\DateTime - */ - protected $dateTime; - - /** - * @param \Magento\Framework\Model\ResourceModel\Db\Context $context - * @param \Magento\Framework\Stdlib\DateTime\DateTime $date - * @param \Magento\Framework\Stdlib\DateTime $dateTime + * @param DbContext $context + * @param DateTimeModel $date + * @param DateTime $dateTime * @param string $connectionName */ public function __construct( - \Magento\Framework\Model\ResourceModel\Db\Context $context, - \Magento\Framework\Stdlib\DateTime\DateTime $date, - \Magento\Framework\Stdlib\DateTime $dateTime, + DbContext $context, + DateTimeModel $date, + protected readonly DateTime $dateTime, $connectionName = null ) { $this->_date = $date; - $this->dateTime = $dateTime; parent::__construct($context, $connectionName); } @@ -82,7 +81,7 @@ public function loadByQueryText(AbstractModel $object, $value) * @param AbstractModel $object * @param int|string $value * @param null|string $field - * @return $this|\Magento\Framework\Model\ResourceModel\Db\AbstractDb + * @return $this|AbstractDb * @SuppressWarnings("unused") */ public function load(AbstractModel $object, $value, $field = null) @@ -135,7 +134,7 @@ protected function _construct() * @param QueryModel $query * @return void * - * @throws \Magento\Framework\Exception\LocalizedException + * @throws LocalizedException */ public function saveIncrementalPopularity(QueryModel $query) { @@ -147,7 +146,7 @@ public function saveIncrementalPopularity(QueryModel $query) 'popularity' => 1, ]; $updateData = [ - 'popularity' => new \Zend_Db_Expr('`popularity` + 1'), + 'popularity' => new Zend_Db_Expr('`popularity` + 1'), ]; $adapter->insertOnDuplicate($table, $saveData, $updateData); } @@ -158,7 +157,7 @@ public function saveIncrementalPopularity(QueryModel $query) * @param QueryModel $query * @return void * - * @throws \Magento\Framework\Exception\LocalizedException + * @throws LocalizedException */ public function saveNumResults(QueryModel $query) { diff --git a/app/code/Magento/Search/Model/ResourceModel/Query/Collection.php b/app/code/Magento/Search/Model/ResourceModel/Query/Collection.php index e122f61ff1b29..68d6b8f013801 100644 --- a/app/code/Magento/Search/Model/ResourceModel/Query/Collection.php +++ b/app/code/Magento/Search/Model/ResourceModel/Query/Collection.php @@ -13,9 +13,12 @@ use Magento\Framework\Event\ManagerInterface; use Magento\Framework\Model\ResourceModel\Db\AbstractDb; use Magento\Framework\Model\ResourceModel\Db\Collection\AbstractCollection; +use Magento\Search\Model\Query as ModelQuery; +use Magento\Search\Model\ResourceModel\Query as ResourceQuery; use Magento\Store\Model\Store; use Magento\Store\Model\StoreManagerInterface; use Psr\Log\LoggerInterface; +use Zend_Db_Expr; /** * Search query collection @@ -75,7 +78,7 @@ public function __construct( */ protected function _construct() { - $this->_init(\Magento\Search\Model\Query::class, \Magento\Search\Model\ResourceModel\Query::class); + $this->_init(ModelQuery::class, ResourceQuery::class); } /** @@ -121,7 +124,7 @@ public function setQueryFilter($query) 'num_results > 0 AND display_in_terms = 1 AND query_text LIKE ?', $this->_resourceHelper->addLikeEscape($query, ['position' => 'start']) ) - ->order('popularity ' . \Magento\Framework\DB\Select::SQL_DESC); + ->order('popularity ' . Select::SQL_DESC); if ($this->getStoreId()) { $this->getSelect()->where('store_id = ?', (int)$this->getStoreId()); @@ -139,9 +142,9 @@ public function setQueryFilter($query) public function setPopularQueryFilter($storeIds = null) { $this->getSelect()->reset( - \Magento\Framework\DB\Select::FROM + Select::FROM )->reset( - \Magento\Framework\DB\Select::COLUMNS + Select::COLUMNS )->distinct( true )->from( @@ -169,8 +172,8 @@ public function setPopularQueryFilter($storeIds = null) public function isTopSearchResult(string $term, int $storeId, int $maxCountCacheableSearchTerms):bool { $select = $this->getSelect(); - $select->reset(\Magento\Framework\DB\Select::FROM); - $select->reset(\Magento\Framework\DB\Select::COLUMNS); + $select->reset(Select::FROM); + $select->reset(Select::COLUMNS); $select->distinct(true); $select->from(['main_table' => $this->getTable('search_query')], ['query_text']); $select->where('main_table.store_id IN (?)', $storeId); @@ -179,7 +182,7 @@ public function isTopSearchResult(string $term, int $storeId, int $maxCountCache $select->limit($maxCountCacheableSearchTerms); - $subQuery = new \Zend_Db_Expr('(' . $select->assemble() . ')'); + $subQuery = new Zend_Db_Expr('(' . $select->assemble() . ')'); $select->reset(); $select->from(['result' => $subQuery ], []); diff --git a/app/code/Magento/Search/Model/ResourceModel/SynonymGroup/Collection.php b/app/code/Magento/Search/Model/ResourceModel/SynonymGroup/Collection.php index 9deb96ebd92b1..aee0a7e2b5761 100644 --- a/app/code/Magento/Search/Model/ResourceModel/SynonymGroup/Collection.php +++ b/app/code/Magento/Search/Model/ResourceModel/SynonymGroup/Collection.php @@ -5,12 +5,16 @@ */ namespace Magento\Search\Model\ResourceModel\SynonymGroup; +use Magento\Framework\Model\ResourceModel\Db\Collection\AbstractCollection; +use Magento\Search\Model\ResourceModel\SynonymGroup as ResourceSynonymGroup; +use Magento\Search\Model\SynonymGroup as ModelSynonymGroup; + /** * Collection for SynonymGroup * @api * @since 100.1.0 */ -class Collection extends \Magento\Framework\Model\ResourceModel\Db\Collection\AbstractCollection +class Collection extends AbstractCollection { /** * @var string @@ -27,8 +31,8 @@ class Collection extends \Magento\Framework\Model\ResourceModel\Db\Collection\Ab protected function _construct() { $this->_init( - \Magento\Search\Model\SynonymGroup::class, - \Magento\Search\Model\ResourceModel\SynonymGroup::class + ModelSynonymGroup::class, + ResourceSynonymGroup::class ); } } diff --git a/app/code/Magento/Search/Model/ResourceModel/SynonymReader.php b/app/code/Magento/Search/Model/ResourceModel/SynonymReader.php index 77474e27da1b3..fe6b62e9e1a61 100644 --- a/app/code/Magento/Search/Model/ResourceModel/SynonymReader.php +++ b/app/code/Magento/Search/Model/ResourceModel/SynonymReader.php @@ -6,9 +6,14 @@ namespace Magento\Search\Model\ResourceModel; +use Magento\Framework\App\Config\ScopeConfigInterface; use Magento\Framework\DB\Helper\Mysql\Fulltext; +use Magento\Framework\DB\Helper\Mysql\Fulltext as MysqlFulltext; use Magento\Framework\Exception\LocalizedException; use Magento\Framework\Model\ResourceModel\Db\AbstractDb; +use Magento\Framework\Model\ResourceModel\Db\Context as DbContext; +use Magento\Search\Model\SynonymReader as ModelSynonymReader; +use Magento\Store\Model\ScopeInterface; use Magento\Store\Model\Store; use Magento\Store\Model\StoreManagerInterface; @@ -18,50 +23,44 @@ class SynonymReader extends AbstractDb { /** - * @var \Magento\Framework\DB\Helper\Mysql\Fulltext $fullTextSelect + * @var MysqlFulltext $fullTextSelect */ private $fullTextSelect; /** - * @var StoreManagerInterface - */ - protected $storeManager; - - /** - * @param \Magento\Framework\Model\ResourceModel\Db\Context $context - * @param \Magento\Store\Model\StoreManagerInterface $storeManager - * @param \Magento\Framework\DB\Helper\Mysql\Fulltext $fulltext + * @param DbContext $context + * @param StoreManagerInterface $storeManager + * @param MysqlFulltext $fulltext * @param string $connectionName */ public function __construct( - \Magento\Framework\Model\ResourceModel\Db\Context $context, - \Magento\Store\Model\StoreManagerInterface $storeManager, - \Magento\Framework\DB\Helper\Mysql\Fulltext $fulltext, + DbContext $context, + protected readonly StoreManagerInterface $storeManager, + MysqlFulltext $fulltext, $connectionName = null ) { parent::__construct($context, $connectionName); $this->fullTextSelect = $fulltext; - $this->storeManager = $storeManager; } /** * Custom load model: Get data by user query phrase * - * @param \Magento\Search\Model\SynonymReader $object + * @param ModelSynonymReader $object * @param string $phrase * @return $this */ - public function loadByPhrase(\Magento\Search\Model\SynonymReader $object, $phrase) + public function loadByPhrase(ModelSynonymReader $object, $phrase) { $rows = $this->queryByPhrase($phrase !== null ? strtolower($phrase) : ''); $synsPerScope = $this->getSynRowsPerScope($rows); - if (!empty($synsPerScope[\Magento\Store\Model\ScopeInterface::SCOPE_STORES])) { - $object->setData($synsPerScope[\Magento\Store\Model\ScopeInterface::SCOPE_STORES]); - } elseif (!empty($synsPerScope[\Magento\Store\Model\ScopeInterface::SCOPE_WEBSITES])) { - $object->setData($synsPerScope[\Magento\Store\Model\ScopeInterface::SCOPE_WEBSITES]); + if (!empty($synsPerScope[ScopeInterface::SCOPE_STORES])) { + $object->setData($synsPerScope[ScopeInterface::SCOPE_STORES]); + } elseif (!empty($synsPerScope[ScopeInterface::SCOPE_WEBSITES])) { + $object->setData($synsPerScope[ScopeInterface::SCOPE_WEBSITES]); } else { - $object->setData($synsPerScope[\Magento\Framework\App\Config\ScopeConfigInterface::SCOPE_TYPE_DEFAULT]); + $object->setData($synsPerScope[ScopeConfigInterface::SCOPE_TYPE_DEFAULT]); } $this->_afterLoad($object); return $this; @@ -161,9 +160,9 @@ private function getSynRowsPerScope($rows) $synRowsForDefault[] = $row; } } - $synsPerScope[\Magento\Store\Model\ScopeInterface::SCOPE_STORES] = $synRowsForStoreView; - $synsPerScope[\Magento\Store\Model\ScopeInterface::SCOPE_WEBSITES] = $synRowsForWebsite; - $synsPerScope[\Magento\Framework\App\Config\ScopeConfigInterface::SCOPE_TYPE_DEFAULT] = $synRowsForDefault; + $synsPerScope[ScopeInterface::SCOPE_STORES] = $synRowsForStoreView; + $synsPerScope[ScopeInterface::SCOPE_WEBSITES] = $synRowsForWebsite; + $synsPerScope[ScopeConfigInterface::SCOPE_TYPE_DEFAULT] = $synRowsForDefault; return $synsPerScope; } diff --git a/app/code/Magento/Search/Model/Search/PageSizeProvider.php b/app/code/Magento/Search/Model/Search/PageSizeProvider.php index ae2a8ca954d63..1b33dc62d924b 100644 --- a/app/code/Magento/Search/Model/Search/PageSizeProvider.php +++ b/app/code/Magento/Search/Model/Search/PageSizeProvider.php @@ -7,6 +7,8 @@ namespace Magento\Search\Model\Search; +use Magento\Search\Model\EngineResolver; + /** * Returns max page size by search engine name * @api @@ -15,25 +17,13 @@ class PageSizeProvider { /** - * @var \Magento\Search\Model\EngineResolver - */ - private $engineResolver; - - /** - * @var array - */ - private $pageSizeBySearchEngine; - - /** - * @param \Magento\Search\Model\EngineResolver $engineResolver + * @param EngineResolver $engineResolver * @param array $pageSizeBySearchEngine */ public function __construct( - \Magento\Search\Model\EngineResolver $engineResolver, - array $pageSizeBySearchEngine = [] + private readonly EngineResolver $engineResolver, + private readonly array $pageSizeBySearchEngine = [] ) { - $this->engineResolver = $engineResolver; - $this->pageSizeBySearchEngine = $pageSizeBySearchEngine; } /** diff --git a/app/code/Magento/Search/Model/SearchCollectionFactory.php b/app/code/Magento/Search/Model/SearchCollectionFactory.php index fe2fb4b183f43..1788a5871ef42 100644 --- a/app/code/Magento/Search/Model/SearchCollectionFactory.php +++ b/app/code/Magento/Search/Model/SearchCollectionFactory.php @@ -6,6 +6,8 @@ namespace Magento\Search\Model; +use Magento\Framework\ObjectManagerInterface; + /** * @api * @since 100.0.2 @@ -15,7 +17,7 @@ class SearchCollectionFactory /** * Object Manager instance * - * @var \Magento\Framework\ObjectManagerInterface + * @var ObjectManagerInterface */ protected $_objectManager = null; @@ -29,12 +31,12 @@ class SearchCollectionFactory /** * Factory constructor * - * @param \Magento\Framework\ObjectManagerInterface $objectManager + * @param ObjectManagerInterface $objectManager * @param string $instanceName */ public function __construct( - \Magento\Framework\ObjectManagerInterface $objectManager, - $instanceName = \Magento\Search\Model\SearchCollectionInterface::class + ObjectManagerInterface $objectManager, + $instanceName = SearchCollectionInterface::class ) { $this->_objectManager = $objectManager; $this->_instanceName = $instanceName; @@ -44,7 +46,7 @@ public function __construct( * Create class instance with specified parameters * * @param array $data - * @return \Magento\Search\Model\SearchCollectionInterface + * @return SearchCollectionInterface */ public function create(array $data = []) { diff --git a/app/code/Magento/Search/Model/SearchEngine.php b/app/code/Magento/Search/Model/SearchEngine.php index 562be67f84989..f29daab00a05e 100644 --- a/app/code/Magento/Search/Model/SearchEngine.php +++ b/app/code/Magento/Search/Model/SearchEngine.php @@ -20,18 +20,11 @@ class SearchEngine implements SearchEngineInterface private $adapter = null; /** - * Adapter factory - * - * @var AdapterFactory + * @param AdapterFactory $adapterFactory Adapter factory */ - private $adapterFactory; - - /** - * @param AdapterFactory $adapterFactory - */ - public function __construct(AdapterFactory $adapterFactory) - { - $this->adapterFactory = $adapterFactory; + public function __construct( + private readonly AdapterFactory $adapterFactory + ) { } /** diff --git a/app/code/Magento/Search/Model/SearchEngine/Config.php b/app/code/Magento/Search/Model/SearchEngine/Config.php index 3c309cb377efc..0ed7455964618 100644 --- a/app/code/Magento/Search/Model/SearchEngine/Config.php +++ b/app/code/Magento/Search/Model/SearchEngine/Config.php @@ -5,23 +5,19 @@ */ namespace Magento\Search\Model\SearchEngine; -class Config implements \Magento\Framework\Search\SearchEngine\ConfigInterface -{ - /** - * Search engine config data storage - * - * @var Config\Data - */ - protected $dataStorage; +use Magento\Framework\Config\DataInterface; +use Magento\Framework\Search\SearchEngine\ConfigInterface; +class Config implements ConfigInterface +{ /** * Constructor * - * @param \Magento\Framework\Config\DataInterface $dataStorage + * @param Config\Data $dataStorage Search engine config data storage */ - public function __construct(\Magento\Framework\Config\DataInterface $dataStorage) - { - $this->dataStorage = $dataStorage; + public function __construct( + protected readonly DataInterface $dataStorage + ) { } /** diff --git a/app/code/Magento/Search/Model/SearchEngine/Config/Data.php b/app/code/Magento/Search/Model/SearchEngine/Config/Data.php index 0158636bf6315..525d376f424df 100644 --- a/app/code/Magento/Search/Model/SearchEngine/Config/Data.php +++ b/app/code/Magento/Search/Model/SearchEngine/Config/Data.php @@ -5,6 +5,9 @@ */ namespace Magento\Search\Model\SearchEngine\Config; +use Magento\Framework\Config\CacheInterface; +use Magento\Framework\Config\Data as ConfigData; +use Magento\Framework\Search\SearchEngine\Config\Reader; use Magento\Framework\Serialize\SerializerInterface; /** @@ -12,19 +15,19 @@ * @api * @since 100.1.0 */ -class Data extends \Magento\Framework\Config\Data +class Data extends ConfigData { /** * Constructor * - * @param \Magento\Framework\Search\SearchEngine\Config\Reader $reader - * @param \Magento\Framework\Config\CacheInterface $cache + * @param Reader $reader + * @param CacheInterface $cache * @param string|null $cacheId * @param SerializerInterface|null $serializer */ public function __construct( - \Magento\Framework\Search\SearchEngine\Config\Reader $reader, - \Magento\Framework\Config\CacheInterface $cache, + Reader $reader, + CacheInterface $cache, $cacheId = 'search_engine_config_cache', SerializerInterface $serializer = null ) { diff --git a/app/code/Magento/Search/Model/SearchEngine/Validator.php b/app/code/Magento/Search/Model/SearchEngine/Validator.php index 264e7c69dd520..32e50f8119b99 100644 --- a/app/code/Magento/Search/Model/SearchEngine/Validator.php +++ b/app/code/Magento/Search/Model/SearchEngine/Validator.php @@ -14,33 +14,21 @@ */ class Validator implements ValidatorInterface { - /** - * @var ScopeConfigInterface - */ - private $scopeConfig; - /** * @var array */ private $excludedEngineList = ['mysql' => 'MySQL']; - /** - * @var ValidatorInterface[] - */ - private $engineValidators; - /** * @param ScopeConfigInterface $scopeConfig - * @param array $engineValidators + * @param ValidatorInterface[] $engineValidators * @param array $excludedEngineList */ public function __construct( - ScopeConfigInterface $scopeConfig, - array $engineValidators = [], + private readonly ScopeConfigInterface $scopeConfig, + private readonly array $engineValidators = [], array $excludedEngineList = [] ) { - $this->scopeConfig = $scopeConfig; - $this->engineValidators = $engineValidators; $this->excludedEngineList = array_merge($this->excludedEngineList, $excludedEngineList); } diff --git a/app/code/Magento/Search/Model/Synonym/DataProvider.php b/app/code/Magento/Search/Model/Synonym/DataProvider.php index a30bf13ca9ff8..8a3b71a7f7a4b 100644 --- a/app/code/Magento/Search/Model/Synonym/DataProvider.php +++ b/app/code/Magento/Search/Model/Synonym/DataProvider.php @@ -5,24 +5,22 @@ */ namespace Magento\Search\Model\Synonym; +use Magento\Search\Model\ResourceModel\SynonymGroup\Collection as SynonymGroupCollection; use Magento\Search\Model\ResourceModel\SynonymGroup\CollectionFactory; use Magento\Framework\View\Element\UiComponent\DataProvider\FilterPool; +use Magento\Search\Model\SynonymGroup; +use Magento\Ui\DataProvider\AbstractDataProvider; /** * Class DataProvider */ -class DataProvider extends \Magento\Ui\DataProvider\AbstractDataProvider +class DataProvider extends AbstractDataProvider { /** - * @var \Magento\Search\Model\ResourceModel\SynonymGroup\Collection + * @var SynonymGroupCollection */ protected $collection; - /** - * @var FilterPool - */ - protected $filterPool; - /** * @var array */ @@ -44,13 +42,12 @@ public function __construct( $primaryFieldName, $requestFieldName, CollectionFactory $blockCollectionFactory, - FilterPool $filterPool, + protected readonly FilterPool $filterPool, array $meta = [], array $data = [] ) { parent::__construct($name, $primaryFieldName, $requestFieldName, $meta, $data); $this->collection = $blockCollectionFactory->create(); - $this->filterPool = $filterPool; } /** @@ -64,7 +61,7 @@ public function getData() return $this->loadedData; } $items = $this->collection->getItems(); - /** @var \Magento\Search\Model\SynonymGroup $synGroup */ + /** @var SynonymGroup $synGroup */ foreach ($items as $synGroup) { // Set the virtual 'scope_id' column to appropriate value. // This is necessary to display the correct selection set diff --git a/app/code/Magento/Search/Model/Synonym/MergeConflictException.php b/app/code/Magento/Search/Model/Synonym/MergeConflictException.php index 354d7e31b6dd0..e019c96335952 100644 --- a/app/code/Magento/Search/Model/Synonym/MergeConflictException.php +++ b/app/code/Magento/Search/Model/Synonym/MergeConflictException.php @@ -5,6 +5,7 @@ */ namespace Magento\Search\Model\Synonym; +use Exception; use Magento\Framework\Exception\LocalizedException; use Magento\Framework\Phrase; @@ -16,25 +17,21 @@ */ class MergeConflictException extends LocalizedException { - /** - * Conflicting synonyms - * - * @var array - */ - private $conflictingSynonyms; - /** * Constructor * - * @param array $conflictingSynonyms + * @param array $conflictingSynonyms Conflicting synonyms * @param Phrase|null $phrase - * @param \Exception|null $cause + * @param Exception|null $cause * @param int $code */ - public function __construct(array $conflictingSynonyms, Phrase $phrase = null, \Exception $cause = null, $code = 0) - { + public function __construct( + private readonly array $conflictingSynonyms, + Phrase $phrase = null, + Exception $cause = null, + $code = 0 + ) { parent::__construct($phrase, $cause, $code); - $this->conflictingSynonyms = $conflictingSynonyms; } /** diff --git a/app/code/Magento/Search/Model/SynonymAnalyzer.php b/app/code/Magento/Search/Model/SynonymAnalyzer.php index bd3886409fb89..970a10342b68c 100644 --- a/app/code/Magento/Search/Model/SynonymAnalyzer.php +++ b/app/code/Magento/Search/Model/SynonymAnalyzer.php @@ -7,6 +7,7 @@ declare(strict_types=1); namespace Magento\Search\Model; +use Magento\Framework\Exception\LocalizedException; use Magento\Search\Api\SynonymAnalyzerInterface; /** @@ -24,8 +25,9 @@ class SynonymAnalyzer implements SynonymAnalyzerInterface * * @param SynonymReader $synReader */ - public function __construct(SynonymReader $synReader) - { + public function __construct( + SynonymReader $synReader + ) { $this->synReaderModel = $synReader; } @@ -45,7 +47,7 @@ public function __construct(SynonymReader $synReader) * * @param string $phrase * @return array - * @throws \Magento\Framework\Exception\LocalizedException + * @throws LocalizedException */ public function getSynonymsForPhrase($phrase) { @@ -157,7 +159,7 @@ private function getSearchPattern(array $words): string * * @param string $phrase * @return string[] - * @throws \Magento\Framework\Exception\LocalizedException + * @throws LocalizedException */ private function getSynonymGroupsByPhrase(string $phrase): array { diff --git a/app/code/Magento/Search/Model/SynonymGroup.php b/app/code/Magento/Search/Model/SynonymGroup.php index 675627e83b283..35091e6a5c3a7 100644 --- a/app/code/Magento/Search/Model/SynonymGroup.php +++ b/app/code/Magento/Search/Model/SynonymGroup.php @@ -7,6 +7,7 @@ use Magento\Framework\Model\AbstractModel; use Magento\Search\Api\Data\SynonymGroupInterface; +use Magento\Search\Model\ResourceModel\SynonymGroup as ResourceSynonymGroup; class SynonymGroup extends AbstractModel implements SynonymGroupInterface { @@ -17,7 +18,7 @@ class SynonymGroup extends AbstractModel implements SynonymGroupInterface */ protected function _construct() { - $this->_init(\Magento\Search\Model\ResourceModel\SynonymGroup::class); + $this->_init(ResourceSynonymGroup::class); } /** diff --git a/app/code/Magento/Search/Model/SynonymGroupRepository.php b/app/code/Magento/Search/Model/SynonymGroupRepository.php index 7789fd7ba8e97..27ee6cbbc69f2 100644 --- a/app/code/Magento/Search/Model/SynonymGroupRepository.php +++ b/app/code/Magento/Search/Model/SynonymGroupRepository.php @@ -6,6 +6,8 @@ namespace Magento\Search\Model; +use Exception; +use Magento\Framework\Exception\AlreadyExistsException; use Magento\Framework\Exception\CouldNotDeleteException; use Magento\Framework\Phrase; use Magento\Search\Api\Data\SynonymGroupInterface; @@ -17,30 +19,16 @@ */ class SynonymGroupRepository implements SynonymGroupRepositoryInterface { - /** - * @var SynonymGroupFactory - */ - protected $synonymGroupFactory; - - /** - * SynonymGroup resource model - * - * @var SynonymGroupResourceModel - */ - protected $resourceModel; - /** * Constructor * * @param SynonymGroupFactory $synonymGroupFactory - * @param SynonymGroupResourceModel $resourceModel + * @param SynonymGroupResourceModel $resourceModel SynonymGroup resource model */ public function __construct( - SynonymGroupFactory $synonymGroupFactory, - SynonymGroupResourceModel $resourceModel + protected readonly SynonymGroupFactory $synonymGroupFactory, + protected readonly SynonymGroupResourceModel $resourceModel ) { - $this->synonymGroupFactory = $synonymGroupFactory; - $this->resourceModel = $resourceModel; } /** @@ -70,7 +58,7 @@ public function delete(SynonymGroupInterface $synonymGroup) { try { $this->resourceModel->delete($synonymGroup); - } catch (\Exception $exception) { + } catch (Exception $exception) { throw new CouldNotDeleteException( __( 'The synonym group with the "%1" ID can\'t be deleted. %2', @@ -86,7 +74,7 @@ public function delete(SynonymGroupInterface $synonymGroup) * Return a particular synonym group interface instance based on passed in synonym group id * * @param int $synonymGroupId - * @return \Magento\Search\Api\Data\SynonymGroupInterface + * @return SynonymGroupInterface */ public function get($synonymGroupId) { @@ -105,7 +93,7 @@ public function get($synonymGroupId) * @param bool $errorOnMergeConflict * @return SynonymGroupInterface * @throws Synonym\MergeConflictException - * @throws \Magento\Framework\Exception\AlreadyExistsException + * @throws AlreadyExistsException */ private function create(SynonymGroupInterface $synonymGroup, $errorOnMergeConflict) { @@ -144,7 +132,7 @@ private function create(SynonymGroupInterface $synonymGroup, $errorOnMergeConfli * @param SynonymGroupInterface $synonymGroupToMerge * @param array $matchingGroupIds * @return array - * @throws \Exception + * @throws Exception */ private function merge(SynonymGroupInterface $synonymGroupToMerge, array $matchingGroupIds) { @@ -183,7 +171,7 @@ private function populateSynonymGroupModel(SynonymGroup $modelToPopulate, Synony * @param bool $errorOnMergeConflict * @return SynonymGroupInterface * @throws Synonym\MergeConflictException - * @throws \Magento\Framework\Exception\AlreadyExistsException + * @throws AlreadyExistsException */ private function update( SynonymGroup $oldSynonymGroup, diff --git a/app/code/Magento/Search/Model/SynonymReader.php b/app/code/Magento/Search/Model/SynonymReader.php index a78219b65a812..d6dc80de73f8c 100644 --- a/app/code/Magento/Search/Model/SynonymReader.php +++ b/app/code/Magento/Search/Model/SynonymReader.php @@ -6,20 +6,23 @@ namespace Magento\Search\Model; use Magento\Framework\Data\Collection\AbstractDb as DbCollection; +use Magento\Framework\Exception\LocalizedException; use Magento\Framework\Model\AbstractModel; +use Magento\Framework\Model\Context as ModelContext; use Magento\Framework\Model\ResourceModel\AbstractResource; use Magento\Framework\Registry; +use Magento\Search\Model\ResourceModel\SynonymReader as ResourceSynonymReader; /** * Data model to retrieve synonyms by passed in phrase * - * @method \Magento\Search\Model\SynonymReader setGroupId(int $group) + * @method SynonymReader setGroupId(int $group) * @method int getGroupId() - * @method \Magento\Search\Model\SynonymReader setStoreId(int $storeId) + * @method SynonymReader setStoreId(int $storeId) * @method int getStoreId() - * @method \Magento\Search\Model\SynonymReader setWebsiteId(int $websiteId) + * @method SynonymReader setWebsiteId(int $websiteId) * @method int getWebsiteId() - * @method \Magento\Search\Model\SynonymReader setSynonyms(string $value) + * @method SynonymReader setSynonyms(string $value) * @method string getSynonyms() * @api * @since 100.1.0 @@ -43,18 +46,18 @@ class SynonymReader extends AbstractModel /** * Construct * - * @param \Magento\Framework\Model\Context $context + * @param ModelContext $context * @param Registry $registry - * @param \Magento\Framework\Model\ResourceModel\AbstractResource $resource + * @param AbstractResource $resource * @param DbCollection $resourceCollection * @param array $data */ public function __construct( //phpcs:ignore Generic.CodeAnalysis.UselessOverridingMethod - \Magento\Framework\Model\Context $context, - Registry $registry, + ModelContext $context, + Registry $registry, AbstractResource $resource = null, - DbCollection $resourceCollection = null, - array $data = [] + DbCollection $resourceCollection = null, + array $data = [] ) { parent::__construct($context, $registry, $resource, $resourceCollection, $data); } @@ -67,7 +70,7 @@ public function __construct( //phpcs:ignore Generic.CodeAnalysis.UselessOverridi */ protected function _construct() { - $this->_init(\Magento\Search\Model\ResourceModel\SynonymReader::class); + $this->_init(ResourceSynonymReader::class); } /** @@ -75,7 +78,7 @@ protected function _construct() * * @param string $phrase * @return $this - * @throws \Magento\Framework\Exception\LocalizedException + * @throws LocalizedException * @since 100.1.0 */ public function loadByPhrase($phrase) diff --git a/app/code/Magento/Search/Setup/CompositeInstallConfig.php b/app/code/Magento/Search/Setup/CompositeInstallConfig.php index 013586a07a311..cb453229b648f 100644 --- a/app/code/Magento/Search/Setup/CompositeInstallConfig.php +++ b/app/code/Magento/Search/Setup/CompositeInstallConfig.php @@ -15,26 +15,14 @@ */ class CompositeInstallConfig implements InstallConfigInterface { - /** - * @var InstallConfigInterface[] - */ - private $installConfigList; - - /** - * @var ScopeConfigInterface - */ - private $scopeConfig; - /** * @param ScopeConfigInterface $scopeConfig * @param InstallConfigInterface[] $installConfigList */ public function __construct( - ScopeConfigInterface $scopeConfig, - array $installConfigList = [] + private readonly ScopeConfigInterface $scopeConfig, + private readonly array $installConfigList = [] ) { - $this->scopeConfig = $scopeConfig; - $this->installConfigList = $installConfigList; } /** diff --git a/app/code/Magento/Search/Setup/InstallConfig.php b/app/code/Magento/Search/Setup/InstallConfig.php index 8652baccac56e..b364f24c15d30 100644 --- a/app/code/Magento/Search/Setup/InstallConfig.php +++ b/app/code/Magento/Search/Setup/InstallConfig.php @@ -24,20 +24,14 @@ class InstallConfig implements InstallConfigInterface SearchConfigOptionsList::INPUT_KEY_SEARCH_ENGINE => 'engine' ]; - /** - * @var WriterInterface - */ - private $configWriter; - /** * @param WriterInterface $configWriter * @param array $searchConfigMapping */ public function __construct( - WriterInterface $configWriter, + private readonly WriterInterface $configWriter, array $searchConfigMapping = [] ) { - $this->configWriter = $configWriter; $this->searchConfigMapping = array_merge($this->searchConfigMapping, $searchConfigMapping); } diff --git a/app/code/Magento/Search/Ui/Component/Listing/Column/Scope/Options.php b/app/code/Magento/Search/Ui/Component/Listing/Column/Scope/Options.php index afa702e488529..5ec9262c25e5e 100644 --- a/app/code/Magento/Search/Ui/Component/Listing/Column/Scope/Options.php +++ b/app/code/Magento/Search/Ui/Component/Listing/Column/Scope/Options.php @@ -7,27 +7,17 @@ use Magento\Framework\Data\OptionSourceInterface; use Magento\Framework\Escaper; +use Magento\Search\Ui\Component\Listing\Column\Website\Options as ColumnWebsiteOptions; +use Magento\Store\Model\Group; +use Magento\Store\Model\Store; use Magento\Store\Model\System\Store as SystemStore; +use Magento\Store\Model\Website; /** * Class Options */ class Options implements OptionSourceInterface { - /** - * Escaper - * - * @var Escaper - */ - protected $escaper; - - /** - * System store - * - * @var SystemStore - */ - protected $systemStore; - /** * @var array */ @@ -41,13 +31,13 @@ class Options implements OptionSourceInterface /** * Constructor * - * @param SystemStore $systemStore - * @param Escaper $escaper + * @param SystemStore $systemStore System store + * @param Escaper $escaper Escaper */ - public function __construct(SystemStore $systemStore, Escaper $escaper) - { - $this->systemStore = $systemStore; - $this->escaper = $escaper; + public function __construct( + protected readonly SystemStore $systemStore, + protected readonly Escaper $escaper + ) { } /** @@ -79,26 +69,26 @@ protected function generateCurrentOptions() // Add option to select All Websites $this->currentOptions['All Websites']['label'] = $this->escaper->escapeHtml(__('All Websites')); $this->currentOptions['All Websites']['value'] = - \Magento\Search\Ui\Component\Listing\Column\Website\Options::ALL_WEBSITES + ColumnWebsiteOptions::ALL_WEBSITES . ':' - . \Magento\Store\Model\Store::DEFAULT_STORE_ID; + . Store::DEFAULT_STORE_ID; foreach ($websiteCollection as $website) { $groups = []; - /** @var \Magento\Store\Model\Group $group */ + /** @var Group $group */ foreach ($groupCollection as $group) { if ($group->getWebsiteId() == $website->getId()) { $stores = []; - /** @var \Magento\Store\Model\Store $store */ + /** @var Store $store */ // Add an option for All store views for this website $stores['All Store Views']['label'] = $this->escaper->escapeHtml(__(' All Store Views')); $stores['All Store Views']['value'] = $website->getId() . ':' - . \Magento\Store\Model\Store::DEFAULT_STORE_ID; + . Store::DEFAULT_STORE_ID; - /** @var \Magento\Store\Model\Website $website */ + /** @var Website $website */ foreach ($storeCollection as $store) { if ($store->getGroupId() == $group->getId()) { $name = $this->escaper->escapeHtml($store->getName()); diff --git a/app/code/Magento/Search/Ui/Component/Listing/Column/Store/Options.php b/app/code/Magento/Search/Ui/Component/Listing/Column/Store/Options.php index b03e4f5972198..1cd590a9e8f58 100644 --- a/app/code/Magento/Search/Ui/Component/Listing/Column/Store/Options.php +++ b/app/code/Magento/Search/Ui/Component/Listing/Column/Store/Options.php @@ -6,6 +6,7 @@ namespace Magento\Search\Ui\Component\Listing\Column\Store; +use Magento\Store\Model\Store; use Magento\Store\Ui\Component\Listing\Column\Store\Options as StoreOptions; class Options extends StoreOptions @@ -25,7 +26,7 @@ public function toOptionArray() $this->currentOptions['']['value'] = '--'; $this->currentOptions['All Store Views']['label'] = __('All Store Views'); - $this->currentOptions['All Store Views']['value'] = \Magento\Store\Model\Store::DEFAULT_STORE_ID; + $this->currentOptions['All Store Views']['value'] = Store::DEFAULT_STORE_ID; $this->generateCurrentOptions(); diff --git a/app/code/Magento/Search/Ui/Component/Listing/Column/StoreView.php b/app/code/Magento/Search/Ui/Component/Listing/Column/StoreView.php index 405042f2e7825..fae2eda4845b0 100644 --- a/app/code/Magento/Search/Ui/Component/Listing/Column/StoreView.php +++ b/app/code/Magento/Search/Ui/Component/Listing/Column/StoreView.php @@ -6,8 +6,10 @@ namespace Magento\Search\Ui\Component\Listing\Column; use Magento\Framework\Escaper; +use Magento\Framework\Exception\NoSuchEntityException; use Magento\Framework\View\Element\UiComponent\ContextInterface; use Magento\Framework\View\Element\UiComponentFactory; +use Magento\Store\Model\Store; use Magento\Ui\Component\Listing\Columns\Column; use Magento\Store\Model\StoreManagerInterface; @@ -16,11 +18,6 @@ */ class StoreView extends Column { - /** - * @var StoreManagerInterface - */ - protected $storeManager; - /** * Constructor * @@ -33,11 +30,10 @@ class StoreView extends Column public function __construct( ContextInterface $context, UiComponentFactory $uiComponentFactory, - StoreManagerInterface $storeManager, + protected readonly StoreManagerInterface $storeManager, array $components = [], array $data = [] ) { - $this->storeManager = $storeManager; parent::__construct($context, $uiComponentFactory, $components, $data); } @@ -46,7 +42,7 @@ public function __construct( * * @param array $dataSource * @return array - * @throws \Magento\Framework\Exception\NoSuchEntityException + * @throws NoSuchEntityException */ public function prepareDataSource(array $dataSource) { @@ -63,12 +59,12 @@ public function prepareDataSource(array $dataSource) * * @param array $item * @return string - * @throws \Magento\Framework\Exception\NoSuchEntityException + * @throws NoSuchEntityException */ protected function prepareItem(array $item) { - if ($item['store_id'] == \Magento\Store\Model\Store::DEFAULT_STORE_ID) { + if ($item['store_id'] == Store::DEFAULT_STORE_ID) { return __('All Store Views'); } return $this->storeManager->getStore($item['store_id'])->getName(); diff --git a/app/code/Magento/Search/Ui/Component/Listing/Column/SynonymActions.php b/app/code/Magento/Search/Ui/Component/Listing/Column/SynonymActions.php index 191726bd2689b..6dbad83712c6c 100644 --- a/app/code/Magento/Search/Ui/Component/Listing/Column/SynonymActions.php +++ b/app/code/Magento/Search/Ui/Component/Listing/Column/SynonymActions.php @@ -20,11 +20,6 @@ class SynonymActions extends Column const SYNONYM_URL_PATH_DELETE = 'search/synonyms/delete'; const SYNONYM_URL_PATH_EDIT = 'search/synonyms/edit'; - /** - * @var \Magento\Framework\UrlInterface - */ - protected $urlBuilder; - /** * @param ContextInterface $context * @param UiComponentFactory $uiComponentFactory @@ -35,11 +30,10 @@ class SynonymActions extends Column public function __construct( ContextInterface $context, UiComponentFactory $uiComponentFactory, - UrlInterface $urlBuilder, + protected readonly UrlInterface $urlBuilder, array $components = [], array $data = [] ) { - $this->urlBuilder = $urlBuilder; parent::__construct($context, $uiComponentFactory, $components, $data); } diff --git a/app/code/Magento/Search/Ui/Component/Listing/Column/Website.php b/app/code/Magento/Search/Ui/Component/Listing/Column/Website.php index 78fd4b9c36a80..ca4dee1a07341 100644 --- a/app/code/Magento/Search/Ui/Component/Listing/Column/Website.php +++ b/app/code/Magento/Search/Ui/Component/Listing/Column/Website.php @@ -6,6 +6,7 @@ namespace Magento\Search\Ui\Component\Listing\Column; use Magento\Framework\Escaper; +use Magento\Framework\Exception\LocalizedException; use Magento\Framework\View\Element\UiComponent\ContextInterface; use Magento\Framework\View\Element\UiComponentFactory; use Magento\Store\Model\System\Store as SystemStore; @@ -17,11 +18,6 @@ */ class Website extends Column { - /** - * @var StoreManagerInterface - */ - protected $storeManager; - /** * Constructor * @@ -34,11 +30,10 @@ class Website extends Column public function __construct( ContextInterface $context, UiComponentFactory $uiComponentFactory, - StoreManagerInterface $storeManager, + protected readonly StoreManagerInterface $storeManager, array $components = [], array $data = [] ) { - $this->storeManager = $storeManager; parent::__construct($context, $uiComponentFactory, $components, $data); } @@ -47,7 +42,7 @@ public function __construct( * * @param array $dataSource * @return array - * @throws \Magento\Framework\Exception\LocalizedException + * @throws LocalizedException */ public function prepareDataSource(array $dataSource) { @@ -64,7 +59,7 @@ public function prepareDataSource(array $dataSource) * * @param array $item * @return string - * @throws \Magento\Framework\Exception\LocalizedException + * @throws LocalizedException */ protected function prepareItem(array $item) { diff --git a/app/code/Magento/Search/Ui/Component/Listing/Column/Website/Options.php b/app/code/Magento/Search/Ui/Component/Listing/Column/Website/Options.php index 3deaa15f5bd38..f6e987940201a 100644 --- a/app/code/Magento/Search/Ui/Component/Listing/Column/Website/Options.php +++ b/app/code/Magento/Search/Ui/Component/Listing/Column/Website/Options.php @@ -18,30 +18,16 @@ class Options implements OptionSourceInterface */ const ALL_WEBSITES = '0'; - /** - * Escaper - * - * @var Escaper - */ - protected $escaper; - - /** - * System store - * - * @var SystemStore - */ - protected $systemStore; - /** * Constructor * - * @param SystemStore $systemStore - * @param Escaper $escaper + * @param SystemStore $systemStore System store + * @param Escaper $escaper Escaper */ - public function __construct(SystemStore $systemStore, Escaper $escaper) - { - $this->systemStore = $systemStore; - $this->escaper = $escaper; + public function __construct( + protected readonly SystemStore $systemStore, + protected readonly Escaper $escaper + ) { } /** diff --git a/app/code/Magento/Search/ViewModel/ConfigProvider.php b/app/code/Magento/Search/ViewModel/ConfigProvider.php index b1db5b57e13e0..c15101ab94e92 100644 --- a/app/code/Magento/Search/ViewModel/ConfigProvider.php +++ b/app/code/Magento/Search/ViewModel/ConfigProvider.php @@ -22,26 +22,14 @@ class ConfigProvider implements ArgumentInterface */ private const SEARCH_SUGGESTION_ENABLED = 'catalog/search/search_suggestion_enabled'; - /** - * @var ScopeConfigInterface - */ - private $scopeConfig; - - /** - * @var SearchHelper - */ - private $searchHelper; - /** * @param ScopeConfigInterface $scopeConfig * @param SearchHelper $searchHelper */ public function __construct( - ScopeConfigInterface $scopeConfig, - SearchHelper $searchHelper + private readonly ScopeConfigInterface $scopeConfig, + private readonly SearchHelper $searchHelper ) { - $this->scopeConfig = $scopeConfig; - $this->searchHelper = $searchHelper; } /** diff --git a/app/code/Magento/Search/registration.php b/app/code/Magento/Search/registration.php index 48210f971c4c0..ea4d3bb49e595 100644 --- a/app/code/Magento/Search/registration.php +++ b/app/code/Magento/Search/registration.php @@ -6,4 +6,8 @@ use Magento\Framework\Component\ComponentRegistrar; -ComponentRegistrar::register(ComponentRegistrar::MODULE, 'Magento_Search', __DIR__); +ComponentRegistrar::register( + ComponentRegistrar::MODULE, + 'Magento_Search', + __DIR__ +);