/** * Handle received events * * @param array $events */ private function handleEvents(array $events) { foreach ($events as $event) { $watchDescriptor = $event['wd']; $this->dispatcher->trigger(new InotifyEvent(['path' => $this->watchDescriptors[$watchDescriptor], 'inotify' => $event])); } }
/** * Receive chunk data * * @param $data */ public function receiveData($data) { $this->receivedDataSize += strlen($data); $this->receivedData .= $data; if ($this->receivedDataSize >= $this->contentLength) { $this->dispatcher->trigger(new ReactRequestEvent($this->request, $this->response, $this->receivedData)); } }
/** * Test Listener */ public function testListener() { $listener = new SampleListener(); $this->dispatcher->attachListener($listener); $this->dispatcher->trigger(new SimpleEvent('test.listener')); $this->assertTrue($listener->triggered, 'Listener should have been triggered'); }
/** * Forward signal using internal event dispatcher * * @param int $signalNo */ public function handlePcntlSignal($signalNo) { $this->dispatcher->trigger(new PcntlSignalEvent(new Signal($signalNo))); }