afterRequest = new OnAfterRequest(); $this->events = di(EventProvider::class)->getListenersForEvent($this->afterRequest); } /** * @param Response $proxy * @param object $response * @param object $request * @return void * @throws */ public function response(ResponseInterface $proxy, object $response, object $request): void { // TODO: Implement sender() method. $proxy->withHeader('Server', 'Swow'); $proxy->withHeader('Run-Time', $this->getRunTime($request)); $response->sendHttpResponse($proxy); $this->dispatch->execute($this->events, $this->afterRequest); } /** * @param object $request * @return float */ protected function getRunTime(object $request): float { return microtime(true) - +$request->getServerParam('request_time_float'); } }