File tree Expand file tree Collapse file tree 5 files changed +177
-0
lines changed
springdoc-openapi-webmvc-core/src/test
java/test/org/springdoc/api/app181 Expand file tree Collapse file tree 5 files changed +177
-0
lines changed Original file line number Diff line number Diff line change
1
+ package test .org .springdoc .api .app181 ;
2
+
3
+ import io .swagger .v3 .oas .annotations .Parameter ;
4
+ import io .swagger .v3 .oas .annotations .media .Schema ;
5
+
6
+ public class AbstractParameterObject <T > {
7
+
8
+ int primitiveBaseField ;
9
+
10
+ T genericField ;
11
+
12
+ public int getPrimitiveBaseField () {
13
+ return primitiveBaseField ;
14
+ }
15
+
16
+ public void setPrimitiveBaseField (int primitiveBaseField ) {
17
+ this .primitiveBaseField = primitiveBaseField ;
18
+ }
19
+
20
+ public T getGenericField () {
21
+ return genericField ;
22
+ }
23
+
24
+ public void setGenericField (T genericField ) {
25
+ this .genericField = genericField ;
26
+ }
27
+ }
Original file line number Diff line number Diff line change
1
+ package test .org .springdoc .api .app181 ;
2
+
3
+ public class ConcreteParameterObject extends AbstractParameterObject <String > {
4
+
5
+ int primitiveConcreteField ;
6
+
7
+ public int getPrimitiveConcreteField () {
8
+ return primitiveConcreteField ;
9
+ }
10
+
11
+ public void setPrimitiveConcreteField (int primitiveConcreteField ) {
12
+ this .primitiveConcreteField = primitiveConcreteField ;
13
+ }
14
+ }
Original file line number Diff line number Diff line change
1
+ /*
2
+ *
3
+ * * Copyright 2019-2020 the original author or authors.
4
+ * *
5
+ * * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * * you may not use this file except in compliance with the License.
7
+ * * You may obtain a copy of the License at
8
+ * *
9
+ * * https://www.apache.org/licenses/LICENSE-2.0
10
+ * *
11
+ * * Unless required by applicable law or agreed to in writing, software
12
+ * * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * * See the License for the specific language governing permissions and
15
+ * * limitations under the License.
16
+ *
17
+ */
18
+
19
+ package test .org .springdoc .api .app181 ;
20
+
21
+ import org .springdoc .api .annotations .ParameterObject ;
22
+
23
+ import org .springframework .http .HttpStatus ;
24
+ import org .springframework .http .ResponseEntity ;
25
+ import org .springframework .web .bind .annotation .GetMapping ;
26
+ import org .springframework .web .bind .annotation .RestController ;
27
+
28
+ @ RestController
29
+ public class HelloController {
30
+
31
+ @ GetMapping ( "/test1" )
32
+ public ResponseEntity <String > sayHello ( @ ParameterObject final ConcreteParameterObject test ) {
33
+ System .out .println ("Field B = " + test );
34
+ return new ResponseEntity <String >("{\" Say\" : \" Hello\" }" , HttpStatus .OK );
35
+ }
36
+
37
+
38
+ }
Original file line number Diff line number Diff line change
1
+ /*
2
+ *
3
+ * * Copyright 2019-2020 the original author or authors.
4
+ * *
5
+ * * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * * you may not use this file except in compliance with the License.
7
+ * * You may obtain a copy of the License at
8
+ * *
9
+ * * https://www.apache.org/licenses/LICENSE-2.0
10
+ * *
11
+ * * Unless required by applicable law or agreed to in writing, software
12
+ * * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * * See the License for the specific language governing permissions and
15
+ * * limitations under the License.
16
+ *
17
+ */
18
+
19
+ package test .org .springdoc .api .app181 ;
20
+
21
+
22
+ import test .org .springdoc .api .AbstractSpringDocTest ;
23
+
24
+ import org .springframework .boot .autoconfigure .SpringBootApplication ;
25
+
26
+ /**
27
+ * Tests Spring meta-annotations as method parameters
28
+ */
29
+ public class SpringDocApp181Test extends AbstractSpringDocTest {
30
+
31
+ @ SpringBootApplication
32
+ static class SpringDocTestApp {}
33
+
34
+ }
Original file line number Diff line number Diff line change
1
+ {
2
+ "openapi" : " 3.0.1" ,
3
+ "info" : {
4
+ "title" : " OpenAPI definition" ,
5
+ "version" : " v0"
6
+ },
7
+ "servers" : [
8
+ {
9
+ "url" : " http://localhost" ,
10
+ "description" : " Generated server url"
11
+ }
12
+ ],
13
+ "paths" : {
14
+ "/test1" : {
15
+ "get" : {
16
+ "tags" : [
17
+ " hello-controller"
18
+ ],
19
+ "operationId" : " sayHello" ,
20
+ "parameters" : [
21
+ {
22
+ "name" : " primitiveConcreteField" ,
23
+ "in" : " query" ,
24
+ "required" : false ,
25
+ "schema" : {
26
+ "type" : " integer" ,
27
+ "format" : " int32"
28
+ }
29
+ },
30
+ {
31
+ "name" : " primitiveBaseField" ,
32
+ "in" : " query" ,
33
+ "required" : false ,
34
+ "schema" : {
35
+ "type" : " integer" ,
36
+ "format" : " int32"
37
+ }
38
+ },
39
+ {
40
+ "name" : " genericField" ,
41
+ "in" : " query" ,
42
+ "required" : false ,
43
+ "schema" : {
44
+ "type" : " string"
45
+ }
46
+ }
47
+ ],
48
+ "responses" : {
49
+ "200" : {
50
+ "description" : " OK" ,
51
+ "content" : {
52
+ "*/*" : {
53
+ "schema" : {
54
+ "type" : " string"
55
+ }
56
+ }
57
+ }
58
+ }
59
+ }
60
+ }
61
+ }
62
+ },
63
+ "components" : {}
64
+ }
You can’t perform that action at this time.
0 commit comments