diff --git a/Connection.php b/Connection.php index 41fec5f..8c0c3a2 100644 --- a/Connection.php +++ b/Connection.php @@ -67,6 +67,14 @@ class Connection extends Component #[Container(LoggerInterface::class)] public StdoutLogger $logger; + + /** + * @var EventProvider + */ + #[Container(EventProvider::class)] + public EventProvider $eventProvider; + + /** * @param Pool $connections */ @@ -99,14 +107,13 @@ class Connection extends Component */ public function init(): void { - $eventProvider = Kiri::getDi()->get(EventProvider::class); - $eventProvider->on(BeginTransaction::class, [$this, 'beginTransaction'], 0); - $eventProvider->on(Rollback::class, [$this, 'rollback'], 0); - $eventProvider->on(Commit::class, [$this, 'commit'], 0); - $eventProvider->on(OnAfterRequest::class, [$this, 'clear']); - $eventProvider->on(OnWorkerExit::class, [$this, 'disconnect']); - $eventProvider->on(OnWorkerStart::class, [$this, 'tick']); - $eventProvider->on(OnTaskerStart::class, [$this, 'tick']); + $this->eventProvider->on(BeginTransaction::class, [$this, 'beginTransaction'], 0); + $this->eventProvider->on(Rollback::class, [$this, 'rollback'], 0); + $this->eventProvider->on(Commit::class, [$this, 'commit'], 0); + $this->eventProvider->on(OnAfterRequest::class, [$this, 'clear']); + $this->eventProvider->on(OnWorkerExit::class, [$this, 'disconnect']); + $this->eventProvider->on(OnWorkerStart::class, [$this, 'tick']); + $this->eventProvider->on(OnTaskerStart::class, [$this, 'tick']); }