protected function buildCoreRequest(HttpRequest $request) { $headers = $request->getHeaders(); $contentLength = 0; if (!$request->isParameterInUrl()) { $body = $request->getParameterString(); $contentLength = strlen($body); } else { $body = $request->getContent(); if ($body !== null) { AssertUtils::assertSet(HttpHeaders::CONTENT_LENGTH, $headers); $contentLength = (int) $headers[HttpHeaders::CONTENT_LENGTH]; } } $entity = null; $headers[HttpHeaders::CONTENT_LENGTH] = (string) $contentLength; if ($body !== null) { $entity = new ReadLimitEntityBody(EntityBody::factory($body), $contentLength, $request->getOffset() !== false ? $request->getOffset() : 0); } $coreRequest = $this->client->createRequest($request->getMethod(), $request->getFullUrl(), $headers, $entity); if ($request->getResponseBody() != null) { $coreRequest->setResponseBody($request->getResponseBody()); } return $coreRequest; }