src/FileTransfer/Services/FileTransferBaseService.php
protected function callOperationAsync($name, \DTS\eBaySDK\Types\BaseType $request, $responseClass)
    {
        /**
         * Modify the request object to add xop:Include element.
         */
        if ($name === 'uploadFile' && $request->hasAttachment()) {
            /**
             * Don't modify a request if the file attachment already exists.
             */
            if (!isset($request->fileAttachment)) {
                $request->fileAttachment = new \DTS\eBaySDK\FileTransfer\Types\FileAttachment();
            }

            if (!isset($request->fileAttachment->Data)) {
                $request->fileAttachment->Data = new \DTS\eBaySDK\FileTransfer\Types\Data([
                    'xopInclude' => new \DTS\eBaySDK\FileTransfer\Types\XopInclude([
                        'href' => 'cid:attachment.bin@devbay.net'
                    ])
                ]);
            }

            if (!isset($request->fileAttachment->Size)) {
                $attachment = $request->attachment();
                $request->fileAttachment->Size = strlen($attachment['data']);
            }
        }

        return parent::callOperationAsync($name, $request, $responseClass);
    }
protected function callOperationAsync($name, \DTS\eBaySDK\Types\BaseType $request, $responseClass)
    {
        /**
         * Modify the request object to add xop:Include element.
         */
        if ($name === 'uploadFile' && $request->hasAttachment()) {
            /**
             * Don't modify a request if the file attachment already exists.
             */
            if (!isset($request->fileAttachment)) {
                $request->fileAttachment = new \DTS\eBaySDK\FileTransfer\Types\FileAttachment();
            }

            if (!isset($request->fileAttachment->Data)) {
                $request->fileAttachment->Data = new \DTS\eBaySDK\FileTransfer\Types\Data([
                    'xopInclude' => new \DTS\eBaySDK\FileTransfer\Types\XopInclude([
                        'href' => 'cid:attachment.bin@devbay.net'
                    ])
                ]);
            }

            if (!isset($request->fileAttachment->Size)) {
                $attachment = $request->attachment();
                $request->fileAttachment->Size = strlen($attachment['data']);
            }
        }

        return parent::callOperationAsync($name, $request, $responseClass);
    }
protected function callOperationAsync ( $ name , \ DTS \ eBaySDK \ Types \ BaseType $ request , $ responseClass ) { /**
         * Modify the request object to add xop:Include element.
         */ if ( $ name === 'uploadFile' && $ request -> hasAttachment ( ) ) { /**
             * Don't modify a request if the file attachment already exists.
             */ if ( ! isset ( $ request -> fileAttachment ) ) { $ request -> fileAttachment = new \ DTS \ eBaySDK \ FileTransfer \ Types \ FileAttachment ( ) ; } if ( ! isset ( $ request -> fileAttachment -> Data ) ) { $ request -> fileAttachment -> Data = new \ DTS \ eBaySDK \ FileTransfer \ Types \ Data ( [ 'xopInclude' => new \ DTS \ eBaySDK \ FileTransfer \ Types \ XopInclude ( [ 'href' => 'cid:attachment.bin@devbay.net' ] ) ] ) ; } if ( ! isset ( $ request -> fileAttachment -> Size ) ) { $ attachment = $ request -> attachment ( ) ; $ request -> fileAttachment -> Size = strlen ( $ attachment [ 'data' ] ) ; } } return parent :: callOperationAsync ( $ name , $ request , $ responseClass ) ; }
Sends an API request.

This method overrides the parent so that it can modify
the request object before it is handled by the parent class.

@param string $name The name of the operation.
@param \DTS\eBaySDK\Types\BaseType $request Request object containing the request information.
@param string $responseClass The name of the PHP class that will be created from the XML response.

@return \GuzzleHttp\Promise\PromiseInterface A promise that will be resolved with an object created from the XML response.
Sends an API request .