src/ArtaxServiceBuilder/OperationGenerator.php
function addCallMethod() {
        $methodGenerator = new MethodGenerator('call');
        $body = '';
        $body .= $this->generateCreateFragment();
        $body .= $this->generateExecuteFragment().PHP_EOL;

        $responseClass = $this->operationDefinition->getResponseClass();

        $body .= 'if ($this->shouldResponseBeProcessed($response)) {'.PHP_EOL;
        $body .= $this->generateResponseFragment('    ');
        $body .= PHP_EOL.'}'.PHP_EOL;
        $body .= 'return $response;';
        
        $docBlock = new DocBlockGenerator('Create and execute the operation, then return the processed  response.', null);
        //The response will either be the response class, or mixed if the remote api returned
        //a response that does not contain data e.g. HTTP 201, HTTP 202
        $tags[] = new GenericTag('return', 'mixed|\\'.$responseClass);
        $docBlock->setTags($tags);

        $methodGenerator->setBody($body);
        $methodGenerator->setDocBlock($docBlock);
        $this->classGenerator->addMethodFromGenerator($methodGenerator);
    }
function addCallMethod() {
        $methodGenerator = new MethodGenerator('call');
        $body = '';
        $body .= $this->generateCreateFragment();
        $body .= $this->generateExecuteFragment().PHP_EOL;

        $responseClass = $this->operationDefinition->getResponseClass();

        $body .= 'if ($this->shouldResponseBeProcessed($response)) {'.PHP_EOL;
        $body .= $this->generateResponseFragment('    ');
        $body .= PHP_EOL.'}'.PHP_EOL;
        $body .= 'return $response;';
        
        $docBlock = new DocBlockGenerator('Create and execute the operation, then return the processed  response.', null);
        //The response will either be the response class, or mixed if the remote api returned
        //a response that does not contain data e.g. HTTP 201, HTTP 202
        $tags[] = new GenericTag('return', 'mixed|\\'.$responseClass);
        $docBlock->setTags($tags);

        $methodGenerator->setBody($body);
        $methodGenerator->setDocBlock($docBlock);
        $this->classGenerator->addMethodFromGenerator($methodGenerator);
    }
function addCallMethod ( ) { $ methodGenerator = new MethodGenerator ( 'call' ) ; $ body = '' ; $ body .= $ this -> generateCreateFragment ( ) ; $ body .= $ this -> generateExecuteFragment ( ) . PHP_EOL ; $ responseClass = $ this -> operationDefinition -> getResponseClass ( ) ; $ body .= 'if ($this->shouldResponseBeProcessed($response)) {' . PHP_EOL ; $ body .= $ this -> generateResponseFragment ( '    ' ) ; $ body .= PHP_EOL . '}' . PHP_EOL ; $ body .= 'return $response;' ; $ docBlock = new DocBlockGenerator ( 'Create and execute the operation, then return the processed  response.' , null ) ; //The response will either be the response class, or mixed if the remote api returned //a response that does not contain data e.g. HTTP 201, HTTP 202 $ tags [ ] = new GenericTag ( 'return' , 'mixed|\\' . $ responseClass ) ; $ docBlock -> setTags ( $ tags ) ; $ methodGenerator -> setBody ( $ body ) ; $ methodGenerator -> setDocBlock ( $ docBlock ) ; $ this -> classGenerator -> addMethodFromGenerator ( $ methodGenerator ) ; }
Add the method that, creates the request, executes it, and processes the response
in one step. The method returns mixed rather than the opeartions response type,
as the api call may succeed, but not return data e.g. for HTTP 201 and 202 responses.
Add the method that creates the request executes it and processes the response in one step . The method returns mixed rather than the opeartions response type as the api call may succeed but not return data e . g . for HTTP 201 and 202 responses .