protected function getStockRequest()

in lib/Api/DispatchApi.php [1155:1215]


    protected function getStockRequest($varForms)
    {
        // verify the required parameter 'app_key' is set
        if ($varForms['app_key'] === null || (is_array($varForms['app_key']) && count($varForms['app_key']) === 0)) {
            throw new \InvalidArgumentException(
                'Missing the required parameter $varForms[\'app_key\'] when calling getStock'
            );
        }
        // verify the required parameter 'type' is set
        if ($varForms['type'] === null || (is_array($varForms['type']) && count($varForms['type']) === 0)) {
            throw new \InvalidArgumentException(
                'Missing the required parameter $varForms[\'type\'] when calling getStock'
            );
        }

        $resourcePath = '/getStock';
        $formParams = [];
        $queryParams = [];
        $headerParams = [];
        $httpBody = '';

        // form params
        if ($varForms['game_id'] !== null) {
            $formParams['gameId'] = ObjectSerializer::toFormValue($varForms['game_id']);
        }
        $formParams['appKey'] = ObjectSerializer::toFormValue($varForms['app_key']);
        $formParams['type'] = ObjectSerializer::toFormValue($varForms['type']);

        $headers = $this->headerSelector->selectHeaders(
            ['application/json'],
            ['application/x-www-form-urlencoded']
        );

        // for model (json/xml)
        if (count($formParams) > 0) {
            if ($headers['Content-Type'] === 'application/json') {
                $httpBody = \GuzzleHttp\json_encode($formParams);

            } else {
                // for HTTP post (form)
                $httpBody = \GuzzleHttp\Psr7\build_query($formParams);
            }
        }

        $signHeaders = $this->headerSelector->prepareSignHeader($formParams, $queryParams, 'POST', $this->config);

        $headers = array_merge(
            ['User-Agent' => 'cgw-client/1.0.0/php'],
            $signHeaders,
            $headerParams,
            $headers
        );

        $query = \GuzzleHttp\Psr7\build_query($queryParams);
        return new Request(
            'POST',
            $this->config->getScheme() . '://' . $this->config->getHost() . $resourcePath . ($query ? "?{$query}" : ''),
            $headers,
            $httpBody
        );
    }