protected static function updateVariantByIdRequest($variant_id, $variant) 
    {
        // verify the required parameter 'variant_id' is set
        if ($variant_id === null || (is_array($variant_id) && count($variant_id) === 0)) {
            throw new \InvalidArgumentException(
                'Missing the required parameter $variant_id when calling updateVariantById'
            );
        }
        // verify the required parameter 'variant' is set
        if ($variant === null || (is_array($variant) && count($variant) === 0)) {
            throw new \InvalidArgumentException(
                'Missing the required parameter $variant when calling updateVariantById'
            );
        }

        $resourcePath = '/variants/{variantId}';
        $formParams = [];
        $queryParams = [];
        $headerParams = [];
        $httpBody = '';
        $multipart = false;



        // path params
        if ($variant_id !== null) {
            $resourcePath = str_replace(
                '{' . 'variantId' . '}',
                ObjectSerializer::toPathValue($variant_id),
                $resourcePath
            );
        }

        // body params
        $_tempBody = null;
        if (isset($variant)) {
            $_tempBody = $variant;
        }

        if ($multipart) {
            $headers = self::getHeaderSelector()->selectHeadersForMultipart(
                ['application/json']
            );
        } else {
            $headers = self::getHeaderSelector()->selectHeaders(
                ['application/json'],
                ['application/json']
            );
        }

        // for model (json/xml)
        if (isset($_tempBody)) {
            // $_tempBody is the method argument, if present
            $httpBody = $_tempBody;
            // \stdClass has no __toString(), so we should encode it manually
            if ($httpBody instanceof \stdClass && $headers['Content-Type'] === 'application/json') {
                $httpBody = \GuzzleHttp\json_encode($httpBody);
            }
        } elseif (count($formParams) > 0) {
            if ($multipart) {
                $multipartContents = [];
                foreach ($formParams as $formParamName => $formParamValue) {
                    $multipartContents[] = [
                        'name' => $formParamName,
                        'contents' => $formParamValue
                    ];
                }
                // for HTTP post (form)
                $httpBody = new MultipartStream($multipartContents);

            } elseif ($headers['Content-Type'] === 'application/json') {
                $httpBody = \GuzzleHttp\json_encode($formParams);

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


        $defaultHeaders = [];
        if (self::getConfig()->getUserAgent()) {
            $defaultHeaders['User-Agent'] = self::getConfig()->getUserAgent();
        }

        $headers = array_merge(
            $defaultHeaders,
            $headerParams,
            $headers
        );

        $query = \GuzzleHttp\Psr7\build_query($queryParams);
        return new Request(
            'PATCH',
            self::getConfig()->getHost() . $resourcePath . ($query ? "?{$query}" : ''),
            $headers,
            $httpBody
        );
    }
protected static function updateVariantByIdRequest($variant_id, $variant) 
    {
        // verify the required parameter 'variant_id' is set
        if ($variant_id === null || (is_array($variant_id) && count($variant_id) === 0)) {
            throw new \InvalidArgumentException(
                'Missing the required parameter $variant_id when calling updateVariantById'
            );
        }
        // verify the required parameter 'variant' is set
        if ($variant === null || (is_array($variant) && count($variant) === 0)) {
            throw new \InvalidArgumentException(
                'Missing the required parameter $variant when calling updateVariantById'
            );
        }

        $resourcePath = '/variants/{variantId}';
        $formParams = [];
        $queryParams = [];
        $headerParams = [];
        $httpBody = '';
        $multipart = false;



        // path params
        if ($variant_id !== null) {
            $resourcePath = str_replace(
                '{' . 'variantId' . '}',
                ObjectSerializer::toPathValue($variant_id),
                $resourcePath
            );
        }

        // body params
        $_tempBody = null;
        if (isset($variant)) {
            $_tempBody = $variant;
        }

        if ($multipart) {
            $headers = self::getHeaderSelector()->selectHeadersForMultipart(
                ['application/json']
            );
        } else {
            $headers = self::getHeaderSelector()->selectHeaders(
                ['application/json'],
                ['application/json']
            );
        }

        // for model (json/xml)
        if (isset($_tempBody)) {
            // $_tempBody is the method argument, if present
            $httpBody = $_tempBody;
            // \stdClass has no __toString(), so we should encode it manually
            if ($httpBody instanceof \stdClass && $headers['Content-Type'] === 'application/json') {
                $httpBody = \GuzzleHttp\json_encode($httpBody);
            }
        } elseif (count($formParams) > 0) {
            if ($multipart) {
                $multipartContents = [];
                foreach ($formParams as $formParamName => $formParamValue) {
                    $multipartContents[] = [
                        'name' => $formParamName,
                        'contents' => $formParamValue
                    ];
                }
                // for HTTP post (form)
                $httpBody = new MultipartStream($multipartContents);

            } elseif ($headers['Content-Type'] === 'application/json') {
                $httpBody = \GuzzleHttp\json_encode($formParams);

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


        $defaultHeaders = [];
        if (self::getConfig()->getUserAgent()) {
            $defaultHeaders['User-Agent'] = self::getConfig()->getUserAgent();
        }

        $headers = array_merge(
            $defaultHeaders,
            $headerParams,
            $headers
        );

        $query = \GuzzleHttp\Psr7\build_query($queryParams);
        return new Request(
            'PATCH',
            self::getConfig()->getHost() . $resourcePath . ($query ? "?{$query}" : ''),
            $headers,
            $httpBody
        );
    }
protected static function updateVariantByIdRequest ( $ variant_id , $ variant ) { // verify the required parameter 'variant_id' is set if ( $ variant_id === null || ( is_array ( $ variant_id ) && count ( $ variant_id ) === 0 ) ) { throw new \ InvalidArgumentException ( 'Missing the required parameter $variant_id when calling updateVariantById' ) ; } // verify the required parameter 'variant' is set if ( $ variant === null || ( is_array ( $ variant ) && count ( $ variant ) === 0 ) ) { throw new \ InvalidArgumentException ( 'Missing the required parameter $variant when calling updateVariantById' ) ; } $ resourcePath = '/variants/{variantId}' ; $ formParams = [ ] ; $ queryParams = [ ] ; $ headerParams = [ ] ; $ httpBody = '' ; $ multipart = false ; // path params if ( $ variant_id !== null ) { $ resourcePath = str_replace ( '{' . 'variantId' . '}' , ObjectSerializer :: toPathValue ( $ variant_id ) , $ resourcePath ) ; } // body params $ _tempBody = null ; if ( isset ( $ variant ) ) { $ _tempBody = $ variant ; } if ( $ multipart ) { $ headers = self :: getHeaderSelector ( ) -> selectHeadersForMultipart ( [ 'application/json' ] ) ; } else { $ headers = self :: getHeaderSelector ( ) -> selectHeaders ( [ 'application/json' ] , [ 'application/json' ] ) ; } // for model (json/xml) if ( isset ( $ _tempBody ) ) { // $_tempBody is the method argument, if present $ httpBody = $ _tempBody ; // \stdClass has no __toString(), so we should encode it manually if ( $ httpBody instanceof \ stdClass && $ headers [ 'Content-Type' ] === 'application/json' ) { $ httpBody = \ GuzzleHttp \ json_encode ( $ httpBody ) ; } } elseif ( count ( $ formParams ) > 0 ) { if ( $ multipart ) { $ multipartContents = [ ] ; foreach ( $ formParams as $ formParamName => $ formParamValue ) { $ multipartContents [ ] = [ 'name' => $ formParamName , 'contents' => $ formParamValue ] ; } // for HTTP post (form) $ httpBody = new MultipartStream ( $ multipartContents ) ; } elseif ( $ headers [ 'Content-Type' ] === 'application/json' ) { $ httpBody = \ GuzzleHttp \ json_encode ( $ formParams ) ; } else { // for HTTP post (form) $ httpBody = \ GuzzleHttp \ Psr7 \ build_query ( $ formParams ) ; } } $ defaultHeaders = [ ] ; if ( self :: getConfig ( ) -> getUserAgent ( ) ) { $ defaultHeaders [ 'User-Agent' ] = self :: getConfig ( ) -> getUserAgent ( ) ; } $ headers = array_merge ( $ defaultHeaders , $ headerParams , $ headers ) ; $ query = \ GuzzleHttp \ Psr7 \ build_query ( $ queryParams ) ; return new Request ( 'PATCH' , self :: getConfig ( ) -> getHost ( ) . $ resourcePath . ( $ query ? "?{$query}" : '' ) , $ headers , $ httpBody ) ; }
Create request for operation 'updateVariantById'

@param  string $variant_id ID of variant to update. (required)
@param  \Tradenity\SDK\Resources\Variant $variant Attributes of variant to update. (required)

@throws \InvalidArgumentException
@return \GuzzleHttp\Psr7\Request
Create request for operation updateVariantById