Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
NoRouteHandler.php
Go to the documentation of this file.
1 <?php
9 
15 {
19  protected $helper;
20 
24  protected $routeConfig;
25 
30  public function __construct(
31  \Magento\Backend\Helper\Data $helper,
32  \Magento\Framework\App\Route\ConfigInterface $routeConfig
33  ) {
34  $this->helper = $helper;
35  $this->routeConfig = $routeConfig;
36  }
37 
44  public function process(\Magento\Framework\App\RequestInterface $request)
45  {
46  $requestPathParams = explode('/', trim($request->getPathInfo(), '/'));
47  $areaFrontName = array_shift($requestPathParams);
48 
49  if ($areaFrontName === $this->helper->getAreaFrontName(true)) {
50  $moduleName = $this->routeConfig->getRouteFrontName('adminhtml');
51  $actionNamespace = 'noroute';
52  $actionName = 'index';
53  $request->setModuleName($moduleName)->setControllerName($actionNamespace)->setActionName($actionName);
54  return true;
55  }
56  return false;
57  }
58 }
process(\Magento\Framework\App\RequestInterface $request)
__construct(\Magento\Backend\Helper\Data $helper, \Magento\Framework\App\Route\ConfigInterface $routeConfig)