MenuLinkConfigMapper.php in Config menu link 8
File
src/MenuLinkConfigMapper.php
View source
<?php
namespace Drupal\menu_link_config;
use Drupal\config_translation\ConfigEntityMapper;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Routing\Route;
class MenuLinkConfigMapper extends ConfigEntityMapper {
public function getBaseRouteParameters() {
return [
'menu_link_plugin' => 'menu_link_config:' . $this->entity
->id(),
'menu_link_config' => $this->entity
->id(),
];
}
public function populateFromRequest(Request $request) {
if ($request->attributes
->has('langcode')) {
$this->langcode = $request->attributes
->get('langcode');
}
else {
$this->langcode = NULL;
}
$plugin = $request->attributes
->get('menu_link_plugin');
$this
->setEntity($plugin
->getEntity());
}
protected function processRoute(Route $route) {
$parameters = $route
->getOption('parameters') ?: array();
$parameters += array(
'menu_link_plugin' => array(
'type' => 'menu_link_plugin',
),
);
$route
->setOption('parameters', $parameters);
}
}