Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
Total | |
0.00% |
0 / 1 |
|
0.00% |
0 / 22 |
CRAP | |
0.00% |
0 / 29 |
MenuLinkBase | |
0.00% |
0 / 1 |
|
0.00% |
0 / 22 |
930 | |
0.00% |
0 / 29 |
getWeight | |
0.00% |
0 / 1 |
6 | |
0.00% |
0 / 3 |
|||
getMenuName | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
getProvider | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
getParent | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
isEnabled | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
isExpanded | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
isResettable | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
isTranslatable | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
isDeletable | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
getOptions | |
0.00% |
0 / 1 |
6 | |
0.00% |
0 / 1 |
|||
getMetaData | |
0.00% |
0 / 1 |
6 | |
0.00% |
0 / 1 |
|||
getRouteName | |
0.00% |
0 / 1 |
6 | |
0.00% |
0 / 1 |
|||
getRouteParameters | |
0.00% |
0 / 1 |
6 | |
0.00% |
0 / 1 |
|||
getUrlObject | |
0.00% |
0 / 1 |
20 | |
0.00% |
0 / 6 |
|||
getFormClass | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
getDeleteRoute | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
getEditRoute | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
getTranslateRoute | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
deleteLink | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
getCacheMaxAge | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
getCacheContexts | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
getCacheTags | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
<?php | |
/** | |
* @file | |
* Contains \Drupal\Core\Menu\MenuLinkBase. | |
*/ | |
namespace Drupal\Core\Menu; | |
use Drupal\Component\Plugin\Exception\PluginException; | |
use Drupal\Core\Cache\Cache; | |
use Drupal\Core\Plugin\PluginBase; | |
use Drupal\Core\Url; | |
/** | |
* Defines a base menu link class. | |
*/ | |
abstract class MenuLinkBase extends PluginBase implements MenuLinkInterface { | |
/** | |
* The list of definition values where an override is allowed. | |
* | |
* The keys are definition names. The values are ignored. | |
* | |
* @var array | |
*/ | |
protected $overrideAllowed = array(); | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getWeight() { | |
// By default the weight is 0. | |
if (!isset($this->pluginDefinition['weight'])) { | |
$this->pluginDefinition['weight'] = 0; | |
} | |
return $this->pluginDefinition['weight']; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getMenuName() { | |
return $this->pluginDefinition['menu_name']; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getProvider() { | |
return $this->pluginDefinition['provider']; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getParent() { | |
return $this->pluginDefinition['parent']; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function isEnabled() { | |
return (bool) $this->pluginDefinition['enabled']; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function isExpanded() { | |
return (bool) $this->pluginDefinition['expanded']; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function isResettable() { | |
return FALSE; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function isTranslatable() { | |
return (bool) $this->getTranslateRoute(); | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function isDeletable() { | |
return (bool) $this->getDeleteRoute(); | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getOptions() { | |
return $this->pluginDefinition['options'] ?: array(); | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getMetaData() { | |
return $this->pluginDefinition['metadata'] ?: array(); | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getRouteName() { | |
return isset($this->pluginDefinition['route_name']) ? $this->pluginDefinition['route_name'] : ''; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getRouteParameters() { | |
return isset($this->pluginDefinition['route_parameters']) ? $this->pluginDefinition['route_parameters'] : array(); | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getUrlObject($title_attribute = TRUE) { | |
$options = $this->getOptions(); | |
if ($title_attribute && $description = $this->getDescription()) { | |
$options['attributes']['title'] = $description; | |
} | |
if (empty($this->pluginDefinition['url'])) { | |
return new Url($this->getRouteName(), $this->getRouteParameters(), $options); | |
} | |
else { | |
return Url::fromUri($this->pluginDefinition['url'], $options); | |
} | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getFormClass() { | |
return $this->pluginDefinition['form_class']; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getDeleteRoute() { | |
return NULL; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getEditRoute() { | |
return NULL; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getTranslateRoute() { | |
return NULL; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function deleteLink() { | |
throw new PluginException("Menu link plugin with ID '{$this->getPluginId()}' does not support deletion"); | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getCacheMaxAge() { | |
return Cache::PERMANENT; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getCacheContexts() { | |
return []; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getCacheTags() { | |
return []; | |
} | |
} |