function GenericEventSubscriber::getSubscribedEvents
File
-
src/
EventSubscriber/ GenericEventSubscriber.php, line 71
Class
- GenericEventSubscriber
- Subscribes to Symfony events and maps them to Rules events.
Namespace
Drupal\rules\EventSubscriberCode
public static function getSubscribedEvents() {
// Register this listener for every event that is used by a reaction rule.
$events = [];
$callback = [
'onRulesEvent',
100,
];
// If there is no state service there is nothing we can do here. This static
// method could be called early when the container is built, so the state
// service might not always be available.
if (!\Drupal::hasService('state')) {
return [];
}
// Since we cannot access the reaction rule config storage here we have to
// use the state system to provide registered Rules events. The Reaction
// Rule storage is responsible for keeping the registered events up to date
// in the state system.
// @see \Drupal\rules\Entity\ReactionRuleStorage
$state = \Drupal::state();
$registered_event_names = $state->get('rules.registered_events');
if (!empty($registered_event_names)) {
foreach ($registered_event_names as $event_name) {
$events[$event_name][] = $callback;
}
}
return $events;
}