Code Duplication    Length = 30-30 lines in 2 locations

src/Tools/Generator.php 2 locations

@@ 91-120 (lines=30) @@
88
        return $parsedRoute;
89
    }
90
91
    protected function getBodyParameters(ReflectionMethod $method, array $tags)
92
    {
93
        foreach ($method->getParameters() as $param) {
94
            $paramType = $param->getType();
95
            if ($paramType === null) {
96
                continue;
97
            }
98
99
            $parameterClassName = version_compare(phpversion(), '7.1.0', '<')
100
                ? $paramType->__toString()
101
                : $paramType->getName();
102
103
            try {
104
                $parameterClass = new ReflectionClass($parameterClassName);
105
            } catch (\ReflectionException $e) {
106
                continue;
107
            }
108
109
            if ( class_exists('\Illuminate\Foundation\Http\FormRequest') && $parameterClass->isSubclassOf(\Illuminate\Foundation\Http\FormRequest::class) || class_exists('\Dingo\Api\Http\FormRequest') && $parameterClass->isSubclassOf(\Dingo\Api\Http\FormRequest::class)) {
110
                $formRequestDocBlock = new DocBlock($parameterClass->getDocComment());
111
                $bodyParametersFromDocBlock = $this->getBodyParametersFromDocBlock($formRequestDocBlock->getTags());
112
113
                if (count($bodyParametersFromDocBlock)) {
114
                    return $bodyParametersFromDocBlock;
115
                }
116
            }
117
        }
118
119
        return $this->getBodyParametersFromDocBlock($tags);
120
    }
121
122
    /**
123
     * @param array $tags
@@ 166-195 (lines=30) @@
163
     *
164
     * @return array
165
     */
166
    protected function getQueryParameters(ReflectionMethod $method, array $tags)
167
    {
168
        foreach ($method->getParameters() as $param) {
169
            $paramType = $param->getType();
170
            if ($paramType === null) {
171
                continue;
172
            }
173
174
            $parameterClassName = version_compare(phpversion(), '7.1.0', '<')
175
                ? $paramType->__toString()
176
                : $paramType->getName();
177
178
            try {
179
                $parameterClass = new ReflectionClass($parameterClassName);
180
            } catch (\ReflectionException $e) {
181
                continue;
182
            }
183
184
            if ( class_exists('\Illuminate\Foundation\Http\FormRequest') && $parameterClass->isSubclassOf(\Illuminate\Foundation\Http\FormRequest::class) || class_exists('\Dingo\Api\Http\FormRequest') && $parameterClass->isSubclassOf(\Dingo\Api\Http\FormRequest::class)) {
185
                $formRequestDocBlock = new DocBlock($parameterClass->getDocComment());
186
                $queryParametersFromDocBlock = $this->getQueryParametersFromDocBlock($formRequestDocBlock->getTags());
187
188
                if (count($queryParametersFromDocBlock)) {
189
                    return $queryParametersFromDocBlock;
190
                }
191
            }
192
        }
193
194
        return $this->getQueryParametersFromDocBlock($tags);
195
    }
196
197
    /**
198
     * @param array $tags