protected function buildMethodDocumentation($className, $methodName)
    {
        $methodDocumentation = "    /**\n     * Autogenerated Proxy Method\n";

        if ($this->reflectionService->hasMethod($className, $methodName)) {
            $methodTags = $this->reflectionService->getMethodTagsValues($className, $methodName);
            $allowedTags = ['param', 'return', 'throws'];
            foreach ($methodTags as $tag => $values) {
                if (in_array($tag, $allowedTags)) {
                    if (count($values) === 0) {
                        $methodDocumentation .= '     * @' . $tag . "\n";
                    } else {
                        foreach ($values as $value) {
                            $methodDocumentation  .= '     * @' . $tag . ' ' . $value . "\n";
                        }
                    }
                }
            }
            $methodAnnotations = $this->reflectionService->getMethodAnnotations($className, $methodName);
            foreach ($methodAnnotations as $annotation) {
                $methodDocumentation .= '     * ' . Compiler::renderAnnotation($annotation) . "\n";
            }
        }

        $methodDocumentation .= "     */\n";
        return $methodDocumentation;
    }
protected function buildMethodDocumentation($className, $methodName)
    {
        $methodDocumentation = "    /**\n     * Autogenerated Proxy Method\n";

        if ($this->reflectionService->hasMethod($className, $methodName)) {
            $methodTags = $this->reflectionService->getMethodTagsValues($className, $methodName);
            $allowedTags = ['param', 'return', 'throws'];
            foreach ($methodTags as $tag => $values) {
                if (in_array($tag, $allowedTags)) {
                    if (count($values) === 0) {
                        $methodDocumentation .= '     * @' . $tag . "\n";
                    } else {
                        foreach ($values as $value) {
                            $methodDocumentation  .= '     * @' . $tag . ' ' . $value . "\n";
                        }
                    }
                }
            }
            $methodAnnotations = $this->reflectionService->getMethodAnnotations($className, $methodName);
            foreach ($methodAnnotations as $annotation) {
                $methodDocumentation .= '     * ' . Compiler::renderAnnotation($annotation) . "\n";
            }
        }

        $methodDocumentation .= "     */\n";
        return $methodDocumentation;
    }
protected function buildMethodDocumentation ( $ className , $ methodName ) { $ methodDocumentation = "    /**\n     * Autogenerated Proxy Method\n" ; if ( $ this -> reflectionService -> hasMethod ( $ className , $ methodName ) ) { $ methodTags = $ this -> reflectionService -> getMethodTagsValues ( $ className , $ methodName ) ; $ allowedTags = [ 'param' , 'return' , 'throws' ] ; foreach ( $ methodTags as $ tag => $ values ) { if ( in_array ( $ tag , $ allowedTags ) ) { if ( count ( $ values ) === 0 ) { $ methodDocumentation .= '     * @' . $ tag . "\n" ; } else { foreach ( $ values as $ value ) { $ methodDocumentation .= '     * @' . $ tag . ' ' . $ value . "\n" ; } } } } $ methodAnnotations = $ this -> reflectionService -> getMethodAnnotations ( $ className , $ methodName ) ; foreach ( $ methodAnnotations as $ annotation ) { $ methodDocumentation .= '     * ' . Compiler :: renderAnnotation ( $ annotation ) . "\n" ; } } $ methodDocumentation .= "     */\n" ; return $ methodDocumentation ; }
Builds the method documentation block for the specified method keeping the vital annotations

@param string $className Name of the class the method is declared in
@param string $methodName Name of the method to create the parameters code for
@return string $methodDocumentation DocComment for the given method
Builds the method documentation block for the specified method keeping the vital annotations