You are here

public function FlagHookDeriver::getDerivativeDefinitions in Drupal 7 to 8/9 Module Upgrader 8

Gets the definition of all derivatives of a base plugin.

Parameters

array $base_plugin_definition: The definition array of the base plugin.

Return value

array An array of full derivative definitions keyed on derivative id.

Overrides DeriverInterface::getDerivativeDefinitions

See also

getDerivativeDefinition()

File

src/Plugin/DMU/Analyzer/FlagHookDeriver.php, line 34

Class

FlagHookDeriver

Namespace

Drupal\drupalmoduleupgrader\Plugin\DMU\Analyzer

Code

public function getDerivativeDefinitions($base_definition) {
  $derivatives = [];
  foreach ($this->config as $key => $info) {
    if (empty($info['hook'])) {
      $info['hook'] = [
        $key,
      ];
    }
    foreach ($info['hook'] as $hook) {
      $variables = [
        '@hook' => 'hook_' . $hook . '()',
      ];
      $derivative = array_merge($base_definition, $info);
      $derivative['hook'] = $hook;
      $derivative['message'] = $this
        ->t($info['message'], $variables);
      $derivative['description'] = $this
        ->t('Analyzes implementations of @hook.', $variables);
      foreach ($derivative['documentation'] as &$doc) {
        $doc['title'] = $this
          ->t($doc['title'], $variables);
      }
      $derivatives[$hook] = $derivative;
    }
  }
  return $derivatives;
}