body = $requestBody; $this->queryParameters = $queryParameters; } public function getMethod(): string { return 'POST'; } public function getUri(): string { return '/containers/create'; } public function getBody(\Symfony\Component\Serializer\SerializerInterface $serializer, $streamFactory = null): array { if ($this->body instanceof \Docker\API\Model\ContainersCreatePostBody) { return [['Content-Type' => ['application/json']], $serializer->serialize($this->body, 'json')]; } if ($this->body instanceof \Docker\API\Model\ContainersCreatePostBody) { return [['Content-Type' => ['application/octet-stream']], $this->body]; } return [[], null]; } public function getExtraHeaders(): array { return ['Accept' => ['application/json']]; } protected function getQueryOptionsResolver(): \Symfony\Component\OptionsResolver\OptionsResolver { $optionsResolver = parent::getQueryOptionsResolver(); $optionsResolver->setDefined(['name', 'platform']); $optionsResolver->setRequired([]); $optionsResolver->setDefaults([]); $optionsResolver->addAllowedTypes('name', ['string']); $optionsResolver->addAllowedTypes('platform', ['string']); return $optionsResolver; } /** * @throws \Docker\API\Exception\ContainerCreateBadRequestException * @throws \Docker\API\Exception\ContainerCreateNotFoundException * @throws \Docker\API\Exception\ContainerCreateConflictException * @throws \Docker\API\Exception\ContainerCreateInternalServerErrorException * * @return \Docker\API\Model\ContainerCreateResponse|null */ protected function transformResponseBody(\Psr\Http\Message\ResponseInterface $response, \Symfony\Component\Serializer\SerializerInterface $serializer, ?string $contentType = null) { $status = $response->getStatusCode(); $body = (string) $response->getBody(); if ((null === $contentType) === false && (201 === $status && false !== mb_strpos($contentType, 'application/json'))) { return $serializer->deserialize($body, 'Docker\\API\\Model\\ContainerCreateResponse', 'json'); } if ((null === $contentType) === false && (400 === $status && false !== mb_strpos($contentType, 'application/json'))) { throw new \Docker\API\Exception\ContainerCreateBadRequestException($serializer->deserialize($body, 'Docker\\API\\Model\\ErrorResponse', 'json'), $response); } if ((null === $contentType) === false && (404 === $status && false !== mb_strpos($contentType, 'application/json'))) { throw new \Docker\API\Exception\ContainerCreateNotFoundException($serializer->deserialize($body, 'Docker\\API\\Model\\ErrorResponse', 'json'), $response); } if ((null === $contentType) === false && (409 === $status && false !== mb_strpos($contentType, 'application/json'))) { throw new \Docker\API\Exception\ContainerCreateConflictException($serializer->deserialize($body, 'Docker\\API\\Model\\ErrorResponse', 'json'), $response); } if ((null === $contentType) === false && (500 === $status && false !== mb_strpos($contentType, 'application/json'))) { throw new \Docker\API\Exception\ContainerCreateInternalServerErrorException($serializer->deserialize($body, 'Docker\\API\\Model\\ErrorResponse', 'json'), $response); } } public function getAuthenticationScopes(): array { return []; } }