@@ 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 |