public function createRequest()
{
    $this->request = $this->createRequestObject();
    $this->processStandardHeaders();
    $this->processAcceptHeaders();
    $this->processUserAgentHeaders();
    $this->processFiles();
    $this->processAuthVars();
    $this->processCookies();

    $this->request->raw = &$_SERVER;

    return $this->request;
}

/**
 * Creates and returns an ezcMvcRequest object.
 *
 * @return ezcMvcRequest
 */
protected function createRequestObject()
{
    return new ezcMvcRequest();
}