public function parseHTTP(\EventHttpRequest $eventHTTPRequest) { $this->setEventHTTPRequest($eventHTTPRequest); $headers = $eventHTTPRequest->getInputHeaders(); $server = array('REQUEST_URI' => $eventHTTPRequest->getUri()); list($server['REMOTE_ADDR'], $server['REMOTE_PORT']) = $this->getRemote(); $server['REQUEST_METHOD'] = array_search($eventHTTPRequest->getCommand(), array('GET' => \EventHttpRequest::CMD_GET, 'POST' => \EventHttpRequest::CMD_POST, 'HEAD' => \EventHttpRequest::CMD_HEAD, 'PUT' => \EventHttpRequest::CMD_PUT, 'DELETE' => \EventHttpRequest::CMD_DELETE, 'OPTIONS' => \EventHttpRequest::CMD_OPTIONS, 'TRACE ' => \EventHttpRequest::CMD_TRACE, 'CONNECT ' => \EventHttpRequest::CMD_CONNECT, 'PATCH ' => \EventHttpRequest::CMD_PATCH)); $request = Http\Http::parseRequest($server, $headers, $eventHTTPRequest->getInputBuffer()->read(static::MAX_INPUT)); $request->setConnection($this); $this->setRequest($request); Http\Http::handleRequest($request); $this->prepareEventGroup(); $this->emitPendingEvent(); $this->dispatchQueueEventEvent(); }