diff --git a/.github/workflows/samples-spring.yaml b/.github/workflows/samples-spring.yaml
index 104e244a112..0ba66f74a5e 100644
--- a/.github/workflows/samples-spring.yaml
+++ b/.github/workflows/samples-spring.yaml
@@ -22,9 +22,10 @@ jobs:
- samples/openapi3/client/petstore/spring-cloud
- samples/client/petstore/spring-cloud-date-time
- samples/openapi3/client/petstore/spring-cloud-date-time
- - samples/client/petstore/spring-stubs
- samples/openapi3/client/petstore/spring-stubs
- samples/openapi3/client/petstore/spring-stubs-skip-default-interface
+ - samples/openapi3/client/petstore/spring-cloud-async
+ - samples/openapi3/client/petstore/spring-cloud-spring-pageable
# servers
- samples/server/petstore/springboot
- samples/openapi3/server/petstore/springboot
@@ -41,6 +42,10 @@ jobs:
- samples/openapi3/server/petstore/spring-boot-oneof
- samples/server/petstore/springboot-virtualan
- samples/server/petstore/springboot-implicitHeaders-annotationLibrary
+ - samples/server/petstore/springboot-spring-pageable-delegatePattern-without-j8
+ - samples/server/petstore/springboot-spring-pageable-delegatePattern
+ - samples/server/petstore/springboot-spring-pageable-without-j8
+ - samples/server/petstore/springboot-spring-pageable
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
diff --git a/bin/configs/spring-cloud-async-oas3.yaml b/bin/configs/spring-cloud-async-oas3.yaml
index 59c9d22e695..01e4dc6ce4d 100644
--- a/bin/configs/spring-cloud-async-oas3.yaml
+++ b/bin/configs/spring-cloud-async-oas3.yaml
@@ -1,7 +1,7 @@
generatorName: spring
outputDir: samples/openapi3/client/petstore/spring-cloud-async
library: spring-cloud
-inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
+inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
diff --git a/bin/configs/spring-cloud-async.yaml b/bin/configs/spring-cloud-async.yaml
deleted file mode 100644
index b14f654366f..00000000000
--- a/bin/configs/spring-cloud-async.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-generatorName: spring
-outputDir: samples/client/petstore/spring-cloud-async
-library: spring-cloud
-inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
-templateDir: modules/openapi-generator/src/main/resources/JavaSpring
-additionalProperties:
- documentationProvider: springfox
- async: "true"
- java8: "true"
- artifactId: petstore-spring-cloud
- hideGenerationTimestamp: "true"
diff --git a/bin/configs/spring-cloud-petstore-feign-spring-pageable-oas3.yaml b/bin/configs/spring-cloud-petstore-feign-spring-pageable-oas3.yaml
index 02c96627b64..b130111f0e0 100644
--- a/bin/configs/spring-cloud-petstore-feign-spring-pageable-oas3.yaml
+++ b/bin/configs/spring-cloud-petstore-feign-spring-pageable-oas3.yaml
@@ -1,7 +1,7 @@
generatorName: spring
outputDir: samples/openapi3/client/petstore/spring-cloud-spring-pageable
library: spring-cloud
-inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-spring-pageable.yaml
+inputSpec: modules/openapi-generator/src/test/resources/3_0/spring/petstore-with-spring-pageable.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
diff --git a/bin/configs/spring-cloud-petstore-feign-spring-pageable.yaml b/bin/configs/spring-cloud-petstore-feign-spring-pageable.yaml
deleted file mode 100644
index 506a1c53be6..00000000000
--- a/bin/configs/spring-cloud-petstore-feign-spring-pageable.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-generatorName: spring
-outputDir: samples/client/petstore/spring-cloud-spring-pageable
-library: spring-cloud
-inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-spring-pageable.yaml
-templateDir: modules/openapi-generator/src/main/resources/JavaSpring
-additionalProperties:
- documentationProvider: springfox
- artifactId: spring-cloud-spring-pageable
- hideGenerationTimestamp: 'true'
diff --git a/bin/configs/spring-stubs-oas3.yaml b/bin/configs/spring-stubs-oas3.yaml
index d5149f28adc..c37ba7e3c3c 100644
--- a/bin/configs/spring-stubs-oas3.yaml
+++ b/bin/configs/spring-stubs-oas3.yaml
@@ -1,6 +1,6 @@
generatorName: spring
outputDir: samples/openapi3/client/petstore/spring-stubs
-inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
+inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
diff --git a/bin/configs/spring-stubs-skip-default-interface.yaml b/bin/configs/spring-stubs-skip-default-interface.yaml
index bb107e0bd2a..43d4dd08089 100644
--- a/bin/configs/spring-stubs-skip-default-interface.yaml
+++ b/bin/configs/spring-stubs-skip-default-interface.yaml
@@ -1,6 +1,6 @@
generatorName: spring
outputDir: samples/openapi3/client/petstore/spring-stubs-skip-default-interface
-inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
+inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
groupId: org.openapitools.openapi3
diff --git a/bin/configs/spring-stubs.yaml b/bin/configs/spring-stubs.yaml
deleted file mode 100644
index 349c5e229c7..00000000000
--- a/bin/configs/spring-stubs.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-generatorName: spring
-outputDir: samples/server/petstore/spring-stubs
-inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
-templateDir: modules/openapi-generator/src/main/resources/JavaSpring
-additionalProperties:
- documentationProvider: springfox
- artifactId: spring-stubs
- interfaceOnly: "true"
- singleContentTypes: "true"
- hideGenerationTimestamp: "true"
diff --git a/bin/configs/springboot-petstore-server-spring-pageable-delegatePattern-without-j8.yaml b/bin/configs/springboot-petstore-server-spring-pageable-delegatePattern-without-j8.yaml
index 7d16b4a1e76..7716066d45e 100644
--- a/bin/configs/springboot-petstore-server-spring-pageable-delegatePattern-without-j8.yaml
+++ b/bin/configs/springboot-petstore-server-spring-pageable-delegatePattern-without-j8.yaml
@@ -1,7 +1,7 @@
generatorName: spring
outputDir: samples/server/petstore/springboot-spring-pageable-delegatePattern-without-j8
library: spring-boot
-inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing-with-spring-pageable.yaml
+inputSpec: modules/openapi-generator/src/test/resources/3_0/spring/petstore-with-fake-endpoints-models-for-testing-with-spring-pageable.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
delegatePattern: true
java8: false
diff --git a/bin/configs/springboot-petstore-server-spring-pageable-delegatePattern.yaml b/bin/configs/springboot-petstore-server-spring-pageable-delegatePattern.yaml
index 6cb1ca4b9cc..4060de18878 100644
--- a/bin/configs/springboot-petstore-server-spring-pageable-delegatePattern.yaml
+++ b/bin/configs/springboot-petstore-server-spring-pageable-delegatePattern.yaml
@@ -1,7 +1,7 @@
generatorName: spring
outputDir: samples/server/petstore/springboot-spring-pageable-delegatePattern
library: spring-boot
-inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing-with-spring-pageable.yaml
+inputSpec: modules/openapi-generator/src/test/resources/3_0/spring/petstore-with-fake-endpoints-models-for-testing-with-spring-pageable.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
delegatePattern: true
additionalProperties:
diff --git a/bin/configs/springboot-petstore-server-spring-pageable-without-j8.yaml b/bin/configs/springboot-petstore-server-spring-pageable-without-j8.yaml
index 87c63968490..bbfb4e85312 100644
--- a/bin/configs/springboot-petstore-server-spring-pageable-without-j8.yaml
+++ b/bin/configs/springboot-petstore-server-spring-pageable-without-j8.yaml
@@ -1,7 +1,7 @@
generatorName: spring
outputDir: samples/server/petstore/springboot-spring-pageable-without-j8
library: spring-boot
-inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing-with-spring-pageable.yaml
+inputSpec: modules/openapi-generator/src/test/resources/3_0/spring/petstore-with-fake-endpoints-models-for-testing-with-spring-pageable.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
java8: false
additionalProperties:
diff --git a/bin/configs/springboot-petstore-server-spring-pageable.yaml b/bin/configs/springboot-petstore-server-spring-pageable.yaml
index 2f4e88ed812..5ba08260299 100644
--- a/bin/configs/springboot-petstore-server-spring-pageable.yaml
+++ b/bin/configs/springboot-petstore-server-spring-pageable.yaml
@@ -1,7 +1,7 @@
generatorName: spring
outputDir: samples/server/petstore/springboot-spring-pageable
library: spring-boot
-inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing-with-spring-pageable.yaml
+inputSpec: modules/openapi-generator/src/test/resources/3_0/spring/petstore-with-fake-endpoints-models-for-testing-with-spring-pageable.yaml
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
additionalProperties:
documentationProvider: springfox
diff --git a/modules/openapi-generator/src/test/resources/3_0/spring/petstore-with-fake-endpoints-models-for-testing-with-spring-pageable.yaml b/modules/openapi-generator/src/test/resources/3_0/spring/petstore-with-fake-endpoints-models-for-testing-with-spring-pageable.yaml
new file mode 100644
index 00000000000..3d6ed2942c3
--- /dev/null
+++ b/modules/openapi-generator/src/test/resources/3_0/spring/petstore-with-fake-endpoints-models-for-testing-with-spring-pageable.yaml
@@ -0,0 +1,2170 @@
+openapi: 3.0.1
+info:
+ title: OpenAPI Petstore
+ description: 'This spec is mainly for testing Petstore server and contains fake
+ endpoints, models. Please do not use this for any other purpose. Special characters:
+ " \'
+ license:
+ name: Apache-2.0
+ url: http://www.apache.org/licenses/LICENSE-2.0.html
+ version: 1.0.0
+servers:
+- url: http://petstore.swagger.io:80/v2
+tags:
+- name: pet
+ description: Everything about your Pets
+- name: store
+ description: Access to Petstore orders
+- name: user
+ description: Operations about user
+paths:
+ /pet:
+ put:
+ tags:
+ - pet
+ summary: Update an existing pet
+ operationId: updatePet
+ requestBody:
+ description: Pet object that needs to be added to the store
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ required: true
+ responses:
+ 200:
+ description: successful operation
+ content: {}
+ 400:
+ description: Invalid ID supplied
+ content: {}
+ 404:
+ description: Pet not found
+ content: {}
+ 405:
+ description: Validation exception
+ content: {}
+ security:
+ - petstore_auth:
+ - write:pets
+ - read:pets
+ x-codegen-request-body-name: body
+ post:
+ tags:
+ - pet
+ summary: Add a new pet to the store
+ operationId: addPet
+ requestBody:
+ description: Pet object that needs to be added to the store
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ required: true
+ responses:
+ 200:
+ description: successful operation
+ content: {}
+ 405:
+ description: Invalid input
+ content: {}
+ security:
+ - petstore_auth:
+ - write:pets
+ - read:pets
+ x-codegen-request-body-name: body
+ /pet/findByStatus:
+ get:
+ tags:
+ - pet
+ summary: Finds Pets by status
+ description: Multiple status values can be provided with comma separated strings
+ operationId: findPetsByStatus
+ parameters:
+ - name: status
+ in: query
+ description: Status values that need to be considered for filter
+ required: true
+ style: form
+ explode: false
+ schema:
+ type: array
+ items:
+ type: string
+ default: available
+ enum:
+ - available
+ - pending
+ - sold
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Pet'
+ application/json:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Pet'
+ 400:
+ description: Invalid status value
+ content: {}
+ security:
+ - petstore_auth:
+ - write:pets
+ - read:pets
+ x-spring-paginated: true
+ /pet/findByTags:
+ get:
+ tags:
+ - pet
+ summary: Finds Pets by tags
+ description: Multiple tags can be provided with comma separated strings. Use
+ tag1, tag2, tag3 for testing.
+ operationId: findPetsByTags
+ parameters:
+ - name: tags
+ in: query
+ description: Tags to filter by
+ required: true
+ style: form
+ explode: false
+ schema:
+ type: array
+ items:
+ type: string
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Pet'
+ application/json:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Pet'
+ 400:
+ description: Invalid tag value
+ content: {}
+ deprecated: true
+ security:
+ - petstore_auth:
+ - write:pets
+ - read:pets
+ x-spring-paginated: true
+ /pet/{petId}:
+ get:
+ tags:
+ - pet
+ summary: Find pet by ID
+ description: Returns a single pet
+ operationId: getPetById
+ parameters:
+ - name: petId
+ in: path
+ description: ID of pet to return
+ required: true
+ schema:
+ type: integer
+ format: int64
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ 400:
+ description: Invalid ID supplied
+ content: {}
+ 404:
+ description: Pet not found
+ content: {}
+ security:
+ - api_key: []
+ post:
+ tags:
+ - pet
+ summary: Updates a pet in the store with form data
+ operationId: updatePetWithForm
+ parameters:
+ - name: petId
+ in: path
+ description: ID of pet that needs to be updated
+ required: true
+ schema:
+ type: integer
+ format: int64
+ requestBody:
+ content:
+ application/x-www-form-urlencoded:
+ schema:
+ properties:
+ name:
+ type: string
+ description: Updated name of the pet
+ status:
+ type: string
+ description: Updated status of the pet
+ responses:
+ 405:
+ description: Invalid input
+ content: {}
+ security:
+ - petstore_auth:
+ - write:pets
+ - read:pets
+ delete:
+ tags:
+ - pet
+ summary: Deletes a pet
+ operationId: deletePet
+ parameters:
+ - name: api_key
+ in: header
+ schema:
+ type: string
+ - name: petId
+ in: path
+ description: Pet id to delete
+ required: true
+ schema:
+ type: integer
+ format: int64
+ responses:
+ 200:
+ description: successful operation
+ content: {}
+ 400:
+ description: Invalid pet value
+ content: {}
+ security:
+ - petstore_auth:
+ - write:pets
+ - read:pets
+ /pet/{petId}/uploadImage:
+ post:
+ tags:
+ - pet
+ summary: uploads an image
+ operationId: uploadFile
+ parameters:
+ - name: petId
+ in: path
+ description: ID of pet to update
+ required: true
+ schema:
+ type: integer
+ format: int64
+ requestBody:
+ content:
+ multipart/form-data:
+ schema:
+ properties:
+ additionalMetadata:
+ type: string
+ description: Additional data to pass to server
+ file:
+ type: string
+ description: file to upload
+ format: binary
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ApiResponse'
+ security:
+ - petstore_auth:
+ - write:pets
+ - read:pets
+ /store/inventory:
+ get:
+ tags:
+ - store
+ summary: Returns pet inventories by status
+ description: Returns a map of status codes to quantities
+ operationId: getInventory
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/json:
+ schema:
+ type: object
+ additionalProperties:
+ type: integer
+ format: int32
+ security:
+ - api_key: []
+ /store/order:
+ post:
+ tags:
+ - store
+ summary: Place an order for a pet
+ operationId: placeOrder
+ requestBody:
+ description: order placed for purchasing the pet
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/Order'
+ required: true
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/Order'
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Order'
+ 400:
+ description: Invalid Order
+ content: {}
+ x-codegen-request-body-name: body
+ /store/order/{order_id}:
+ get:
+ tags:
+ - store
+ summary: Find purchase order by ID
+ description: For valid response try integer IDs with value <= 5 or > 10. Other
+ values will generate exceptions
+ operationId: getOrderById
+ parameters:
+ - name: order_id
+ in: path
+ description: ID of pet that needs to be fetched
+ required: true
+ schema:
+ maximum: 5
+ minimum: 1
+ type: integer
+ format: int64
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/Order'
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Order'
+ 400:
+ description: Invalid ID supplied
+ content: {}
+ 404:
+ description: Order not found
+ content: {}
+ delete:
+ tags:
+ - store
+ summary: Delete purchase order by ID
+ description: For valid response try integer IDs with value < 1000. Anything
+ above 1000 or nonintegers will generate API errors
+ operationId: deleteOrder
+ parameters:
+ - name: order_id
+ in: path
+ description: ID of the order that needs to be deleted
+ required: true
+ schema:
+ type: string
+ responses:
+ 400:
+ description: Invalid ID supplied
+ content: {}
+ 404:
+ description: Order not found
+ content: {}
+ /user:
+ post:
+ tags:
+ - user
+ summary: Create user
+ description: This can only be done by the logged in user.
+ operationId: createUser
+ requestBody:
+ description: Created user object
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/User'
+ required: true
+ responses:
+ default:
+ description: successful operation
+ content: {}
+ x-codegen-request-body-name: body
+ /user/createWithArray:
+ post:
+ tags:
+ - user
+ summary: Creates list of users with given input array
+ operationId: createUsersWithArrayInput
+ requestBody:
+ description: List of user object
+ content:
+ '*/*':
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/User'
+ required: true
+ responses:
+ default:
+ description: successful operation
+ content: {}
+ x-codegen-request-body-name: body
+ /user/createWithList:
+ post:
+ tags:
+ - user
+ summary: Creates list of users with given input array
+ operationId: createUsersWithListInput
+ requestBody:
+ description: List of user object
+ content:
+ '*/*':
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/User'
+ required: true
+ responses:
+ default:
+ description: successful operation
+ content: {}
+ x-codegen-request-body-name: body
+ /user/login:
+ get:
+ tags:
+ - user
+ summary: Logs user into the system
+ operationId: loginUser
+ parameters:
+ - name: username
+ in: query
+ description: The user name for login
+ required: true
+ schema:
+ type: string
+ - name: password
+ in: query
+ description: The password for login in clear text
+ required: true
+ schema:
+ type: string
+ responses:
+ 200:
+ description: successful operation
+ headers:
+ X-Rate-Limit:
+ description: calls per hour allowed by the user
+ schema:
+ type: integer
+ format: int32
+ X-Expires-After:
+ description: date in UTC when token expires
+ schema:
+ type: string
+ format: date-time
+ content:
+ application/xml:
+ schema:
+ type: string
+ application/json:
+ schema:
+ type: string
+ 400:
+ description: Invalid username/password supplied
+ content: {}
+ /user/logout:
+ get:
+ tags:
+ - user
+ summary: Logs out current logged in user session
+ operationId: logoutUser
+ responses:
+ default:
+ description: successful operation
+ content: {}
+ /user/{username}:
+ get:
+ tags:
+ - user
+ summary: Get user by user name
+ operationId: getUserByName
+ parameters:
+ - name: username
+ in: path
+ description: The name that needs to be fetched. Use user1 for testing.
+ required: true
+ schema:
+ type: string
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/User'
+ application/json:
+ schema:
+ $ref: '#/components/schemas/User'
+ 400:
+ description: Invalid username supplied
+ content: {}
+ 404:
+ description: User not found
+ content: {}
+ put:
+ tags:
+ - user
+ summary: Updated user
+ description: This can only be done by the logged in user.
+ operationId: updateUser
+ parameters:
+ - name: username
+ in: path
+ description: name that need to be deleted
+ required: true
+ schema:
+ type: string
+ requestBody:
+ description: Updated user object
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/User'
+ required: true
+ responses:
+ 400:
+ description: Invalid user supplied
+ content: {}
+ 404:
+ description: User not found
+ content: {}
+ x-codegen-request-body-name: body
+ delete:
+ tags:
+ - user
+ summary: Delete user
+ description: This can only be done by the logged in user.
+ operationId: deleteUser
+ parameters:
+ - name: username
+ in: path
+ description: The name that needs to be deleted
+ required: true
+ schema:
+ type: string
+ responses:
+ 400:
+ description: Invalid username supplied
+ content: {}
+ 404:
+ description: User not found
+ content: {}
+ /fake_classname_test:
+ patch:
+ tags:
+ - fake_classname_tags 123#$%^
+ summary: To test class name in snake case
+ description: To test class name in snake case
+ operationId: testClassname
+ requestBody:
+ description: client model
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Client'
+ required: true
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Client'
+ security:
+ - api_key_query: []
+ x-codegen-request-body-name: body
+ /fake:
+ get:
+ tags:
+ - fake
+ summary: To test enum parameters
+ description: To test enum parameters
+ operationId: testEnumParameters
+ parameters:
+ - name: enum_header_string_array
+ in: header
+ description: Header parameter enum test (string array)
+ style: simple
+ explode: false
+ schema:
+ type: array
+ items:
+ type: string
+ default: $
+ enum:
+ - '>'
+ - $
+ - name: enum_header_string
+ in: header
+ description: Header parameter enum test (string)
+ schema:
+ type: string
+ default: -efg
+ enum:
+ - _abc
+ - -efg
+ - (xyz)
+ - name: enum_query_string_array
+ in: query
+ description: Query parameter enum test (string array)
+ style: form
+ explode: false
+ schema:
+ type: array
+ items:
+ type: string
+ default: $
+ enum:
+ - '>'
+ - $
+ - name: enum_query_string
+ in: query
+ description: Query parameter enum test (string)
+ schema:
+ type: string
+ default: -efg
+ enum:
+ - _abc
+ - -efg
+ - (xyz)
+ - name: enum_query_integer
+ in: query
+ description: Query parameter enum test (double)
+ schema:
+ type: integer
+ format: int32
+ enum:
+ - 1
+ - -2
+ - name: enum_query_double
+ in: query
+ description: Query parameter enum test (double)
+ schema:
+ type: number
+ format: double
+ enum:
+ - 1.1
+ - -1.2
+ requestBody:
+ content:
+ application/x-www-form-urlencoded:
+ schema:
+ properties:
+ enum_form_string_array:
+ type: array
+ description: Form parameter enum test (string array)
+ items:
+ type: string
+ default: $
+ enum:
+ - '>'
+ - $
+ enum_form_string:
+ type: string
+ description: Form parameter enum test (string)
+ default: -efg
+ enum:
+ - _abc
+ - -efg
+ - (xyz)
+ responses:
+ 400:
+ description: Invalid request
+ content: {}
+ 404:
+ description: Not found
+ content: {}
+ post:
+ tags:
+ - fake
+ summary: |
+ Fake endpoint for testing various parameters
+ 假端點
+ 偽のエンドポイント
+ 가짜 엔드 포인트
+ description: |
+ Fake endpoint for testing various parameters
+ 假端點
+ 偽のエンドポイント
+ 가짜 엔드 포인트
+ operationId: testEndpointParameters
+ requestBody:
+ content:
+ application/x-www-form-urlencoded:
+ schema:
+ required:
+ - byte
+ - double
+ - number
+ - pattern_without_delimiter
+ properties:
+ integer:
+ maximum: 100
+ minimum: 10
+ type: integer
+ description: None
+ format: int32
+ int32:
+ maximum: 200
+ minimum: 20
+ type: integer
+ description: None
+ format: int32
+ int64:
+ type: integer
+ description: None
+ format: int64
+ number:
+ maximum: 543.2
+ minimum: 32.1
+ type: number
+ description: None
+ float:
+ maximum: 987.6
+ type: number
+ description: None
+ format: float
+ double:
+ maximum: 123.4
+ minimum: 67.8
+ type: number
+ description: None
+ format: double
+ string:
+ pattern: /[a-z]/i
+ type: string
+ description: None
+ pattern_without_delimiter:
+ pattern: ^[A-Z].*
+ type: string
+ description: None
+ byte:
+ type: string
+ description: None
+ format: byte
+ binary:
+ type: string
+ description: None
+ format: binary
+ date:
+ type: string
+ description: None
+ format: date
+ dateTime:
+ type: string
+ description: None
+ format: date-time
+ password:
+ maxLength: 64
+ minLength: 10
+ type: string
+ description: None
+ format: password
+ callback:
+ type: string
+ description: None
+ required: true
+ responses:
+ 400:
+ description: Invalid username supplied
+ content: {}
+ 404:
+ description: User not found
+ content: {}
+ security:
+ - http_basic_test: []
+ delete:
+ tags:
+ - fake
+ summary: Fake endpoint to test group parameters (optional)
+ description: Fake endpoint to test group parameters (optional)
+ operationId: testGroupParameters
+ parameters:
+ - name: required_string_group
+ in: query
+ description: Required String in group parameters
+ required: true
+ schema:
+ type: integer
+ - name: required_boolean_group
+ in: header
+ description: Required Boolean in group parameters
+ required: true
+ schema:
+ type: boolean
+ - name: required_int64_group
+ in: query
+ description: Required Integer in group parameters
+ required: true
+ schema:
+ type: integer
+ format: int64
+ - name: string_group
+ in: query
+ description: String in group parameters
+ schema:
+ type: integer
+ - name: boolean_group
+ in: header
+ description: Boolean in group parameters
+ schema:
+ type: boolean
+ - name: int64_group
+ in: query
+ description: Integer in group parameters
+ schema:
+ type: integer
+ format: int64
+ responses:
+ 400:
+ description: Something wrong
+ content: {}
+ x-group-parameters: true
+ patch:
+ tags:
+ - fake
+ summary: To test "client" model
+ description: To test "client" model
+ operationId: testClientModel
+ requestBody:
+ description: client model
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Client'
+ required: true
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Client'
+ x-codegen-request-body-name: body
+ /fake/outer/number:
+ post:
+ tags:
+ - fake
+ description: Test serialization of outer number types
+ operationId: fakeOuterNumberSerialize
+ requestBody:
+ description: Input number as post body
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/OuterNumber'
+ required: false
+ responses:
+ 200:
+ description: Output number
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/OuterNumber'
+ x-codegen-request-body-name: body
+ /fake/outer/string:
+ post:
+ tags:
+ - fake
+ description: Test serialization of outer string types
+ operationId: fakeOuterStringSerialize
+ requestBody:
+ description: Input string as post body
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/OuterString'
+ required: false
+ responses:
+ 200:
+ description: Output string
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/OuterString'
+ x-codegen-request-body-name: body
+ /fake/outer/boolean:
+ post:
+ tags:
+ - fake
+ description: Test serialization of outer boolean types
+ operationId: fakeOuterBooleanSerialize
+ requestBody:
+ description: Input boolean as post body
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/OuterBoolean'
+ required: false
+ responses:
+ 200:
+ description: Output boolean
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/OuterBoolean'
+ x-codegen-request-body-name: body
+ /fake/outer/composite:
+ post:
+ tags:
+ - fake
+ description: Test serialization of object with outer number type
+ operationId: fakeOuterCompositeSerialize
+ requestBody:
+ description: Input composite as post body
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/OuterComposite'
+ required: false
+ responses:
+ 200:
+ description: Output composite
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/OuterComposite'
+ x-codegen-request-body-name: body
+ /fake/jsonFormData:
+ get:
+ tags:
+ - fake
+ summary: test json serialization of form data
+ operationId: testJsonFormData
+ requestBody:
+ content:
+ application/x-www-form-urlencoded:
+ schema:
+ required:
+ - param
+ - param2
+ properties:
+ param:
+ type: string
+ description: field1
+ param2:
+ type: string
+ description: field2
+ required: true
+ responses:
+ 200:
+ description: successful operation
+ content: {}
+ /fake/inline-additionalProperties:
+ post:
+ tags:
+ - fake
+ summary: test inline additionalProperties
+ operationId: testInlineAdditionalProperties
+ requestBody:
+ description: request body
+ content:
+ application/json:
+ schema:
+ type: object
+ additionalProperties:
+ type: string
+ required: true
+ responses:
+ 200:
+ description: successful operation
+ content: {}
+ x-codegen-request-body-name: param
+ /fake/body-with-query-params:
+ put:
+ tags:
+ - fake
+ operationId: testBodyWithQueryParams
+ parameters:
+ - name: query
+ in: query
+ required: true
+ schema:
+ type: string
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/User'
+ required: true
+ responses:
+ 200:
+ description: Success
+ content: {}
+ x-codegen-request-body-name: body
+ /fake/create_xml_item:
+ post:
+ tags:
+ - fake
+ summary: creates an XmlItem
+ description: this route creates an XmlItem
+ operationId: createXmlItem
+ requestBody:
+ description: XmlItem Body
+ content:
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/XmlItem'
+ application/xml; charset=utf-8:
+ schema:
+ $ref: '#/components/schemas/XmlItem'
+ application/xml; charset=utf-16:
+ schema:
+ $ref: '#/components/schemas/XmlItem'
+ text/xml:
+ schema:
+ $ref: '#/components/schemas/XmlItem'
+ text/xml; charset=utf-8:
+ schema:
+ $ref: '#/components/schemas/XmlItem'
+ text/xml; charset=utf-16:
+ schema:
+ $ref: '#/components/schemas/XmlItem'
+ required: true
+ responses:
+ 200:
+ description: successful operation
+ content: {}
+ x-codegen-request-body-name: XmlItem
+ /another-fake/dummy:
+ patch:
+ tags:
+ - $another-fake?
+ summary: To test special tags
+ description: To test special tags and operation ID starting with number
+ operationId: 123_test_@#$%_special_tags
+ requestBody:
+ description: client model
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Client'
+ required: true
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Client'
+ x-codegen-request-body-name: body
+ /fake/body-with-file-schema:
+ put:
+ tags:
+ - fake
+ description: For this test, the body for this request much reference a schema
+ named `File`.
+ operationId: testBodyWithFileSchema
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/FileSchemaTestClass'
+ required: true
+ responses:
+ 200:
+ description: Success
+ content: {}
+ x-codegen-request-body-name: body
+ /fake/test-query-parameters:
+ put:
+ tags:
+ - fake
+ description: To test the collection format in query parameters
+ operationId: testQueryParameterCollectionFormat
+ parameters:
+ - name: pipe
+ in: query
+ required: true
+ style: form
+ explode: false
+ schema:
+ type: array
+ items:
+ type: string
+ - name: ioutil
+ in: query
+ required: true
+ schema:
+ type: array
+ items:
+ type: string
+ - name: http
+ in: query
+ required: true
+ style: spaceDelimited
+ schema:
+ type: array
+ items:
+ type: string
+ - name: url
+ in: query
+ required: true
+ style: form
+ explode: false
+ schema:
+ type: array
+ items:
+ type: string
+ - name: context
+ in: query
+ required: true
+ style: form
+ explode: true
+ schema:
+ type: array
+ items:
+ type: string
+ responses:
+ 200:
+ description: Success
+ content: {}
+ /fake/{petId}/uploadImageWithRequiredFile:
+ post:
+ tags:
+ - pet
+ summary: uploads an image (required)
+ operationId: uploadFileWithRequiredFile
+ parameters:
+ - name: petId
+ in: path
+ description: ID of pet to update
+ required: true
+ schema:
+ type: integer
+ format: int64
+ requestBody:
+ content:
+ multipart/form-data:
+ schema:
+ required:
+ - requiredFile
+ properties:
+ additionalMetadata:
+ type: string
+ description: Additional data to pass to server
+ requiredFile:
+ type: string
+ description: file to upload
+ format: binary
+ required: true
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ApiResponse'
+ security:
+ - petstore_auth:
+ - write:pets
+ - read:pets
+ /versioning/headers:
+ post:
+ tags:
+ - versioning
+ operationId: versioningHeaders
+ parameters:
+ - name: VersionWithDefaultValue
+ in: header
+ required: true
+ schema:
+ type: string
+ default: V1
+ x-version-param: true
+ x-version-param: true
+ - name: VersionNoDefaultValue
+ in: header
+ required: true
+ schema:
+ type: string
+ x-version-param: true
+ x-version-param: true
+ - name: petId
+ in: path
+ description: ID of pet to update
+ required: true
+ schema:
+ type: integer
+ format: int64
+ responses:
+ 200:
+ description: successful operation
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/ApiResponse'
+ /versioning/query-params:
+ post:
+ tags:
+ - versioning
+ operationId: versioningQueryParams
+ parameters:
+ - name: VersionWithDefaultValue
+ in: query
+ required: true
+ schema:
+ type: string
+ default: V1
+ x-version-param: true
+ x-version-param: true
+ - name: VersionNoDefaultValue
+ in: query
+ required: true
+ schema:
+ type: string
+ x-version-param: true
+ x-version-param: true
+ - name: petId
+ in: path
+ description: ID of pet to update
+ required: true
+ schema:
+ type: integer
+ format: int64
+ responses:
+ 200:
+ description: successful operation
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/ApiResponse'
+ /versioning/mix:
+ post:
+ tags:
+ - versioning
+ operationId: versioningMix
+ parameters:
+ - name: VersionWithDefaultValueQuery
+ in: query
+ required: true
+ schema:
+ type: string
+ default: V1
+ x-version-param: true
+ x-version-param: true
+ - name: VersionNoDefaultValueQuery
+ in: query
+ required: true
+ schema:
+ type: string
+ x-version-param: true
+ x-version-param: true
+ - name: VersionWithDefaultValueHeader
+ in: header
+ required: true
+ schema:
+ type: string
+ default: V1
+ x-version-param: true
+ x-version-param: true
+ - name: VersionNoDefaultValueHeader
+ in: header
+ required: true
+ schema:
+ type: string
+ x-version-param: true
+ x-version-param: true
+ - name: petId
+ in: path
+ description: ID of pet to update
+ required: true
+ schema:
+ type: integer
+ format: int64
+ responses:
+ 200:
+ description: successful operation
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/ApiResponse'
+components:
+ schemas:
+ Order:
+ type: object
+ properties:
+ id:
+ type: integer
+ format: int64
+ petId:
+ type: integer
+ format: int64
+ quantity:
+ type: integer
+ format: int32
+ shipDate:
+ type: string
+ format: date-time
+ status:
+ type: string
+ description: Order Status
+ enum:
+ - placed
+ - approved
+ - delivered
+ complete:
+ type: boolean
+ default: false
+ xml:
+ name: Order
+ Category:
+ required:
+ - name
+ type: object
+ properties:
+ id:
+ type: integer
+ format: int64
+ name:
+ type: string
+ default: default-name
+ xml:
+ name: Category
+ User:
+ type: object
+ properties:
+ id:
+ type: integer
+ format: int64
+ x-is-unique: true
+ username:
+ type: string
+ firstName:
+ type: string
+ lastName:
+ type: string
+ email:
+ type: string
+ password:
+ type: string
+ phone:
+ type: string
+ userStatus:
+ type: integer
+ description: User Status
+ format: int32
+ xml:
+ name: User
+ Tag:
+ type: object
+ properties:
+ id:
+ type: integer
+ format: int64
+ name:
+ type: string
+ xml:
+ name: Tag
+ Pet:
+ required:
+ - name
+ - photoUrls
+ type: object
+ properties:
+ id:
+ type: integer
+ format: int64
+ x-is-unique: true
+ category:
+ $ref: '#/components/schemas/Category'
+ name:
+ type: string
+ example: doggie
+ photoUrls:
+ type: array
+ xml:
+ name: photoUrl
+ wrapped: true
+ items:
+ type: string
+ tags:
+ type: array
+ xml:
+ name: tag
+ wrapped: true
+ items:
+ $ref: '#/components/schemas/Tag'
+ status:
+ type: string
+ description: pet status in the store
+ enum:
+ - available
+ - pending
+ - sold
+ xml:
+ name: Pet
+ ApiResponse:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ type:
+ type: string
+ message:
+ type: string
+ _special_model_name_:
+ type: object
+ properties:
+ $special[property.name]:
+ type: integer
+ format: int64
+ xml:
+ name: $special[model.name]
+ Return:
+ type: object
+ properties:
+ return:
+ type: integer
+ format: int32
+ description: Model for testing reserved words
+ xml:
+ name: Return
+ Name:
+ required:
+ - name
+ type: object
+ properties:
+ name:
+ type: integer
+ format: int32
+ snake_case:
+ type: integer
+ format: int32
+ readOnly: true
+ property:
+ type: string
+ 123Number:
+ type: integer
+ readOnly: true
+ description: Model for testing model name same as property name
+ xml:
+ name: Name
+ 200_response:
+ type: object
+ properties:
+ name:
+ type: integer
+ format: int32
+ class:
+ type: string
+ description: Model for testing model name starting with number
+ xml:
+ name: Name
+ ClassModel:
+ type: object
+ properties:
+ _class:
+ type: string
+ description: Model for testing model with "_class" property
+ Dog:
+ allOf:
+ - $ref: '#/components/schemas/Animal'
+ - type: object
+ properties:
+ breed:
+ type: string
+ Cat:
+ allOf:
+ - $ref: '#/components/schemas/Animal'
+ - type: object
+ properties:
+ declawed:
+ type: boolean
+ Animal:
+ required:
+ - className
+ type: object
+ properties:
+ className:
+ type: string
+ color:
+ type: string
+ default: red
+ discriminator:
+ propertyName: className
+ AnimalFarm:
+ type: array
+ items:
+ $ref: '#/components/schemas/Animal'
+ format_test:
+ required:
+ - byte
+ - date
+ - number
+ - password
+ type: object
+ properties:
+ integer:
+ maximum: 1E+2
+ minimum: 1E+1
+ type: integer
+ int32:
+ maximum: 2E+2
+ minimum: 2E+1
+ type: integer
+ format: int32
+ int64:
+ type: integer
+ format: int64
+ number:
+ maximum: 543.2
+ minimum: 32.1
+ type: number
+ float:
+ maximum: 987.6
+ minimum: 54.3
+ type: number
+ format: float
+ double:
+ maximum: 123.4
+ minimum: 67.8
+ type: number
+ format: double
+ string:
+ pattern: /[a-z]/i
+ type: string
+ byte:
+ pattern: ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$
+ type: string
+ format: byte
+ binary:
+ type: string
+ format: binary
+ date:
+ type: string
+ format: date
+ dateTime:
+ type: string
+ format: date-time
+ uuid:
+ type: string
+ format: uuid
+ example: 72f98069-206d-4f12-9f12-3d1e525a8e84
+ password:
+ maxLength: 64
+ minLength: 10
+ type: string
+ format: password
+ BigDecimal:
+ type: string
+ format: number
+ EnumClass:
+ type: string
+ default: -efg
+ enum:
+ - _abc
+ - -efg
+ - (xyz)
+ Enum_Test:
+ required:
+ - enum_string_required
+ type: object
+ properties:
+ enum_string:
+ type: string
+ enum:
+ - UPPER
+ - lower
+ - ""
+ enum_string_required:
+ type: string
+ enum:
+ - UPPER
+ - lower
+ - ""
+ enum_integer:
+ type: integer
+ format: int32
+ enum:
+ - 1
+ - -1
+ enum_number:
+ type: number
+ format: double
+ enum:
+ - 1.1
+ - -1.2
+ outerEnum:
+ $ref: '#/components/schemas/OuterEnum'
+ AdditionalPropertiesClass:
+ type: object
+ properties:
+ map_string:
+ type: object
+ additionalProperties:
+ type: string
+ map_number:
+ type: object
+ additionalProperties:
+ type: number
+ map_integer:
+ type: object
+ additionalProperties:
+ type: integer
+ map_boolean:
+ type: object
+ additionalProperties:
+ type: boolean
+ map_array_integer:
+ type: object
+ additionalProperties:
+ type: array
+ items:
+ type: integer
+ map_array_anytype:
+ type: object
+ additionalProperties:
+ type: array
+ items:
+ type: object
+ properties: {}
+ map_map_string:
+ type: object
+ additionalProperties:
+ type: object
+ additionalProperties:
+ type: string
+ map_map_anytype:
+ type: object
+ additionalProperties:
+ type: object
+ additionalProperties:
+ type: object
+ properties: {}
+ anytype_1:
+ type: object
+ properties: {}
+ anytype_2:
+ type: object
+ anytype_3:
+ type: object
+ properties: {}
+ AdditionalPropertiesString:
+ type: object
+ properties:
+ name:
+ type: string
+ additionalProperties:
+ type: string
+ AdditionalPropertiesInteger:
+ type: object
+ properties:
+ name:
+ type: string
+ additionalProperties:
+ type: integer
+ AdditionalPropertiesNumber:
+ type: object
+ properties:
+ name:
+ type: string
+ additionalProperties:
+ type: number
+ AdditionalPropertiesBoolean:
+ type: object
+ properties:
+ name:
+ type: string
+ additionalProperties:
+ type: boolean
+ AdditionalPropertiesArray:
+ type: object
+ properties:
+ name:
+ type: string
+ additionalProperties:
+ type: array
+ items:
+ type: object
+ properties: {}
+ AdditionalPropertiesObject:
+ type: object
+ properties:
+ name:
+ type: string
+ additionalProperties:
+ type: object
+ additionalProperties:
+ type: object
+ properties: {}
+ AdditionalPropertiesAnyType:
+ type: object
+ properties:
+ name:
+ type: string
+ additionalProperties:
+ type: object
+ properties: {}
+ MixedPropertiesAndAdditionalPropertiesClass:
+ type: object
+ properties:
+ uuid:
+ type: string
+ format: uuid
+ dateTime:
+ type: string
+ format: date-time
+ map:
+ type: object
+ additionalProperties:
+ $ref: '#/components/schemas/Animal'
+ List:
+ type: object
+ properties:
+ 123-list:
+ type: string
+ Client:
+ type: object
+ properties:
+ client:
+ type: string
+ ReadOnlyFirst:
+ type: object
+ properties:
+ bar:
+ type: string
+ readOnly: true
+ baz:
+ type: string
+ hasOnlyReadOnly:
+ type: object
+ properties:
+ bar:
+ type: string
+ readOnly: true
+ foo:
+ type: string
+ readOnly: true
+ Capitalization:
+ type: object
+ properties:
+ smallCamel:
+ type: string
+ CapitalCamel:
+ type: string
+ small_Snake:
+ type: string
+ Capital_Snake:
+ type: string
+ SCA_ETH_Flow_Points:
+ type: string
+ ATT_NAME:
+ type: string
+ description: |
+ Name of the pet
+ MapTest:
+ type: object
+ properties:
+ map_map_of_string:
+ type: object
+ additionalProperties:
+ type: object
+ additionalProperties:
+ type: string
+ map_of_enum_string:
+ type: object
+ additionalProperties:
+ type: string
+ enum:
+ - UPPER
+ - lower
+ direct_map:
+ type: object
+ additionalProperties:
+ type: boolean
+ indirect_map:
+ $ref: '#/components/schemas/StringBooleanMap'
+ ArrayTest:
+ type: object
+ properties:
+ array_of_string:
+ type: array
+ items:
+ type: string
+ array_array_of_integer:
+ type: array
+ items:
+ type: array
+ items:
+ type: integer
+ format: int64
+ array_array_of_model:
+ type: array
+ items:
+ type: array
+ items:
+ $ref: '#/components/schemas/ReadOnlyFirst'
+ NumberOnly:
+ type: object
+ properties:
+ JustNumber:
+ type: number
+ ArrayOfNumberOnly:
+ type: object
+ properties:
+ ArrayNumber:
+ type: array
+ items:
+ type: number
+ ArrayOfArrayOfNumberOnly:
+ type: object
+ properties:
+ ArrayArrayNumber:
+ type: array
+ items:
+ type: array
+ items:
+ type: number
+ EnumArrays:
+ type: object
+ properties:
+ just_symbol:
+ type: string
+ enum:
+ - '>='
+ - $
+ array_enum:
+ type: array
+ items:
+ type: string
+ enum:
+ - fish
+ - crab
+ OuterEnum:
+ type: string
+ enum:
+ - placed
+ - approved
+ - delivered
+ OuterComposite:
+ type: object
+ properties:
+ my_number:
+ $ref: '#/components/schemas/OuterNumber'
+ my_string:
+ $ref: '#/components/schemas/OuterString'
+ my_boolean:
+ $ref: '#/components/schemas/OuterBoolean'
+ OuterNumber:
+ type: number
+ OuterString:
+ type: string
+ OuterBoolean:
+ type: boolean
+ x-codegen-body-parameter-name: boolean_post_body
+ StringBooleanMap:
+ type: object
+ additionalProperties:
+ type: boolean
+ FileSchemaTestClass:
+ type: object
+ properties:
+ file:
+ $ref: '#/components/schemas/File'
+ files:
+ type: array
+ items:
+ $ref: '#/components/schemas/File'
+ File:
+ type: object
+ properties:
+ sourceURI:
+ type: string
+ description: Test capitalization
+ description: Must be named `File` for test.
+ TypeHolderDefault:
+ required:
+ - array_item
+ - bool_item
+ - integer_item
+ - number_item
+ - string_item
+ type: object
+ properties:
+ string_item:
+ type: string
+ default: what
+ number_item:
+ type: number
+ integer_item:
+ type: integer
+ bool_item:
+ type: boolean
+ default: true
+ array_item:
+ type: array
+ items:
+ type: integer
+ TypeHolderExample:
+ required:
+ - array_item
+ - bool_item
+ - float_item
+ - integer_item
+ - number_item
+ - string_item
+ type: object
+ properties:
+ string_item:
+ type: string
+ example: what
+ number_item:
+ type: number
+ example: 1.234
+ float_item:
+ type: number
+ format: float
+ example: 1.234
+ integer_item:
+ type: integer
+ example: -2
+ bool_item:
+ type: boolean
+ example: true
+ array_item:
+ type: array
+ example:
+ - 0
+ - 1
+ - 2
+ - 3
+ items:
+ type: integer
+ XmlItem:
+ type: object
+ properties:
+ attribute_string:
+ type: string
+ example: string
+ xml:
+ attribute: true
+ attribute_number:
+ type: number
+ example: 1.234
+ xml:
+ attribute: true
+ attribute_integer:
+ type: integer
+ example: -2
+ xml:
+ attribute: true
+ attribute_boolean:
+ type: boolean
+ example: true
+ xml:
+ attribute: true
+ wrapped_array:
+ type: array
+ xml:
+ wrapped: true
+ items:
+ type: integer
+ name_string:
+ type: string
+ example: string
+ xml:
+ name: xml_name_string
+ name_number:
+ type: number
+ example: 1.234
+ xml:
+ name: xml_name_number
+ name_integer:
+ type: integer
+ example: -2
+ xml:
+ name: xml_name_integer
+ name_boolean:
+ type: boolean
+ example: true
+ xml:
+ name: xml_name_boolean
+ name_array:
+ type: array
+ items:
+ type: integer
+ xml:
+ name: xml_name_array_item
+ name_wrapped_array:
+ type: array
+ xml:
+ name: xml_name_wrapped_array
+ wrapped: true
+ items:
+ type: integer
+ xml:
+ name: xml_name_wrapped_array_item
+ prefix_string:
+ type: string
+ example: string
+ xml:
+ prefix: ab
+ prefix_number:
+ type: number
+ example: 1.234
+ xml:
+ prefix: cd
+ prefix_integer:
+ type: integer
+ example: -2
+ xml:
+ prefix: ef
+ prefix_boolean:
+ type: boolean
+ example: true
+ xml:
+ prefix: gh
+ prefix_array:
+ type: array
+ items:
+ type: integer
+ xml:
+ prefix: ij
+ prefix_wrapped_array:
+ type: array
+ xml:
+ prefix: kl
+ wrapped: true
+ items:
+ type: integer
+ xml:
+ prefix: mn
+ namespace_string:
+ type: string
+ example: string
+ xml:
+ namespace: http://a.com/schema
+ namespace_number:
+ type: number
+ example: 1.234
+ xml:
+ namespace: http://b.com/schema
+ namespace_integer:
+ type: integer
+ example: -2
+ xml:
+ namespace: http://c.com/schema
+ namespace_boolean:
+ type: boolean
+ example: true
+ xml:
+ namespace: http://d.com/schema
+ namespace_array:
+ type: array
+ items:
+ type: integer
+ xml:
+ namespace: http://e.com/schema
+ namespace_wrapped_array:
+ type: array
+ xml:
+ namespace: http://f.com/schema
+ wrapped: true
+ items:
+ type: integer
+ xml:
+ namespace: http://g.com/schema
+ prefix_ns_string:
+ type: string
+ example: string
+ xml:
+ namespace: http://a.com/schema
+ prefix: a
+ prefix_ns_number:
+ type: number
+ example: 1.234
+ xml:
+ namespace: http://b.com/schema
+ prefix: b
+ prefix_ns_integer:
+ type: integer
+ example: -2
+ xml:
+ namespace: http://c.com/schema
+ prefix: c
+ prefix_ns_boolean:
+ type: boolean
+ example: true
+ xml:
+ namespace: http://d.com/schema
+ prefix: d
+ prefix_ns_array:
+ type: array
+ items:
+ type: integer
+ xml:
+ namespace: http://e.com/schema
+ prefix: e
+ prefix_ns_wrapped_array:
+ type: array
+ xml:
+ namespace: http://f.com/schema
+ prefix: f
+ wrapped: true
+ items:
+ type: integer
+ xml:
+ namespace: http://g.com/schema
+ prefix: g
+ xml:
+ namespace: http://a.com/schema
+ prefix: pre
+ securitySchemes:
+ petstore_auth:
+ type: oauth2
+ flows:
+ implicit:
+ authorizationUrl: http://petstore.swagger.io/api/oauth/dialog
+ scopes:
+ write:pets: modify pets in your account
+ read:pets: read your pets
+ api_key:
+ type: apiKey
+ name: api_key
+ in: header
+ api_key_query:
+ type: apiKey
+ name: api_key_query
+ in: query
+ http_basic_test:
+ type: http
+ scheme: basic
diff --git a/modules/openapi-generator/src/test/resources/3_0/spring/petstore-with-spring-pageable.yaml b/modules/openapi-generator/src/test/resources/3_0/spring/petstore-with-spring-pageable.yaml
new file mode 100644
index 00000000000..bd045d28262
--- /dev/null
+++ b/modules/openapi-generator/src/test/resources/3_0/spring/petstore-with-spring-pageable.yaml
@@ -0,0 +1,733 @@
+openapi: 3.0.1
+info:
+ title: OpenAPI Petstore
+ description: This is a sample server Petstore server. For this sample, you can use
+ the api key `special-key` to test the authorization filters.
+ license:
+ name: Apache-2.0
+ url: http://www.apache.org/licenses/LICENSE-2.0.html
+ version: 1.0.0
+servers:
+- url: http://petstore.swagger.io/v2
+tags:
+- name: pet
+ description: Everything about your Pets
+- name: store
+ description: Access to Petstore orders
+- name: user
+ description: Operations about user
+paths:
+ /pet:
+ put:
+ tags:
+ - pet
+ summary: Update an existing pet
+ operationId: updatePet
+ requestBody:
+ description: Pet object that needs to be added to the store
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ required: true
+ responses:
+ 400:
+ description: Invalid ID supplied
+ content: {}
+ 404:
+ description: Pet not found
+ content: {}
+ 405:
+ description: Validation exception
+ content: {}
+ security:
+ - petstore_auth:
+ - write:pets
+ - read:pets
+ x-codegen-request-body-name: body
+ post:
+ tags:
+ - pet
+ summary: Add a new pet to the store
+ operationId: addPet
+ requestBody:
+ description: Pet object that needs to be added to the store
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ required: true
+ responses:
+ 405:
+ description: Invalid input
+ content: {}
+ security:
+ - petstore_auth:
+ - write:pets
+ - read:pets
+ x-codegen-request-body-name: body
+ /pet/findByStatus:
+ get:
+ tags:
+ - pet
+ summary: Finds Pets by status
+ description: Multiple status values can be provided with comma separated strings
+ operationId: findPetsByStatus
+ parameters:
+ - name: status
+ in: query
+ description: Status values that need to be considered for filter
+ required: true
+ style: form
+ explode: false
+ schema:
+ type: array
+ items:
+ type: string
+ default: available
+ enum:
+ - available
+ - pending
+ - sold
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Pet'
+ application/json:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Pet'
+ 400:
+ description: Invalid status value
+ content: {}
+ security:
+ - petstore_auth:
+ - write:pets
+ - read:pets
+ x-spring-paginated: true
+ /pet/findByTags:
+ get:
+ tags:
+ - pet
+ summary: Finds Pets by tags
+ description: Multiple tags can be provided with comma separated strings. Use
+ tag1, tag2, tag3 for testing.
+ operationId: findPetsByTags
+ parameters:
+ - name: tags
+ in: query
+ description: Tags to filter by
+ required: true
+ style: form
+ explode: false
+ schema:
+ type: array
+ items:
+ type: string
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Pet'
+ application/json:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Pet'
+ 400:
+ description: Invalid tag value
+ content: {}
+ deprecated: true
+ security:
+ - petstore_auth:
+ - write:pets
+ - read:pets
+ x-spring-paginated: true
+ /pet/{petId}:
+ get:
+ tags:
+ - pet
+ summary: Find pet by ID
+ description: Returns a single pet
+ operationId: getPetById
+ parameters:
+ - name: petId
+ in: path
+ description: ID of pet to return
+ required: true
+ schema:
+ type: integer
+ format: int64
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ 400:
+ description: Invalid ID supplied
+ content: {}
+ 404:
+ description: Pet not found
+ content: {}
+ security:
+ - api_key: []
+ post:
+ tags:
+ - pet
+ summary: Updates a pet in the store with form data
+ operationId: updatePetWithForm
+ parameters:
+ - name: petId
+ in: path
+ description: ID of pet that needs to be updated
+ required: true
+ schema:
+ type: integer
+ format: int64
+ requestBody:
+ content:
+ application/x-www-form-urlencoded:
+ schema:
+ properties:
+ name:
+ type: string
+ description: Updated name of the pet
+ status:
+ type: string
+ description: Updated status of the pet
+ responses:
+ 405:
+ description: Invalid input
+ content: {}
+ security:
+ - petstore_auth:
+ - write:pets
+ - read:pets
+ delete:
+ tags:
+ - pet
+ summary: Deletes a pet
+ operationId: deletePet
+ parameters:
+ - name: api_key
+ in: header
+ schema:
+ type: string
+ - name: petId
+ in: path
+ description: Pet id to delete
+ required: true
+ schema:
+ type: integer
+ format: int64
+ responses:
+ 400:
+ description: Invalid pet value
+ content: {}
+ security:
+ - petstore_auth:
+ - write:pets
+ - read:pets
+ /pet/{petId}/uploadImage:
+ post:
+ tags:
+ - pet
+ summary: uploads an image
+ operationId: uploadFile
+ parameters:
+ - name: petId
+ in: path
+ description: ID of pet to update
+ required: true
+ schema:
+ type: integer
+ format: int64
+ requestBody:
+ content:
+ multipart/form-data:
+ schema:
+ properties:
+ additionalMetadata:
+ type: string
+ description: Additional data to pass to server
+ file:
+ type: string
+ description: file to upload
+ format: binary
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ApiResponse'
+ security:
+ - petstore_auth:
+ - write:pets
+ - read:pets
+ /store/inventory:
+ get:
+ tags:
+ - store
+ summary: Returns pet inventories by status
+ description: Returns a map of status codes to quantities
+ operationId: getInventory
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/json:
+ schema:
+ type: object
+ additionalProperties:
+ type: integer
+ format: int32
+ security:
+ - api_key: []
+ /store/order:
+ post:
+ tags:
+ - store
+ summary: Place an order for a pet
+ operationId: placeOrder
+ requestBody:
+ description: order placed for purchasing the pet
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/Order'
+ required: true
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/Order'
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Order'
+ 400:
+ description: Invalid Order
+ content: {}
+ x-codegen-request-body-name: body
+ /store/order/{orderId}:
+ get:
+ tags:
+ - store
+ summary: Find purchase order by ID
+ description: For valid response try integer IDs with value <= 5 or > 10. Other
+ values will generate exceptions
+ operationId: getOrderById
+ parameters:
+ - name: orderId
+ in: path
+ description: ID of pet that needs to be fetched
+ required: true
+ schema:
+ maximum: 5
+ minimum: 1
+ type: integer
+ format: int64
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/Order'
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Order'
+ 400:
+ description: Invalid ID supplied
+ content: {}
+ 404:
+ description: Order not found
+ content: {}
+ delete:
+ tags:
+ - store
+ summary: Delete purchase order by ID
+ description: For valid response try integer IDs with value < 1000. Anything
+ above 1000 or nonintegers will generate API errors
+ operationId: deleteOrder
+ parameters:
+ - name: orderId
+ in: path
+ description: ID of the order that needs to be deleted
+ required: true
+ schema:
+ type: string
+ responses:
+ 400:
+ description: Invalid ID supplied
+ content: {}
+ 404:
+ description: Order not found
+ content: {}
+ /user:
+ post:
+ tags:
+ - user
+ summary: Create user
+ description: This can only be done by the logged in user.
+ operationId: createUser
+ requestBody:
+ description: Created user object
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/User'
+ required: true
+ responses:
+ default:
+ description: successful operation
+ content: {}
+ x-codegen-request-body-name: body
+ /user/createWithArray:
+ post:
+ tags:
+ - user
+ summary: Creates list of users with given input array
+ operationId: createUsersWithArrayInput
+ requestBody:
+ description: List of user object
+ content:
+ '*/*':
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/User'
+ required: true
+ responses:
+ default:
+ description: successful operation
+ content: {}
+ x-codegen-request-body-name: body
+ /user/createWithList:
+ post:
+ tags:
+ - user
+ summary: Creates list of users with given input array
+ operationId: createUsersWithListInput
+ requestBody:
+ description: List of user object
+ content:
+ '*/*':
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/User'
+ required: true
+ responses:
+ default:
+ description: successful operation
+ content: {}
+ x-codegen-request-body-name: body
+ /user/login:
+ get:
+ tags:
+ - user
+ summary: Logs user into the system
+ operationId: loginUser
+ parameters:
+ - name: username
+ in: query
+ description: The user name for login
+ required: true
+ schema:
+ type: string
+ - name: password
+ in: query
+ description: The password for login in clear text
+ required: true
+ schema:
+ type: string
+ responses:
+ 200:
+ description: successful operation
+ headers:
+ X-Rate-Limit:
+ description: calls per hour allowed by the user
+ schema:
+ type: integer
+ format: int32
+ X-Expires-After:
+ description: date in UTC when token expires
+ schema:
+ type: string
+ format: date-time
+ content:
+ application/xml:
+ schema:
+ type: string
+ application/json:
+ schema:
+ type: string
+ 400:
+ description: Invalid username/password supplied
+ content: {}
+ /user/logout:
+ get:
+ tags:
+ - user
+ summary: Logs out current logged in user session
+ operationId: logoutUser
+ responses:
+ default:
+ description: successful operation
+ content: {}
+ options:
+ tags:
+ - user
+ summary: logoutUserOptions
+ operationId: logoutUserOptions
+ responses:
+ default:
+ description: endpoint configuration response
+ content: {}
+ /user/{username}:
+ get:
+ tags:
+ - user
+ summary: Get user by user name
+ operationId: getUserByName
+ parameters:
+ - name: username
+ in: path
+ description: The name that needs to be fetched. Use user1 for testing.
+ required: true
+ schema:
+ type: string
+ responses:
+ 200:
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/User'
+ application/json:
+ schema:
+ $ref: '#/components/schemas/User'
+ 400:
+ description: Invalid username supplied
+ content: {}
+ 404:
+ description: User not found
+ content: {}
+ put:
+ tags:
+ - user
+ summary: Updated user
+ description: This can only be done by the logged in user.
+ operationId: updateUser
+ parameters:
+ - name: username
+ in: path
+ description: name that need to be deleted
+ required: true
+ schema:
+ type: string
+ requestBody:
+ description: Updated user object
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/User'
+ required: true
+ responses:
+ 400:
+ description: Invalid user supplied
+ content: {}
+ 404:
+ description: User not found
+ content: {}
+ x-codegen-request-body-name: body
+ delete:
+ tags:
+ - user
+ summary: Delete user
+ description: This can only be done by the logged in user.
+ operationId: deleteUser
+ parameters:
+ - name: username
+ in: path
+ description: The name that needs to be deleted
+ required: true
+ schema:
+ type: string
+ responses:
+ 400:
+ description: Invalid username supplied
+ content: {}
+ 404:
+ description: User not found
+ content: {}
+components:
+ schemas:
+ Order:
+ title: Pet Order
+ type: object
+ properties:
+ id:
+ type: integer
+ format: int64
+ petId:
+ type: integer
+ format: int64
+ quantity:
+ type: integer
+ format: int32
+ shipDate:
+ type: string
+ format: date-time
+ status:
+ type: string
+ description: Order Status
+ enum:
+ - placed
+ - approved
+ - delivered
+ complete:
+ type: boolean
+ default: false
+ description: An order for a pets from the pet store
+ xml:
+ name: Order
+ Category:
+ title: Pet category
+ type: object
+ properties:
+ id:
+ type: integer
+ format: int64
+ name:
+ type: string
+ description: A category for a pet
+ xml:
+ name: Category
+ User:
+ title: a User
+ type: object
+ properties:
+ id:
+ type: integer
+ format: int64
+ username:
+ type: string
+ firstName:
+ type: string
+ lastName:
+ type: string
+ email:
+ type: string
+ password:
+ type: string
+ phone:
+ type: string
+ userStatus:
+ type: integer
+ description: User Status
+ format: int32
+ description: A User who is purchasing from the pet store
+ xml:
+ name: User
+ Tag:
+ title: Pet Tag
+ type: object
+ properties:
+ id:
+ type: integer
+ format: int64
+ name:
+ type: string
+ description: A tag for a pet
+ xml:
+ name: Tag
+ Pet:
+ title: a Pet
+ required:
+ - name
+ - photoUrls
+ type: object
+ properties:
+ id:
+ type: integer
+ format: int64
+ category:
+ $ref: '#/components/schemas/Category'
+ name:
+ type: string
+ example: doggie
+ photoUrls:
+ type: array
+ xml:
+ name: photoUrl
+ wrapped: true
+ items:
+ type: string
+ tags:
+ type: array
+ xml:
+ name: tag
+ wrapped: true
+ items:
+ $ref: '#/components/schemas/Tag'
+ status:
+ type: string
+ description: pet status in the store
+ enum:
+ - available
+ - pending
+ - sold
+ description: A pet for sale in the pet store
+ xml:
+ name: Pet
+ ApiResponse:
+ title: An uploaded response
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ type:
+ type: string
+ message:
+ type: string
+ description: Describes the result of uploading an image resource
+ securitySchemes:
+ petstore_auth:
+ type: oauth2
+ flows:
+ implicit:
+ authorizationUrl: http://petstore.swagger.io/api/oauth/dialog
+ scopes:
+ write:pets: modify pets in your account
+ read:pets: read your pets
+ api_key:
+ type: apiKey
+ name: api_key
+ in: header
+
diff --git a/samples/client/petstore/spring-cloud-async/.openapi-generator-ignore b/samples/client/petstore/spring-cloud-async/.openapi-generator-ignore
deleted file mode 100644
index 7484ee590a3..00000000000
--- a/samples/client/petstore/spring-cloud-async/.openapi-generator-ignore
+++ /dev/null
@@ -1,23 +0,0 @@
-# OpenAPI Generator Ignore
-# Generated by openapi-generator https://github.com/openapitools/openapi-generator
-
-# Use this file to prevent files from being overwritten by the generator.
-# The patterns follow closely to .gitignore or .dockerignore.
-
-# As an example, the C# client generator defines ApiClient.cs.
-# You can make changes and tell OpenAPI Generator to ignore just this file by uncommenting the following line:
-#ApiClient.cs
-
-# You can match any string of characters against a directory, file or extension with a single asterisk (*):
-#foo/*/qux
-# The above matches foo/bar/qux and foo/baz/qux, but not foo/bar/baz/qux
-
-# You can recursively match patterns against a directory, file or extension with a double asterisk (**):
-#foo/**/qux
-# This matches foo/bar/qux, foo/baz/qux, and foo/bar/baz/qux
-
-# You can also negate patterns with an exclamation (!).
-# For example, you can ignore all files in a docs folder with the file extension .md:
-#docs/*.md
-# Then explicitly reverse the ignore rule for a single file:
-#!docs/README.md
diff --git a/samples/client/petstore/spring-cloud-async/.openapi-generator/FILES b/samples/client/petstore/spring-cloud-async/.openapi-generator/FILES
deleted file mode 100644
index 3510d2b2d27..00000000000
--- a/samples/client/petstore/spring-cloud-async/.openapi-generator/FILES
+++ /dev/null
@@ -1,16 +0,0 @@
-README.md
-pom.xml
-src/main/java/org/openapitools/api/PetApi.java
-src/main/java/org/openapitools/api/PetApiClient.java
-src/main/java/org/openapitools/api/StoreApi.java
-src/main/java/org/openapitools/api/StoreApiClient.java
-src/main/java/org/openapitools/api/UserApi.java
-src/main/java/org/openapitools/api/UserApiClient.java
-src/main/java/org/openapitools/configuration/ApiKeyRequestInterceptor.java
-src/main/java/org/openapitools/configuration/ClientConfiguration.java
-src/main/java/org/openapitools/model/Category.java
-src/main/java/org/openapitools/model/ModelApiResponse.java
-src/main/java/org/openapitools/model/Order.java
-src/main/java/org/openapitools/model/Pet.java
-src/main/java/org/openapitools/model/Tag.java
-src/main/java/org/openapitools/model/User.java
diff --git a/samples/client/petstore/spring-cloud-async/.openapi-generator/VERSION b/samples/client/petstore/spring-cloud-async/.openapi-generator/VERSION
deleted file mode 100644
index 7f4d792ec2c..00000000000
--- a/samples/client/petstore/spring-cloud-async/.openapi-generator/VERSION
+++ /dev/null
@@ -1 +0,0 @@
-6.5.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/spring-cloud-async/README.md b/samples/client/petstore/spring-cloud-async/README.md
deleted file mode 100644
index f176b79c8ae..00000000000
--- a/samples/client/petstore/spring-cloud-async/README.md
+++ /dev/null
@@ -1,53 +0,0 @@
-# petstore-spring-cloud
-
-## Requirements
-
-Building the API client library requires [Maven](https://maven.apache.org/) to be installed.
-
-## Installation
-
-To install the API client library to your local Maven repository, simply execute:
-
-```shell
-mvn install
-```
-
-To deploy it to a remote Maven repository instead, configure the settings of the repository and execute:
-
-```shell
-mvn deploy
-```
-
-Refer to the [official documentation](https://maven.apache.org/plugins/maven-deploy-plugin/usage.html) for more information.
-
-### Maven users
-
-Add this dependency to your project's POM:
-
-```xml
-
- org.openapitools
- petstore-spring-cloud
- 1.0.0
- compile
-
-```
-
-### Gradle users
-
-Add this dependency to your project's build file:
-
-```groovy
-compile "org.openapitools:petstore-spring-cloud:1.0.0"
-```
-
-### Others
-
-At first generate the JAR by executing:
-
-mvn package
-
-Then manually install the following JARs:
-
-* target/petstore-spring-cloud-1.0.0.jar
-* target/lib/*.jar
diff --git a/samples/client/petstore/spring-cloud-async/pom.xml b/samples/client/petstore/spring-cloud-async/pom.xml
deleted file mode 100644
index e893d0fa75f..00000000000
--- a/samples/client/petstore/spring-cloud-async/pom.xml
+++ /dev/null
@@ -1,82 +0,0 @@
-
- 4.0.0
- org.openapitools
- petstore-spring-cloud
- jar
- petstore-spring-cloud
- 1.0.0
-
- 1.8
- ${java.version}
- ${java.version}
- UTF-8
- 2.9.2
-
-
- org.springframework.boot
- spring-boot-starter-parent
- 2.7.6
-
-
-
- src/main/java
-
-
-
-
-
- org.springframework.cloud
- spring-cloud-starter-parent
- 2021.0.5
- pom
- import
-
-
-
-
-
-
-
- io.springfox
- springfox-swagger2
- ${springfox.version}
-
-
-
- com.google.code.findbugs
- jsr305
- 3.0.2
-
-
- org.springframework.cloud
- spring-cloud-starter-openfeign
-
-
- org.springframework.cloud
- spring-cloud-starter-oauth2
- 2.2.5.RELEASE
-
-
- com.fasterxml.jackson.datatype
- jackson-datatype-jsr310
-
-
- org.openapitools
- jackson-databind-nullable
- 0.2.6
-
-
- org.springframework.boot
- spring-boot-starter-validation
-
-
- org.springframework.data
- spring-data-commons
-
-
- org.springframework.boot
- spring-boot-starter-test
- test
-
-
-
diff --git a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/PetApi.java b/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/PetApi.java
deleted file mode 100644
index 699618ea67f..00000000000
--- a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/PetApi.java
+++ /dev/null
@@ -1,309 +0,0 @@
-/**
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech) (6.5.0-SNAPSHOT).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-package org.openapitools.api;
-
-import org.openapitools.model.ModelApiResponse;
-import org.openapitools.model.Pet;
-import io.swagger.annotations.*;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
-import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.context.request.NativeWebRequest;
-import org.springframework.web.multipart.MultipartFile;
-
-import javax.validation.Valid;
-import javax.validation.constraints.*;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import java.util.concurrent.CompletableFuture;
-import javax.annotation.Generated;
-
-@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
-@Validated
-@Api(value = "pet", description = "Everything about your Pets")
-public interface PetApi {
-
- /**
- * POST /pet : Add a new pet to the store
- *
- * @param body Pet object that needs to be added to the store (required)
- * @return Invalid input (status code 405)
- */
- @ApiOperation(
- tags = { "pet" },
- value = "Add a new pet to the store",
- nickname = "addPet",
- notes = "",
- authorizations = {
- @Authorization(value = "petstore_auth", scopes = {
- @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"),
- @AuthorizationScope(scope = "read:pets", description = "read your pets")
- })
- }
- )
- @ApiResponses({
- @ApiResponse(code = 405, message = "Invalid input")
- })
- @RequestMapping(
- method = RequestMethod.POST,
- value = "/pet",
- consumes = "application/json"
- )
- CompletableFuture> addPet(
- @ApiParam(value = "Pet object that needs to be added to the store", required = true) @Valid @RequestBody Pet body
- );
-
-
- /**
- * DELETE /pet/{petId} : Deletes a pet
- *
- * @param petId Pet id to delete (required)
- * @param apiKey (optional)
- * @return Invalid pet value (status code 400)
- */
- @ApiOperation(
- tags = { "pet" },
- value = "Deletes a pet",
- nickname = "deletePet",
- notes = "",
- authorizations = {
- @Authorization(value = "petstore_auth", scopes = {
- @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"),
- @AuthorizationScope(scope = "read:pets", description = "read your pets")
- })
- }
- )
- @ApiResponses({
- @ApiResponse(code = 400, message = "Invalid pet value")
- })
- @RequestMapping(
- method = RequestMethod.DELETE,
- value = "/pet/{petId}"
- )
- CompletableFuture> deletePet(
- @ApiParam(value = "Pet id to delete", required = true) @PathVariable("petId") Long petId,
- @ApiParam(value = "") @RequestHeader(value = "api_key", required = false) String apiKey
- );
-
-
- /**
- * GET /pet/findByStatus : Finds Pets by status
- * Multiple status values can be provided with comma separated strings
- *
- * @param status Status values that need to be considered for filter (required)
- * @return successful operation (status code 200)
- * or Invalid status value (status code 400)
- */
- @ApiOperation(
- tags = { "pet" },
- value = "Finds Pets by status",
- nickname = "findPetsByStatus",
- notes = "Multiple status values can be provided with comma separated strings",
- response = Pet.class,
- responseContainer = "List",
- authorizations = {
- @Authorization(value = "petstore_auth", scopes = {
- @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"),
- @AuthorizationScope(scope = "read:pets", description = "read your pets")
- })
- }
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"),
- @ApiResponse(code = 400, message = "Invalid status value")
- })
- @RequestMapping(
- method = RequestMethod.GET,
- value = "/pet/findByStatus",
- produces = "application/json"
- )
- CompletableFuture>> findPetsByStatus(
- @NotNull @ApiParam(value = "Status values that need to be considered for filter", required = true, allowableValues = "available, pending, sold") @Valid @RequestParam(value = "status", required = true) List status
- );
-
-
- /**
- * GET /pet/findByTags : Finds Pets by tags
- * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
- *
- * @param tags Tags to filter by (required)
- * @return successful operation (status code 200)
- * or Invalid tag value (status code 400)
- * @deprecated
- */
- @Deprecated
- @ApiOperation(
- tags = { "pet" },
- value = "Finds Pets by tags",
- nickname = "findPetsByTags",
- notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.",
- response = Pet.class,
- responseContainer = "List",
- authorizations = {
- @Authorization(value = "petstore_auth", scopes = {
- @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"),
- @AuthorizationScope(scope = "read:pets", description = "read your pets")
- })
- }
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"),
- @ApiResponse(code = 400, message = "Invalid tag value")
- })
- @RequestMapping(
- method = RequestMethod.GET,
- value = "/pet/findByTags",
- produces = "application/json"
- )
- CompletableFuture>> findPetsByTags(
- @NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) List tags
- );
-
-
- /**
- * GET /pet/{petId} : Find pet by ID
- * Returns a single pet
- *
- * @param petId ID of pet to return (required)
- * @return successful operation (status code 200)
- * or Invalid ID supplied (status code 400)
- * or Pet not found (status code 404)
- */
- @ApiOperation(
- tags = { "pet" },
- value = "Find pet by ID",
- nickname = "getPetById",
- notes = "Returns a single pet",
- response = Pet.class,
- authorizations = {
- @Authorization(value = "api_key")
- }
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation", response = Pet.class),
- @ApiResponse(code = 400, message = "Invalid ID supplied"),
- @ApiResponse(code = 404, message = "Pet not found")
- })
- @RequestMapping(
- method = RequestMethod.GET,
- value = "/pet/{petId}",
- produces = "application/json"
- )
- CompletableFuture> getPetById(
- @ApiParam(value = "ID of pet to return", required = true) @PathVariable("petId") Long petId
- );
-
-
- /**
- * PUT /pet : Update an existing pet
- *
- * @param body Pet object that needs to be added to the store (required)
- * @return Invalid ID supplied (status code 400)
- * or Pet not found (status code 404)
- * or Validation exception (status code 405)
- */
- @ApiOperation(
- tags = { "pet" },
- value = "Update an existing pet",
- nickname = "updatePet",
- notes = "",
- authorizations = {
- @Authorization(value = "petstore_auth", scopes = {
- @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"),
- @AuthorizationScope(scope = "read:pets", description = "read your pets")
- })
- }
- )
- @ApiResponses({
- @ApiResponse(code = 400, message = "Invalid ID supplied"),
- @ApiResponse(code = 404, message = "Pet not found"),
- @ApiResponse(code = 405, message = "Validation exception")
- })
- @RequestMapping(
- method = RequestMethod.PUT,
- value = "/pet",
- consumes = "application/json"
- )
- CompletableFuture> updatePet(
- @ApiParam(value = "Pet object that needs to be added to the store", required = true) @Valid @RequestBody Pet body
- );
-
-
- /**
- * POST /pet/{petId} : Updates a pet in the store with form data
- *
- * @param petId ID of pet that needs to be updated (required)
- * @param name Updated name of the pet (optional)
- * @param status Updated status of the pet (optional)
- * @return Invalid input (status code 405)
- */
- @ApiOperation(
- tags = { "pet" },
- value = "Updates a pet in the store with form data",
- nickname = "updatePetWithForm",
- notes = "",
- authorizations = {
- @Authorization(value = "petstore_auth", scopes = {
- @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"),
- @AuthorizationScope(scope = "read:pets", description = "read your pets")
- })
- }
- )
- @ApiResponses({
- @ApiResponse(code = 405, message = "Invalid input")
- })
- @RequestMapping(
- method = RequestMethod.POST,
- value = "/pet/{petId}",
- consumes = "application/x-www-form-urlencoded"
- )
- CompletableFuture> updatePetWithForm(
- @ApiParam(value = "ID of pet that needs to be updated", required = true) @PathVariable("petId") Long petId,
- @ApiParam(value = "Updated name of the pet") @Valid @RequestParam(value = "name", required = false) String name,
- @ApiParam(value = "Updated status of the pet") @Valid @RequestParam(value = "status", required = false) String status
- );
-
-
- /**
- * POST /pet/{petId}/uploadImage : uploads an image
- *
- * @param petId ID of pet to update (required)
- * @param additionalMetadata Additional data to pass to server (optional)
- * @param file file to upload (optional)
- * @return successful operation (status code 200)
- */
- @ApiOperation(
- tags = { "pet" },
- value = "uploads an image",
- nickname = "uploadFile",
- notes = "",
- response = ModelApiResponse.class,
- authorizations = {
- @Authorization(value = "petstore_auth", scopes = {
- @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"),
- @AuthorizationScope(scope = "read:pets", description = "read your pets")
- })
- }
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation", response = ModelApiResponse.class)
- })
- @RequestMapping(
- method = RequestMethod.POST,
- value = "/pet/{petId}/uploadImage",
- produces = "application/json",
- consumes = "multipart/form-data"
- )
- CompletableFuture> uploadFile(
- @ApiParam(value = "ID of pet to update", required = true) @PathVariable("petId") Long petId,
- @ApiParam(value = "Additional data to pass to server") @Valid @RequestParam(value = "additionalMetadata", required = false) String additionalMetadata,
- @ApiParam(value = "file to upload") @RequestPart(value = "file", required = false) MultipartFile file
- );
-
-}
diff --git a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/PetApiClient.java b/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/PetApiClient.java
deleted file mode 100644
index f80fe4ddc67..00000000000
--- a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/PetApiClient.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package org.openapitools.api;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.openapitools.configuration.ClientConfiguration;
-
-@FeignClient(name="${pet.name:pet}", url="${pet.url:http://petstore.swagger.io/v2}", configuration = ClientConfiguration.class)
-public interface PetApiClient extends PetApi {
-}
diff --git a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/StoreApi.java b/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/StoreApi.java
deleted file mode 100644
index a5a1c63c5aa..00000000000
--- a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/StoreApi.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/**
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech) (6.5.0-SNAPSHOT).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-package org.openapitools.api;
-
-import java.util.Map;
-import org.openapitools.model.Order;
-import io.swagger.annotations.*;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
-import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.context.request.NativeWebRequest;
-import org.springframework.web.multipart.MultipartFile;
-
-import javax.validation.Valid;
-import javax.validation.constraints.*;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import java.util.concurrent.CompletableFuture;
-import javax.annotation.Generated;
-
-@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
-@Validated
-@Api(value = "store", description = "Access to Petstore orders")
-public interface StoreApi {
-
- /**
- * DELETE /store/order/{orderId} : Delete purchase order by ID
- * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
- *
- * @param orderId ID of the order that needs to be deleted (required)
- * @return Invalid ID supplied (status code 400)
- * or Order not found (status code 404)
- */
- @ApiOperation(
- tags = { "store" },
- value = "Delete purchase order by ID",
- nickname = "deleteOrder",
- notes = "For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors"
- )
- @ApiResponses({
- @ApiResponse(code = 400, message = "Invalid ID supplied"),
- @ApiResponse(code = 404, message = "Order not found")
- })
- @RequestMapping(
- method = RequestMethod.DELETE,
- value = "/store/order/{orderId}"
- )
- CompletableFuture> deleteOrder(
- @ApiParam(value = "ID of the order that needs to be deleted", required = true) @PathVariable("orderId") String orderId
- );
-
-
- /**
- * GET /store/inventory : Returns pet inventories by status
- * Returns a map of status codes to quantities
- *
- * @return successful operation (status code 200)
- */
- @ApiOperation(
- tags = { "store" },
- value = "Returns pet inventories by status",
- nickname = "getInventory",
- notes = "Returns a map of status codes to quantities",
- response = Integer.class,
- responseContainer = "Map",
- authorizations = {
- @Authorization(value = "api_key")
- }
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation", response = Map.class, responseContainer = "Map")
- })
- @RequestMapping(
- method = RequestMethod.GET,
- value = "/store/inventory",
- produces = "application/json"
- )
- CompletableFuture>> getInventory(
-
- );
-
-
- /**
- * GET /store/order/{orderId} : Find purchase order by ID
- * For valid response try integer IDs with value <= 5 or > 10. Other values will generate exceptions
- *
- * @param orderId ID of pet that needs to be fetched (required)
- * @return successful operation (status code 200)
- * or Invalid ID supplied (status code 400)
- * or Order not found (status code 404)
- */
- @ApiOperation(
- tags = { "store" },
- value = "Find purchase order by ID",
- nickname = "getOrderById",
- notes = "For valid response try integer IDs with value <= 5 or > 10. Other values will generate exceptions",
- response = Order.class
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation", response = Order.class),
- @ApiResponse(code = 400, message = "Invalid ID supplied"),
- @ApiResponse(code = 404, message = "Order not found")
- })
- @RequestMapping(
- method = RequestMethod.GET,
- value = "/store/order/{orderId}",
- produces = "application/json"
- )
- CompletableFuture> getOrderById(
- @Min(1L) @Max(5L) @ApiParam(value = "ID of pet that needs to be fetched", required = true) @PathVariable("orderId") Long orderId
- );
-
-
- /**
- * POST /store/order : Place an order for a pet
- *
- * @param body order placed for purchasing the pet (required)
- * @return successful operation (status code 200)
- * or Invalid Order (status code 400)
- */
- @ApiOperation(
- tags = { "store" },
- value = "Place an order for a pet",
- nickname = "placeOrder",
- notes = "",
- response = Order.class
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation", response = Order.class),
- @ApiResponse(code = 400, message = "Invalid Order")
- })
- @RequestMapping(
- method = RequestMethod.POST,
- value = "/store/order",
- produces = "application/json"
- )
- CompletableFuture> placeOrder(
- @ApiParam(value = "order placed for purchasing the pet", required = true) @Valid @RequestBody Order body
- );
-
-}
diff --git a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/StoreApiClient.java b/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/StoreApiClient.java
deleted file mode 100644
index 71d613a871d..00000000000
--- a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/StoreApiClient.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package org.openapitools.api;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.openapitools.configuration.ClientConfiguration;
-
-@FeignClient(name="${store.name:store}", url="${store.url:http://petstore.swagger.io/v2}", configuration = ClientConfiguration.class)
-public interface StoreApiClient extends StoreApi {
-}
diff --git a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/UserApi.java b/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/UserApi.java
deleted file mode 100644
index 7c1808d367e..00000000000
--- a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/UserApi.java
+++ /dev/null
@@ -1,244 +0,0 @@
-/**
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech) (6.5.0-SNAPSHOT).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-package org.openapitools.api;
-
-import java.util.List;
-import java.time.OffsetDateTime;
-import org.openapitools.model.User;
-import io.swagger.annotations.*;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
-import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.context.request.NativeWebRequest;
-import org.springframework.web.multipart.MultipartFile;
-
-import javax.validation.Valid;
-import javax.validation.constraints.*;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import java.util.concurrent.CompletableFuture;
-import javax.annotation.Generated;
-
-@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
-@Validated
-@Api(value = "user", description = "Operations about user")
-public interface UserApi {
-
- /**
- * POST /user : Create user
- * This can only be done by the logged in user.
- *
- * @param body Created user object (required)
- * @return successful operation (status code 200)
- */
- @ApiOperation(
- tags = { "user" },
- value = "Create user",
- nickname = "createUser",
- notes = "This can only be done by the logged in user."
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation")
- })
- @RequestMapping(
- method = RequestMethod.POST,
- value = "/user"
- )
- CompletableFuture> createUser(
- @ApiParam(value = "Created user object", required = true) @Valid @RequestBody User body
- );
-
-
- /**
- * POST /user/createWithArray : Creates list of users with given input array
- *
- * @param body List of user object (required)
- * @return successful operation (status code 200)
- */
- @ApiOperation(
- tags = { "user" },
- value = "Creates list of users with given input array",
- nickname = "createUsersWithArrayInput",
- notes = ""
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation")
- })
- @RequestMapping(
- method = RequestMethod.POST,
- value = "/user/createWithArray"
- )
- CompletableFuture> createUsersWithArrayInput(
- @ApiParam(value = "List of user object", required = true) @Valid @RequestBody List body
- );
-
-
- /**
- * POST /user/createWithList : Creates list of users with given input array
- *
- * @param body List of user object (required)
- * @return successful operation (status code 200)
- */
- @ApiOperation(
- tags = { "user" },
- value = "Creates list of users with given input array",
- nickname = "createUsersWithListInput",
- notes = ""
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation")
- })
- @RequestMapping(
- method = RequestMethod.POST,
- value = "/user/createWithList"
- )
- CompletableFuture> createUsersWithListInput(
- @ApiParam(value = "List of user object", required = true) @Valid @RequestBody List body
- );
-
-
- /**
- * DELETE /user/{username} : Delete user
- * This can only be done by the logged in user.
- *
- * @param username The name that needs to be deleted (required)
- * @return Invalid username supplied (status code 400)
- * or User not found (status code 404)
- */
- @ApiOperation(
- tags = { "user" },
- value = "Delete user",
- nickname = "deleteUser",
- notes = "This can only be done by the logged in user."
- )
- @ApiResponses({
- @ApiResponse(code = 400, message = "Invalid username supplied"),
- @ApiResponse(code = 404, message = "User not found")
- })
- @RequestMapping(
- method = RequestMethod.DELETE,
- value = "/user/{username}"
- )
- CompletableFuture> deleteUser(
- @ApiParam(value = "The name that needs to be deleted", required = true) @PathVariable("username") String username
- );
-
-
- /**
- * GET /user/{username} : Get user by user name
- *
- * @param username The name that needs to be fetched. Use user1 for testing. (required)
- * @return successful operation (status code 200)
- * or Invalid username supplied (status code 400)
- * or User not found (status code 404)
- */
- @ApiOperation(
- tags = { "user" },
- value = "Get user by user name",
- nickname = "getUserByName",
- notes = "",
- response = User.class
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation", response = User.class),
- @ApiResponse(code = 400, message = "Invalid username supplied"),
- @ApiResponse(code = 404, message = "User not found")
- })
- @RequestMapping(
- method = RequestMethod.GET,
- value = "/user/{username}",
- produces = "application/json"
- )
- CompletableFuture> getUserByName(
- @ApiParam(value = "The name that needs to be fetched. Use user1 for testing.", required = true) @PathVariable("username") String username
- );
-
-
- /**
- * GET /user/login : Logs user into the system
- *
- * @param username The user name for login (required)
- * @param password The password for login in clear text (required)
- * @return successful operation (status code 200)
- * or Invalid username/password supplied (status code 400)
- */
- @ApiOperation(
- tags = { "user" },
- value = "Logs user into the system",
- nickname = "loginUser",
- notes = "",
- response = String.class
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation", response = String.class),
- @ApiResponse(code = 400, message = "Invalid username/password supplied")
- })
- @RequestMapping(
- method = RequestMethod.GET,
- value = "/user/login",
- produces = "application/json"
- )
- CompletableFuture> loginUser(
- @NotNull @ApiParam(value = "The user name for login", required = true) @Valid @RequestParam(value = "username", required = true) String username,
- @NotNull @ApiParam(value = "The password for login in clear text", required = true) @Valid @RequestParam(value = "password", required = true) String password
- );
-
-
- /**
- * GET /user/logout : Logs out current logged in user session
- *
- * @return successful operation (status code 200)
- */
- @ApiOperation(
- tags = { "user" },
- value = "Logs out current logged in user session",
- nickname = "logoutUser",
- notes = ""
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation")
- })
- @RequestMapping(
- method = RequestMethod.GET,
- value = "/user/logout"
- )
- CompletableFuture> logoutUser(
-
- );
-
-
- /**
- * PUT /user/{username} : Updated user
- * This can only be done by the logged in user.
- *
- * @param username name that need to be deleted (required)
- * @param body Updated user object (required)
- * @return Invalid user supplied (status code 400)
- * or User not found (status code 404)
- */
- @ApiOperation(
- tags = { "user" },
- value = "Updated user",
- nickname = "updateUser",
- notes = "This can only be done by the logged in user."
- )
- @ApiResponses({
- @ApiResponse(code = 400, message = "Invalid user supplied"),
- @ApiResponse(code = 404, message = "User not found")
- })
- @RequestMapping(
- method = RequestMethod.PUT,
- value = "/user/{username}"
- )
- CompletableFuture> updateUser(
- @ApiParam(value = "name that need to be deleted", required = true) @PathVariable("username") String username,
- @ApiParam(value = "Updated user object", required = true) @Valid @RequestBody User body
- );
-
-}
diff --git a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/UserApiClient.java b/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/UserApiClient.java
deleted file mode 100644
index 1db4598108d..00000000000
--- a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/api/UserApiClient.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package org.openapitools.api;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.openapitools.configuration.ClientConfiguration;
-
-@FeignClient(name="${user.name:user}", url="${user.url:http://petstore.swagger.io/v2}", configuration = ClientConfiguration.class)
-public interface UserApiClient extends UserApi {
-}
diff --git a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/configuration/ApiKeyRequestInterceptor.java b/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/configuration/ApiKeyRequestInterceptor.java
deleted file mode 100644
index 199278dcb53..00000000000
--- a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/configuration/ApiKeyRequestInterceptor.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.openapitools.configuration;
-
-import feign.RequestInterceptor;
-import feign.RequestTemplate;
-import feign.Util;
-
-
-public class ApiKeyRequestInterceptor implements RequestInterceptor {
- private final String location;
- private final String name;
- private String value;
-
- public ApiKeyRequestInterceptor(String location, String name, String value) {
- Util.checkNotNull(location, "location", new Object[0]);
- Util.checkNotNull(name, "name", new Object[0]);
- Util.checkNotNull(value, "value", new Object[0]);
- this.location = location;
- this.name = name;
- this.value = value;
- }
-
- @Override
- public void apply(RequestTemplate requestTemplate) {
- if(location.equals("header")) {
- requestTemplate.header(name, value);
- } else if(location.equals("query")) {
- requestTemplate.query(name, value);
- }
- }
-
-}
diff --git a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/configuration/ClientConfiguration.java b/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/configuration/ClientConfiguration.java
deleted file mode 100644
index 49f1c66c11a..00000000000
--- a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/configuration/ClientConfiguration.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package org.openapitools.configuration;
-
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
-import org.springframework.boot.context.properties.ConfigurationProperties;
-import org.springframework.boot.context.properties.EnableConfigurationProperties;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.cloud.openfeign.security.OAuth2FeignRequestInterceptor;
-import org.springframework.security.oauth2.client.DefaultOAuth2ClientContext;
-import org.springframework.security.oauth2.client.OAuth2ClientContext;
-import org.springframework.security.oauth2.client.token.grant.implicit.ImplicitResourceDetails;
-
-@Configuration
-@EnableConfigurationProperties
-public class ClientConfiguration {
-
- @Bean
- @ConditionalOnProperty("openapipetstore.security.petstoreAuth.client-id")
- public OAuth2FeignRequestInterceptor petstoreAuthRequestInterceptor(OAuth2ClientContext oAuth2ClientContext) {
- return new OAuth2FeignRequestInterceptor(oAuth2ClientContext, petstoreAuthResourceDetails());
- }
-
- @Bean
- @ConditionalOnProperty("openapipetstore.security.petstoreAuth.client-id")
- public OAuth2ClientContext oAuth2ClientContext() {
- return new DefaultOAuth2ClientContext();
- }
-
- @Bean
- @ConditionalOnProperty("openapipetstore.security.petstoreAuth.client-id")
- @ConfigurationProperties("openapipetstore.security.petstoreAuth")
- public ImplicitResourceDetails petstoreAuthResourceDetails() {
- ImplicitResourceDetails details = new ImplicitResourceDetails();
- details.setUserAuthorizationUri("http://petstore.swagger.io/api/oauth/dialog");
- return details;
- }
-
- @Value("${openapipetstore.security.apiKey.key:}")
- private String apiKeyKey;
-
- @Bean
- @ConditionalOnProperty(name = "openapipetstore.security.apiKey.key")
- public ApiKeyRequestInterceptor apiKeyRequestInterceptor() {
- return new ApiKeyRequestInterceptor("header", "api_key", this.apiKeyKey);
- }
-
-}
diff --git a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/model/Category.java b/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/model/Category.java
deleted file mode 100644
index 9f5ef4d9f1a..00000000000
--- a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/model/Category.java
+++ /dev/null
@@ -1,109 +0,0 @@
-package org.openapitools.model;
-
-import java.net.URI;
-import java.util.Objects;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonCreator;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import org.openapitools.jackson.nullable.JsonNullable;
-import java.time.OffsetDateTime;
-import javax.validation.Valid;
-import javax.validation.constraints.*;
-
-
-import java.util.*;
-import javax.annotation.Generated;
-
-/**
- * A category for a pet
- */
-
-@ApiModel(description = "A category for a pet")
-@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
-public class Category {
-
- @JsonProperty("id")
- private Long id;
-
- @JsonProperty("name")
- private String name;
-
- public Category id(Long id) {
- this.id = id;
- return this;
- }
-
- /**
- * Get id
- * @return id
- */
-
- @ApiModelProperty(value = "")
- public Long getId() {
- return id;
- }
-
- public void setId(Long id) {
- this.id = id;
- }
-
- public Category name(String name) {
- this.name = name;
- return this;
- }
-
- /**
- * Get name
- * @return name
- */
-
- @ApiModelProperty(value = "")
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- @Override
- public boolean equals(Object o) {
- if (this == o) {
- return true;
- }
- if (o == null || getClass() != o.getClass()) {
- return false;
- }
- Category category = (Category) o;
- return Objects.equals(this.id, category.id) &&
- Objects.equals(this.name, category.name);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(id, name);
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("class Category {\n");
- sb.append(" id: ").append(toIndentedString(id)).append("\n");
- sb.append(" name: ").append(toIndentedString(name)).append("\n");
- sb.append("}");
- return sb.toString();
- }
-
- /**
- * Convert the given object to string with each line indented by 4 spaces
- * (except the first line).
- */
- private String toIndentedString(Object o) {
- if (o == null) {
- return "null";
- }
- return o.toString().replace("\n", "\n ");
- }
-}
-
diff --git a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/model/ModelApiResponse.java b/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/model/ModelApiResponse.java
deleted file mode 100644
index 52fb11fd3cf..00000000000
--- a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/model/ModelApiResponse.java
+++ /dev/null
@@ -1,135 +0,0 @@
-package org.openapitools.model;
-
-import java.net.URI;
-import java.util.Objects;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonCreator;
-import com.fasterxml.jackson.annotation.JsonTypeName;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import org.openapitools.jackson.nullable.JsonNullable;
-import java.time.OffsetDateTime;
-import javax.validation.Valid;
-import javax.validation.constraints.*;
-
-
-import java.util.*;
-import javax.annotation.Generated;
-
-/**
- * Describes the result of uploading an image resource
- */
-
-@ApiModel(description = "Describes the result of uploading an image resource")
-@JsonTypeName("ApiResponse")
-@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
-public class ModelApiResponse {
-
- @JsonProperty("code")
- private Integer code;
-
- @JsonProperty("type")
- private String type;
-
- @JsonProperty("message")
- private String message;
-
- public ModelApiResponse code(Integer code) {
- this.code = code;
- return this;
- }
-
- /**
- * Get code
- * @return code
- */
-
- @ApiModelProperty(value = "")
- public Integer getCode() {
- return code;
- }
-
- public void setCode(Integer code) {
- this.code = code;
- }
-
- public ModelApiResponse type(String type) {
- this.type = type;
- return this;
- }
-
- /**
- * Get type
- * @return type
- */
-
- @ApiModelProperty(value = "")
- public String getType() {
- return type;
- }
-
- public void setType(String type) {
- this.type = type;
- }
-
- public ModelApiResponse message(String message) {
- this.message = message;
- return this;
- }
-
- /**
- * Get message
- * @return message
- */
-
- @ApiModelProperty(value = "")
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- @Override
- public boolean equals(Object o) {
- if (this == o) {
- return true;
- }
- if (o == null || getClass() != o.getClass()) {
- return false;
- }
- ModelApiResponse _apiResponse = (ModelApiResponse) o;
- return Objects.equals(this.code, _apiResponse.code) &&
- Objects.equals(this.type, _apiResponse.type) &&
- Objects.equals(this.message, _apiResponse.message);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(code, type, message);
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("class ModelApiResponse {\n");
- sb.append(" code: ").append(toIndentedString(code)).append("\n");
- sb.append(" type: ").append(toIndentedString(type)).append("\n");
- sb.append(" message: ").append(toIndentedString(message)).append("\n");
- sb.append("}");
- return sb.toString();
- }
-
- /**
- * Convert the given object to string with each line indented by 4 spaces
- * (except the first line).
- */
- private String toIndentedString(Object o) {
- if (o == null) {
- return "null";
- }
- return o.toString().replace("\n", "\n ");
- }
-}
-
diff --git a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/model/Order.java b/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/model/Order.java
deleted file mode 100644
index 66d9df6dfd9..00000000000
--- a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/model/Order.java
+++ /dev/null
@@ -1,246 +0,0 @@
-package org.openapitools.model;
-
-import java.net.URI;
-import java.util.Objects;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonCreator;
-import com.fasterxml.jackson.annotation.JsonValue;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import java.time.OffsetDateTime;
-import org.springframework.format.annotation.DateTimeFormat;
-import org.openapitools.jackson.nullable.JsonNullable;
-import java.time.OffsetDateTime;
-import javax.validation.Valid;
-import javax.validation.constraints.*;
-
-
-import java.util.*;
-import javax.annotation.Generated;
-
-/**
- * An order for a pets from the pet store
- */
-
-@ApiModel(description = "An order for a pets from the pet store")
-@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
-public class Order {
-
- @JsonProperty("id")
- private Long id;
-
- @JsonProperty("petId")
- private Long petId;
-
- @JsonProperty("quantity")
- private Integer quantity;
-
- @JsonProperty("shipDate")
- @DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME)
- private OffsetDateTime shipDate;
-
- /**
- * Order Status
- */
- public enum StatusEnum {
- PLACED("placed"),
-
- APPROVED("approved"),
-
- DELIVERED("delivered");
-
- private String value;
-
- StatusEnum(String value) {
- this.value = value;
- }
-
- @JsonValue
- public String getValue() {
- return value;
- }
-
- @Override
- public String toString() {
- return String.valueOf(value);
- }
-
- @JsonCreator
- public static StatusEnum fromValue(String value) {
- for (StatusEnum b : StatusEnum.values()) {
- if (b.value.equals(value)) {
- return b;
- }
- }
- throw new IllegalArgumentException("Unexpected value '" + value + "'");
- }
- }
-
- @JsonProperty("status")
- private StatusEnum status;
-
- @JsonProperty("complete")
- private Boolean complete = false;
-
- public Order id(Long id) {
- this.id = id;
- return this;
- }
-
- /**
- * Get id
- * @return id
- */
-
- @ApiModelProperty(value = "")
- public Long getId() {
- return id;
- }
-
- public void setId(Long id) {
- this.id = id;
- }
-
- public Order petId(Long petId) {
- this.petId = petId;
- return this;
- }
-
- /**
- * Get petId
- * @return petId
- */
-
- @ApiModelProperty(value = "")
- public Long getPetId() {
- return petId;
- }
-
- public void setPetId(Long petId) {
- this.petId = petId;
- }
-
- public Order quantity(Integer quantity) {
- this.quantity = quantity;
- return this;
- }
-
- /**
- * Get quantity
- * @return quantity
- */
-
- @ApiModelProperty(value = "")
- public Integer getQuantity() {
- return quantity;
- }
-
- public void setQuantity(Integer quantity) {
- this.quantity = quantity;
- }
-
- public Order shipDate(OffsetDateTime shipDate) {
- this.shipDate = shipDate;
- return this;
- }
-
- /**
- * Get shipDate
- * @return shipDate
- */
- @Valid
- @ApiModelProperty(value = "")
- public OffsetDateTime getShipDate() {
- return shipDate;
- }
-
- public void setShipDate(OffsetDateTime shipDate) {
- this.shipDate = shipDate;
- }
-
- public Order status(StatusEnum status) {
- this.status = status;
- return this;
- }
-
- /**
- * Order Status
- * @return status
- */
-
- @ApiModelProperty(value = "Order Status")
- public StatusEnum getStatus() {
- return status;
- }
-
- public void setStatus(StatusEnum status) {
- this.status = status;
- }
-
- public Order complete(Boolean complete) {
- this.complete = complete;
- return this;
- }
-
- /**
- * Get complete
- * @return complete
- */
-
- @ApiModelProperty(value = "")
- public Boolean getComplete() {
- return complete;
- }
-
- public void setComplete(Boolean complete) {
- this.complete = complete;
- }
-
- @Override
- public boolean equals(Object o) {
- if (this == o) {
- return true;
- }
- if (o == null || getClass() != o.getClass()) {
- return false;
- }
- Order order = (Order) o;
- return Objects.equals(this.id, order.id) &&
- Objects.equals(this.petId, order.petId) &&
- Objects.equals(this.quantity, order.quantity) &&
- Objects.equals(this.shipDate, order.shipDate) &&
- Objects.equals(this.status, order.status) &&
- Objects.equals(this.complete, order.complete);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(id, petId, quantity, shipDate, status, complete);
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("class Order {\n");
- sb.append(" id: ").append(toIndentedString(id)).append("\n");
- sb.append(" petId: ").append(toIndentedString(petId)).append("\n");
- sb.append(" quantity: ").append(toIndentedString(quantity)).append("\n");
- sb.append(" shipDate: ").append(toIndentedString(shipDate)).append("\n");
- sb.append(" status: ").append(toIndentedString(status)).append("\n");
- sb.append(" complete: ").append(toIndentedString(complete)).append("\n");
- sb.append("}");
- return sb.toString();
- }
-
- /**
- * Convert the given object to string with each line indented by 4 spaces
- * (except the first line).
- */
- private String toIndentedString(Object o) {
- if (o == null) {
- return "null";
- }
- return o.toString().replace("\n", "\n ");
- }
-}
-
diff --git a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/model/Tag.java b/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/model/Tag.java
deleted file mode 100644
index b30aa3fd9a2..00000000000
--- a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/model/Tag.java
+++ /dev/null
@@ -1,109 +0,0 @@
-package org.openapitools.model;
-
-import java.net.URI;
-import java.util.Objects;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonCreator;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import org.openapitools.jackson.nullable.JsonNullable;
-import java.time.OffsetDateTime;
-import javax.validation.Valid;
-import javax.validation.constraints.*;
-
-
-import java.util.*;
-import javax.annotation.Generated;
-
-/**
- * A tag for a pet
- */
-
-@ApiModel(description = "A tag for a pet")
-@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
-public class Tag {
-
- @JsonProperty("id")
- private Long id;
-
- @JsonProperty("name")
- private String name;
-
- public Tag id(Long id) {
- this.id = id;
- return this;
- }
-
- /**
- * Get id
- * @return id
- */
-
- @ApiModelProperty(value = "")
- public Long getId() {
- return id;
- }
-
- public void setId(Long id) {
- this.id = id;
- }
-
- public Tag name(String name) {
- this.name = name;
- return this;
- }
-
- /**
- * Get name
- * @return name
- */
-
- @ApiModelProperty(value = "")
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- @Override
- public boolean equals(Object o) {
- if (this == o) {
- return true;
- }
- if (o == null || getClass() != o.getClass()) {
- return false;
- }
- Tag tag = (Tag) o;
- return Objects.equals(this.id, tag.id) &&
- Objects.equals(this.name, tag.name);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(id, name);
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("class Tag {\n");
- sb.append(" id: ").append(toIndentedString(id)).append("\n");
- sb.append(" name: ").append(toIndentedString(name)).append("\n");
- sb.append("}");
- return sb.toString();
- }
-
- /**
- * Convert the given object to string with each line indented by 4 spaces
- * (except the first line).
- */
- private String toIndentedString(Object o) {
- if (o == null) {
- return "null";
- }
- return o.toString().replace("\n", "\n ");
- }
-}
-
diff --git a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/model/User.java b/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/model/User.java
deleted file mode 100644
index 8d71f0fcc04..00000000000
--- a/samples/client/petstore/spring-cloud-async/src/main/java/org/openapitools/model/User.java
+++ /dev/null
@@ -1,253 +0,0 @@
-package org.openapitools.model;
-
-import java.net.URI;
-import java.util.Objects;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonCreator;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import org.openapitools.jackson.nullable.JsonNullable;
-import java.time.OffsetDateTime;
-import javax.validation.Valid;
-import javax.validation.constraints.*;
-
-
-import java.util.*;
-import javax.annotation.Generated;
-
-/**
- * A User who is purchasing from the pet store
- */
-
-@ApiModel(description = "A User who is purchasing from the pet store")
-@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
-public class User {
-
- @JsonProperty("id")
- private Long id;
-
- @JsonProperty("username")
- private String username;
-
- @JsonProperty("firstName")
- private String firstName;
-
- @JsonProperty("lastName")
- private String lastName;
-
- @JsonProperty("email")
- private String email;
-
- @JsonProperty("password")
- private String password;
-
- @JsonProperty("phone")
- private String phone;
-
- @JsonProperty("userStatus")
- private Integer userStatus;
-
- public User id(Long id) {
- this.id = id;
- return this;
- }
-
- /**
- * Get id
- * @return id
- */
-
- @ApiModelProperty(value = "")
- public Long getId() {
- return id;
- }
-
- public void setId(Long id) {
- this.id = id;
- }
-
- public User username(String username) {
- this.username = username;
- return this;
- }
-
- /**
- * Get username
- * @return username
- */
-
- @ApiModelProperty(value = "")
- public String getUsername() {
- return username;
- }
-
- public void setUsername(String username) {
- this.username = username;
- }
-
- public User firstName(String firstName) {
- this.firstName = firstName;
- return this;
- }
-
- /**
- * Get firstName
- * @return firstName
- */
-
- @ApiModelProperty(value = "")
- public String getFirstName() {
- return firstName;
- }
-
- public void setFirstName(String firstName) {
- this.firstName = firstName;
- }
-
- public User lastName(String lastName) {
- this.lastName = lastName;
- return this;
- }
-
- /**
- * Get lastName
- * @return lastName
- */
-
- @ApiModelProperty(value = "")
- public String getLastName() {
- return lastName;
- }
-
- public void setLastName(String lastName) {
- this.lastName = lastName;
- }
-
- public User email(String email) {
- this.email = email;
- return this;
- }
-
- /**
- * Get email
- * @return email
- */
-
- @ApiModelProperty(value = "")
- public String getEmail() {
- return email;
- }
-
- public void setEmail(String email) {
- this.email = email;
- }
-
- public User password(String password) {
- this.password = password;
- return this;
- }
-
- /**
- * Get password
- * @return password
- */
-
- @ApiModelProperty(value = "")
- public String getPassword() {
- return password;
- }
-
- public void setPassword(String password) {
- this.password = password;
- }
-
- public User phone(String phone) {
- this.phone = phone;
- return this;
- }
-
- /**
- * Get phone
- * @return phone
- */
-
- @ApiModelProperty(value = "")
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- public User userStatus(Integer userStatus) {
- this.userStatus = userStatus;
- return this;
- }
-
- /**
- * User Status
- * @return userStatus
- */
-
- @ApiModelProperty(value = "User Status")
- public Integer getUserStatus() {
- return userStatus;
- }
-
- public void setUserStatus(Integer userStatus) {
- this.userStatus = userStatus;
- }
-
- @Override
- public boolean equals(Object o) {
- if (this == o) {
- return true;
- }
- if (o == null || getClass() != o.getClass()) {
- return false;
- }
- User user = (User) o;
- return Objects.equals(this.id, user.id) &&
- Objects.equals(this.username, user.username) &&
- Objects.equals(this.firstName, user.firstName) &&
- Objects.equals(this.lastName, user.lastName) &&
- Objects.equals(this.email, user.email) &&
- Objects.equals(this.password, user.password) &&
- Objects.equals(this.phone, user.phone) &&
- Objects.equals(this.userStatus, user.userStatus);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(id, username, firstName, lastName, email, password, phone, userStatus);
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("class User {\n");
- sb.append(" id: ").append(toIndentedString(id)).append("\n");
- sb.append(" username: ").append(toIndentedString(username)).append("\n");
- sb.append(" firstName: ").append(toIndentedString(firstName)).append("\n");
- sb.append(" lastName: ").append(toIndentedString(lastName)).append("\n");
- sb.append(" email: ").append(toIndentedString(email)).append("\n");
- sb.append(" password: ").append(toIndentedString(password)).append("\n");
- sb.append(" phone: ").append(toIndentedString(phone)).append("\n");
- sb.append(" userStatus: ").append(toIndentedString(userStatus)).append("\n");
- sb.append("}");
- return sb.toString();
- }
-
- /**
- * Convert the given object to string with each line indented by 4 spaces
- * (except the first line).
- */
- private String toIndentedString(Object o) {
- if (o == null) {
- return "null";
- }
- return o.toString().replace("\n", "\n ");
- }
-}
-
diff --git a/samples/client/petstore/spring-cloud-spring-pageable/.openapi-generator-ignore b/samples/client/petstore/spring-cloud-spring-pageable/.openapi-generator-ignore
deleted file mode 100644
index 7484ee590a3..00000000000
--- a/samples/client/petstore/spring-cloud-spring-pageable/.openapi-generator-ignore
+++ /dev/null
@@ -1,23 +0,0 @@
-# OpenAPI Generator Ignore
-# Generated by openapi-generator https://github.com/openapitools/openapi-generator
-
-# Use this file to prevent files from being overwritten by the generator.
-# The patterns follow closely to .gitignore or .dockerignore.
-
-# As an example, the C# client generator defines ApiClient.cs.
-# You can make changes and tell OpenAPI Generator to ignore just this file by uncommenting the following line:
-#ApiClient.cs
-
-# You can match any string of characters against a directory, file or extension with a single asterisk (*):
-#foo/*/qux
-# The above matches foo/bar/qux and foo/baz/qux, but not foo/bar/baz/qux
-
-# You can recursively match patterns against a directory, file or extension with a double asterisk (**):
-#foo/**/qux
-# This matches foo/bar/qux, foo/baz/qux, and foo/bar/baz/qux
-
-# You can also negate patterns with an exclamation (!).
-# For example, you can ignore all files in a docs folder with the file extension .md:
-#docs/*.md
-# Then explicitly reverse the ignore rule for a single file:
-#!docs/README.md
diff --git a/samples/client/petstore/spring-cloud-spring-pageable/.openapi-generator/FILES b/samples/client/petstore/spring-cloud-spring-pageable/.openapi-generator/FILES
deleted file mode 100644
index 3510d2b2d27..00000000000
--- a/samples/client/petstore/spring-cloud-spring-pageable/.openapi-generator/FILES
+++ /dev/null
@@ -1,16 +0,0 @@
-README.md
-pom.xml
-src/main/java/org/openapitools/api/PetApi.java
-src/main/java/org/openapitools/api/PetApiClient.java
-src/main/java/org/openapitools/api/StoreApi.java
-src/main/java/org/openapitools/api/StoreApiClient.java
-src/main/java/org/openapitools/api/UserApi.java
-src/main/java/org/openapitools/api/UserApiClient.java
-src/main/java/org/openapitools/configuration/ApiKeyRequestInterceptor.java
-src/main/java/org/openapitools/configuration/ClientConfiguration.java
-src/main/java/org/openapitools/model/Category.java
-src/main/java/org/openapitools/model/ModelApiResponse.java
-src/main/java/org/openapitools/model/Order.java
-src/main/java/org/openapitools/model/Pet.java
-src/main/java/org/openapitools/model/Tag.java
-src/main/java/org/openapitools/model/User.java
diff --git a/samples/client/petstore/spring-cloud-spring-pageable/.openapi-generator/VERSION b/samples/client/petstore/spring-cloud-spring-pageable/.openapi-generator/VERSION
deleted file mode 100644
index 7f4d792ec2c..00000000000
--- a/samples/client/petstore/spring-cloud-spring-pageable/.openapi-generator/VERSION
+++ /dev/null
@@ -1 +0,0 @@
-6.5.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/spring-cloud-spring-pageable/README.md b/samples/client/petstore/spring-cloud-spring-pageable/README.md
deleted file mode 100644
index 6d07c5eb9af..00000000000
--- a/samples/client/petstore/spring-cloud-spring-pageable/README.md
+++ /dev/null
@@ -1,53 +0,0 @@
-# spring-cloud-spring-pageable
-
-## Requirements
-
-Building the API client library requires [Maven](https://maven.apache.org/) to be installed.
-
-## Installation
-
-To install the API client library to your local Maven repository, simply execute:
-
-```shell
-mvn install
-```
-
-To deploy it to a remote Maven repository instead, configure the settings of the repository and execute:
-
-```shell
-mvn deploy
-```
-
-Refer to the [official documentation](https://maven.apache.org/plugins/maven-deploy-plugin/usage.html) for more information.
-
-### Maven users
-
-Add this dependency to your project's POM:
-
-```xml
-
- org.openapitools
- spring-cloud-spring-pageable
- 1.0.0
- compile
-
-```
-
-### Gradle users
-
-Add this dependency to your project's build file:
-
-```groovy
-compile "org.openapitools:spring-cloud-spring-pageable:1.0.0"
-```
-
-### Others
-
-At first generate the JAR by executing:
-
-mvn package
-
-Then manually install the following JARs:
-
-* target/spring-cloud-spring-pageable-1.0.0.jar
-* target/lib/*.jar
diff --git a/samples/client/petstore/spring-cloud-spring-pageable/pom.xml b/samples/client/petstore/spring-cloud-spring-pageable/pom.xml
deleted file mode 100644
index 027c3fae62c..00000000000
--- a/samples/client/petstore/spring-cloud-spring-pageable/pom.xml
+++ /dev/null
@@ -1,82 +0,0 @@
-
- 4.0.0
- org.openapitools
- spring-cloud-spring-pageable
- jar
- spring-cloud-spring-pageable
- 1.0.0
-
- 1.8
- ${java.version}
- ${java.version}
- UTF-8
- 2.9.2
-
-
- org.springframework.boot
- spring-boot-starter-parent
- 2.7.6
-
-
-
- src/main/java
-
-
-
-
-
- org.springframework.cloud
- spring-cloud-starter-parent
- 2021.0.5
- pom
- import
-
-
-
-
-
-
-
- io.springfox
- springfox-swagger2
- ${springfox.version}
-
-
-
- com.google.code.findbugs
- jsr305
- 3.0.2
-
-
- org.springframework.cloud
- spring-cloud-starter-openfeign
-
-
- org.springframework.cloud
- spring-cloud-starter-oauth2
- 2.2.5.RELEASE
-
-
- com.fasterxml.jackson.datatype
- jackson-datatype-jsr310
-
-
- org.openapitools
- jackson-databind-nullable
- 0.2.6
-
-
- org.springframework.boot
- spring-boot-starter-validation
-
-
- org.springframework.data
- spring-data-commons
-
-
- org.springframework.boot
- spring-boot-starter-test
- test
-
-
-
diff --git a/samples/client/petstore/spring-cloud-spring-pageable/src/main/java/org/openapitools/api/PetApi.java b/samples/client/petstore/spring-cloud-spring-pageable/src/main/java/org/openapitools/api/PetApi.java
deleted file mode 100644
index 99777fe2496..00000000000
--- a/samples/client/petstore/spring-cloud-spring-pageable/src/main/java/org/openapitools/api/PetApi.java
+++ /dev/null
@@ -1,312 +0,0 @@
-/**
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech) (6.5.0-SNAPSHOT).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-package org.openapitools.api;
-
-import springfox.documentation.annotations.ApiIgnore;
-import org.openapitools.model.ModelApiResponse;
-import org.springframework.data.domain.Pageable;
-import org.openapitools.model.Pet;
-import io.swagger.annotations.*;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
-import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.context.request.NativeWebRequest;
-import org.springframework.web.multipart.MultipartFile;
-
-import javax.validation.Valid;
-import javax.validation.constraints.*;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import javax.annotation.Generated;
-
-@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
-@Validated
-@Api(value = "pet", description = "Everything about your Pets")
-public interface PetApi {
-
- /**
- * POST /pet : Add a new pet to the store
- *
- * @param body Pet object that needs to be added to the store (required)
- * @return Invalid input (status code 405)
- */
- @ApiOperation(
- tags = { "pet" },
- value = "Add a new pet to the store",
- nickname = "addPet",
- notes = "",
- authorizations = {
- @Authorization(value = "petstore_auth", scopes = {
- @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"),
- @AuthorizationScope(scope = "read:pets", description = "read your pets")
- })
- }
- )
- @ApiResponses({
- @ApiResponse(code = 405, message = "Invalid input")
- })
- @RequestMapping(
- method = RequestMethod.POST,
- value = "/pet",
- consumes = "application/json"
- )
- ResponseEntity addPet(
- @ApiParam(value = "Pet object that needs to be added to the store", required = true) @Valid @RequestBody Pet body
- );
-
-
- /**
- * DELETE /pet/{petId} : Deletes a pet
- *
- * @param petId Pet id to delete (required)
- * @param apiKey (optional)
- * @return Invalid pet value (status code 400)
- */
- @ApiOperation(
- tags = { "pet" },
- value = "Deletes a pet",
- nickname = "deletePet",
- notes = "",
- authorizations = {
- @Authorization(value = "petstore_auth", scopes = {
- @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"),
- @AuthorizationScope(scope = "read:pets", description = "read your pets")
- })
- }
- )
- @ApiResponses({
- @ApiResponse(code = 400, message = "Invalid pet value")
- })
- @RequestMapping(
- method = RequestMethod.DELETE,
- value = "/pet/{petId}"
- )
- ResponseEntity deletePet(
- @ApiParam(value = "Pet id to delete", required = true) @PathVariable("petId") Long petId,
- @ApiParam(value = "") @RequestHeader(value = "api_key", required = false) String apiKey
- );
-
-
- /**
- * GET /pet/findByStatus : Finds Pets by status
- * Multiple status values can be provided with comma separated strings
- *
- * @param status Status values that need to be considered for filter (required)
- * @return successful operation (status code 200)
- * or Invalid status value (status code 400)
- */
- @ApiOperation(
- tags = { "pet" },
- value = "Finds Pets by status",
- nickname = "findPetsByStatus",
- notes = "Multiple status values can be provided with comma separated strings",
- response = Pet.class,
- responseContainer = "List",
- authorizations = {
- @Authorization(value = "petstore_auth", scopes = {
- @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"),
- @AuthorizationScope(scope = "read:pets", description = "read your pets")
- })
- }
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"),
- @ApiResponse(code = 400, message = "Invalid status value")
- })
- @RequestMapping(
- method = RequestMethod.GET,
- value = "/pet/findByStatus",
- produces = "application/json"
- )
- ResponseEntity> findPetsByStatus(
- @NotNull @ApiParam(value = "Status values that need to be considered for filter", required = true, allowableValues = "available, pending, sold") @Valid @RequestParam(value = "status", required = true) List status,
- @ApiIgnore final Pageable pageable
- );
-
-
- /**
- * GET /pet/findByTags : Finds Pets by tags
- * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
- *
- * @param tags Tags to filter by (required)
- * @return successful operation (status code 200)
- * or Invalid tag value (status code 400)
- * @deprecated
- */
- @Deprecated
- @ApiOperation(
- tags = { "pet" },
- value = "Finds Pets by tags",
- nickname = "findPetsByTags",
- notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.",
- response = Pet.class,
- responseContainer = "List",
- authorizations = {
- @Authorization(value = "petstore_auth", scopes = {
- @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"),
- @AuthorizationScope(scope = "read:pets", description = "read your pets")
- })
- }
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"),
- @ApiResponse(code = 400, message = "Invalid tag value")
- })
- @RequestMapping(
- method = RequestMethod.GET,
- value = "/pet/findByTags",
- produces = "application/json"
- )
- ResponseEntity> findPetsByTags(
- @NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) List tags,
- @ApiIgnore final Pageable pageable
- );
-
-
- /**
- * GET /pet/{petId} : Find pet by ID
- * Returns a single pet
- *
- * @param petId ID of pet to return (required)
- * @return successful operation (status code 200)
- * or Invalid ID supplied (status code 400)
- * or Pet not found (status code 404)
- */
- @ApiOperation(
- tags = { "pet" },
- value = "Find pet by ID",
- nickname = "getPetById",
- notes = "Returns a single pet",
- response = Pet.class,
- authorizations = {
- @Authorization(value = "api_key")
- }
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation", response = Pet.class),
- @ApiResponse(code = 400, message = "Invalid ID supplied"),
- @ApiResponse(code = 404, message = "Pet not found")
- })
- @RequestMapping(
- method = RequestMethod.GET,
- value = "/pet/{petId}",
- produces = "application/json"
- )
- ResponseEntity getPetById(
- @ApiParam(value = "ID of pet to return", required = true) @PathVariable("petId") Long petId
- );
-
-
- /**
- * PUT /pet : Update an existing pet
- *
- * @param body Pet object that needs to be added to the store (required)
- * @return Invalid ID supplied (status code 400)
- * or Pet not found (status code 404)
- * or Validation exception (status code 405)
- */
- @ApiOperation(
- tags = { "pet" },
- value = "Update an existing pet",
- nickname = "updatePet",
- notes = "",
- authorizations = {
- @Authorization(value = "petstore_auth", scopes = {
- @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"),
- @AuthorizationScope(scope = "read:pets", description = "read your pets")
- })
- }
- )
- @ApiResponses({
- @ApiResponse(code = 400, message = "Invalid ID supplied"),
- @ApiResponse(code = 404, message = "Pet not found"),
- @ApiResponse(code = 405, message = "Validation exception")
- })
- @RequestMapping(
- method = RequestMethod.PUT,
- value = "/pet",
- consumes = "application/json"
- )
- ResponseEntity updatePet(
- @ApiParam(value = "Pet object that needs to be added to the store", required = true) @Valid @RequestBody Pet body
- );
-
-
- /**
- * POST /pet/{petId} : Updates a pet in the store with form data
- *
- * @param petId ID of pet that needs to be updated (required)
- * @param name Updated name of the pet (optional)
- * @param status Updated status of the pet (optional)
- * @return Invalid input (status code 405)
- */
- @ApiOperation(
- tags = { "pet" },
- value = "Updates a pet in the store with form data",
- nickname = "updatePetWithForm",
- notes = "",
- authorizations = {
- @Authorization(value = "petstore_auth", scopes = {
- @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"),
- @AuthorizationScope(scope = "read:pets", description = "read your pets")
- })
- }
- )
- @ApiResponses({
- @ApiResponse(code = 405, message = "Invalid input")
- })
- @RequestMapping(
- method = RequestMethod.POST,
- value = "/pet/{petId}",
- consumes = "application/x-www-form-urlencoded"
- )
- ResponseEntity updatePetWithForm(
- @ApiParam(value = "ID of pet that needs to be updated", required = true) @PathVariable("petId") Long petId,
- @ApiParam(value = "Updated name of the pet") @Valid @RequestParam(value = "name", required = false) String name,
- @ApiParam(value = "Updated status of the pet") @Valid @RequestParam(value = "status", required = false) String status
- );
-
-
- /**
- * POST /pet/{petId}/uploadImage : uploads an image
- *
- * @param petId ID of pet to update (required)
- * @param additionalMetadata Additional data to pass to server (optional)
- * @param file file to upload (optional)
- * @return successful operation (status code 200)
- */
- @ApiOperation(
- tags = { "pet" },
- value = "uploads an image",
- nickname = "uploadFile",
- notes = "",
- response = ModelApiResponse.class,
- authorizations = {
- @Authorization(value = "petstore_auth", scopes = {
- @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"),
- @AuthorizationScope(scope = "read:pets", description = "read your pets")
- })
- }
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation", response = ModelApiResponse.class)
- })
- @RequestMapping(
- method = RequestMethod.POST,
- value = "/pet/{petId}/uploadImage",
- produces = "application/json",
- consumes = "multipart/form-data"
- )
- ResponseEntity uploadFile(
- @ApiParam(value = "ID of pet to update", required = true) @PathVariable("petId") Long petId,
- @ApiParam(value = "Additional data to pass to server") @Valid @RequestParam(value = "additionalMetadata", required = false) String additionalMetadata,
- @ApiParam(value = "file to upload") @RequestPart(value = "file", required = false) MultipartFile file
- );
-
-}
diff --git a/samples/client/petstore/spring-cloud-spring-pageable/src/main/java/org/openapitools/api/PetApiClient.java b/samples/client/petstore/spring-cloud-spring-pageable/src/main/java/org/openapitools/api/PetApiClient.java
deleted file mode 100644
index f80fe4ddc67..00000000000
--- a/samples/client/petstore/spring-cloud-spring-pageable/src/main/java/org/openapitools/api/PetApiClient.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package org.openapitools.api;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.openapitools.configuration.ClientConfiguration;
-
-@FeignClient(name="${pet.name:pet}", url="${pet.url:http://petstore.swagger.io/v2}", configuration = ClientConfiguration.class)
-public interface PetApiClient extends PetApi {
-}
diff --git a/samples/client/petstore/spring-cloud-spring-pageable/src/main/java/org/openapitools/api/StoreApi.java b/samples/client/petstore/spring-cloud-spring-pageable/src/main/java/org/openapitools/api/StoreApi.java
deleted file mode 100644
index 3d01a3785e5..00000000000
--- a/samples/client/petstore/spring-cloud-spring-pageable/src/main/java/org/openapitools/api/StoreApi.java
+++ /dev/null
@@ -1,146 +0,0 @@
-/**
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech) (6.5.0-SNAPSHOT).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-package org.openapitools.api;
-
-import java.util.Map;
-import org.openapitools.model.Order;
-import io.swagger.annotations.*;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
-import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.context.request.NativeWebRequest;
-import org.springframework.web.multipart.MultipartFile;
-
-import javax.validation.Valid;
-import javax.validation.constraints.*;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import javax.annotation.Generated;
-
-@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
-@Validated
-@Api(value = "store", description = "Access to Petstore orders")
-public interface StoreApi {
-
- /**
- * DELETE /store/order/{orderId} : Delete purchase order by ID
- * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
- *
- * @param orderId ID of the order that needs to be deleted (required)
- * @return Invalid ID supplied (status code 400)
- * or Order not found (status code 404)
- */
- @ApiOperation(
- tags = { "store" },
- value = "Delete purchase order by ID",
- nickname = "deleteOrder",
- notes = "For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors"
- )
- @ApiResponses({
- @ApiResponse(code = 400, message = "Invalid ID supplied"),
- @ApiResponse(code = 404, message = "Order not found")
- })
- @RequestMapping(
- method = RequestMethod.DELETE,
- value = "/store/order/{orderId}"
- )
- ResponseEntity deleteOrder(
- @ApiParam(value = "ID of the order that needs to be deleted", required = true) @PathVariable("orderId") String orderId
- );
-
-
- /**
- * GET /store/inventory : Returns pet inventories by status
- * Returns a map of status codes to quantities
- *
- * @return successful operation (status code 200)
- */
- @ApiOperation(
- tags = { "store" },
- value = "Returns pet inventories by status",
- nickname = "getInventory",
- notes = "Returns a map of status codes to quantities",
- response = Integer.class,
- responseContainer = "Map",
- authorizations = {
- @Authorization(value = "api_key")
- }
- )
- @ApiResponses({
- @ApiResponse(code = 200, message = "successful operation", response = Map.class, responseContainer = "Map")
- })
- @RequestMapping(
- method = RequestMethod.GET,
- value = "/store/inventory",
- produces = "application/json"
- )
- ResponseEntity