40 $this->_invoker = $invoker;
41 $this->_eventConfig = $eventConfig;
56 $eventName = mb_strtolower($eventName);
57 \Magento\Framework\Profiler::start(
'EVENT:' . $eventName, [
'group' =>
'EVENT',
'name' => $eventName]);
58 foreach ($this->_eventConfig->getObservers($eventName) as $observerConfig) {
59 $event = new \Magento\Framework\Event(
$data);
60 $event->setName($eventName);
63 $wrapper->setData(array_merge([
'event' => $event],
$data));
65 \Magento\Framework\Profiler::start(
'OBSERVER:' . $observerConfig[
'name']);
66 $this->_invoker->dispatch($observerConfig, $wrapper);
67 \Magento\Framework\Profiler::stop(
'OBSERVER:' . $observerConfig[
'name']);
69 \Magento\Framework\Profiler::stop(
'EVENT:' . $eventName);
__construct(InvokerInterface $invoker, ConfigInterface $eventConfig)
dispatch($eventName, array $data=[])