X-Git-Url: http://aleph1.co.uk/gitweb/?a=blobdiff_plain;ds=sidebyside;f=web%2Fcore%2Fmodules%2Fconfig%2Ftests%2Fconfig_events_test%2Fsrc%2FEventSubscriber.php;fp=web%2Fcore%2Fmodules%2Fconfig%2Ftests%2Fconfig_events_test%2Fsrc%2FEventSubscriber.php;h=98417c02e95ea5c05d895fb3579f8b6388c126c6;hb=a2bd1bf0c2c1f1a17d188f4dc0726a45494cefae;hp=0000000000000000000000000000000000000000;hpb=57c063afa3f66b07c4bbddc2d6129a96d90f0aad;p=yaffs-website diff --git a/web/core/modules/config/tests/config_events_test/src/EventSubscriber.php b/web/core/modules/config/tests/config_events_test/src/EventSubscriber.php new file mode 100644 index 000000000..98417c02e --- /dev/null +++ b/web/core/modules/config/tests/config_events_test/src/EventSubscriber.php @@ -0,0 +1,58 @@ +state = $state; + } + + /** + * Reacts to config event. + * + * @param \Drupal\Core\Config\ConfigCrudEvent $event + * The configuration event. + * @param string $name + * The event name. + */ + public function configEventRecorder(ConfigCrudEvent $event, $name) { + $config = $event->getConfig(); + $this->state->set('config_events_test.event', [ + 'event_name' => $name, + 'current_config_data' => $config->get(), + 'original_config_data' => $config->getOriginal(), + 'raw_config_data' => $config->getRawData() + ]); + } + + /** + * {@inheritdoc} + */ + public static function getSubscribedEvents() { + $events[ConfigEvents::SAVE][] = ['configEventRecorder']; + $events[ConfigEvents::DELETE][] = ['configEventRecorder']; + $events[ConfigEvents::RENAME][] = ['configEventRecorder']; + return $events; + } + +}