1818
1919package org .springdoc .core ;
2020
21+ import java .lang .annotation .Annotation ;
22+ import java .lang .reflect .Method ;
23+ import java .math .BigDecimal ;
24+ import java .util .ArrayList ;
25+ import java .util .Arrays ;
26+ import java .util .HashMap ;
27+ import java .util .LinkedHashMap ;
28+ import java .util .List ;
29+ import java .util .Map ;
30+ import java .util .Objects ;
31+ import java .util .Optional ;
32+ import java .util .Set ;
33+ import java .util .stream .Collectors ;
34+ import java .util .stream .Stream ;
35+
36+ import javax .validation .constraints .DecimalMax ;
37+ import javax .validation .constraints .DecimalMin ;
38+ import javax .validation .constraints .Max ;
39+ import javax .validation .constraints .Min ;
40+ import javax .validation .constraints .NotNull ;
41+ import javax .validation .constraints .Pattern ;
42+ import javax .validation .constraints .Size ;
43+
2144import com .fasterxml .jackson .annotation .JsonView ;
2245import io .swagger .v3 .oas .annotations .enums .ParameterIn ;
2346import io .swagger .v3 .oas .models .Components ;
3457import org .springdoc .core .converters .AdditionalModelsConverter ;
3558import org .springdoc .core .customizers .OperationCustomizer ;
3659import org .springdoc .core .customizers .ParameterCustomizer ;
60+
3761import org .springframework .core .LocalVariableTableParameterNameDiscoverer ;
3862import org .springframework .core .MethodParameter ;
3963import org .springframework .core .annotation .AnnotatedElementUtils ;
4064import org .springframework .http .HttpMethod ;
4165import org .springframework .util .CollectionUtils ;
4266import org .springframework .validation .BindingResult ;
4367import org .springframework .validation .Errors ;
44- import org .springframework .web .bind .annotation .*;
68+ import org .springframework .web .bind .annotation .CookieValue ;
69+ import org .springframework .web .bind .annotation .PathVariable ;
70+ import org .springframework .web .bind .annotation .RequestAttribute ;
71+ import org .springframework .web .bind .annotation .RequestHeader ;
72+ import org .springframework .web .bind .annotation .RequestMethod ;
73+ import org .springframework .web .bind .annotation .RequestParam ;
74+ import org .springframework .web .bind .annotation .ValueConstants ;
4575import org .springframework .web .bind .support .SessionStatus ;
4676import org .springframework .web .context .request .NativeWebRequest ;
4777import org .springframework .web .context .request .WebRequest ;
4878import org .springframework .web .method .HandlerMethod ;
4979import org .springframework .web .util .UriComponentsBuilder ;
5080
51- import javax .validation .constraints .*;
52- import java .lang .annotation .Annotation ;
53- import java .lang .reflect .Method ;
54- import java .math .BigDecimal ;
55- import java .util .*;
56- import java .util .stream .Collectors ;
57- import java .util .stream .Stream ;
58-
5981import static org .springdoc .core .Constants .OPENAPI_ARRAY_TYPE ;
6082import static org .springdoc .core .Constants .OPENAPI_STRING_TYPE ;
6183import static org .springdoc .core .Constants .QUERY_PARAM ;
@@ -150,7 +172,8 @@ public Operation build(HandlerMethod handlerMethod, RequestMethod requestMethod,
150172 .map (f -> DelegatingMethodParameter .fromGetterOfField (paramClass , f ))
151173 .filter (Objects ::nonNull )
152174 .forEach (explodedParameters ::add );
153- } else {
175+ }
176+ else {
154177 String name = pNames != null ? pNames [i ] : p .getParameterName ();
155178 explodedParameters .add (new DelegatingMethodParameter (p , name , null ));
156179 }
@@ -166,14 +189,12 @@ public Operation build(HandlerMethod handlerMethod, RequestMethod requestMethod,
166189 // check if query param
167190 Parameter parameter = null ;
168191 io .swagger .v3 .oas .annotations .Parameter parameterDoc = methodParameter .getParameterAnnotation (io .swagger .v3 .oas .annotations .Parameter .class );
169- if (parameterDoc == null ) {
192+ if (parameterDoc == null )
170193 parameterDoc = parametersDocMap .get (methodParameter .getParameterName ());
171- }
172194 // use documentation as reference
173195 if (parameterDoc != null ) {
174- if (parameterDoc .hidden ()) {
196+ if (parameterDoc .hidden ())
175197 continue ;
176- }
177198 parameter = parameterBuilder .buildParameterFromDoc (parameterDoc , null ,
178199 methodAttributes .getJsonViewAnnotation ());
179200 }
@@ -185,12 +206,11 @@ public Operation build(HandlerMethod handlerMethod, RequestMethod requestMethod,
185206 // Merge with the operation parameters
186207 parameter = parameterBuilder .mergeParameter (operationParameters , parameter );
187208 List <Annotation > parameterAnnotations = Arrays .asList (methodParameter .getParameterAnnotations ());
188- if (isValidParameter (parameter )) {
209+ if (isValidParameter (parameter ))
189210 applyBeanValidatorAnnotations (parameter , parameterAnnotations );
190- } else if (!RequestMethod .GET .equals (requestMethod )) {
191- if (operation .getRequestBody () != null ) {
211+ else if (!RequestMethod .GET .equals (requestMethod )) {
212+ if (operation .getRequestBody () != null )
192213 requestBodyInfo .setRequestBody (operation .getRequestBody ());
193- }
194214 requestBodyBuilder .calculateRequestBodyInfo (components , methodAttributes ,
195215 parameterInfo , requestBodyInfo );
196216 applyBeanValidatorAnnotations (requestBodyInfo .getRequestBody (), parameterAnnotations );
0 commit comments