Yonatan Karp-Rudin 83af019603
Fix Retrofit template with Jackson for Kotlin (#14239)
* Fix Retrofit template with Jackson (Fix #8147)

This commit amends the `ApiClient` template for Retrofit. It fixes a bug where the Retrofit client uses Jackson as the serialization library.

Until now, the `ApiClient` could not be compiled when using the Jackson library (default in SpringBoot applications), as the constructor of the class had the following parameter:

`private val serializerBuilder: Builder = Serializer.Builder,`

The change done in the commit, is to ensure that in case of Jackson, the right property of the `Serializer` class is assigned

* Add sample code for `kotlin-jvm-jackson`

This commit adds a sample code for the `kotlin-jvm-jackson` generated code to test the changes on CI

* Update kotlin code samples for CI

This commit only runs the command `bin/generate-samples.sh bin/configs/kotlin-*` to ensure that all code samples are up-to-date and CI can pass successfully.
2023-08-14 10:06:49 +08:00

7.3 KiB

UserApi

All URIs are relative to http://petstore.swagger.io/v2

Method HTTP request Description
createUser POST user Create user
createUsersWithArrayInput POST user/createWithArray Creates list of users with given input array
createUsersWithListInput POST user/createWithList Creates list of users with given input array
deleteUser DELETE user/{username} Delete user
getUserByName GET user/{username} Get user by user name
loginUser GET user/login Logs user into the system
logoutUser GET user/logout Logs out current logged in user session
updateUser PUT user/{username} Updated user

Create user

This can only be done by the logged in user.

Example

// Import classes:
//import org.openapitools.client.*
//import org.openapitools.client.infrastructure.*
//import org.openapitools.client.models.*

val apiClient = ApiClient()
val webService = apiClient.createWebservice(UserApi::class.java)
val user : User =  // User | Created user object

webService.createUser(user)

Parameters

Name Type Description Notes
user User Created user object

Return type

null (empty response body)

Authorization

HTTP request headers

  • Content-Type: application/json
  • Accept: Not defined

Creates list of users with given input array

Example

// Import classes:
//import org.openapitools.client.*
//import org.openapitools.client.infrastructure.*
//import org.openapitools.client.models.*

val apiClient = ApiClient()
val webService = apiClient.createWebservice(UserApi::class.java)
val user : kotlin.collections.List<User> =  // kotlin.collections.List<User> | List of user object

webService.createUsersWithArrayInput(user)

Parameters

Name Type Description Notes
user kotlin.collections.List<User> List of user object

Return type

null (empty response body)

Authorization

HTTP request headers

  • Content-Type: application/json
  • Accept: Not defined

Creates list of users with given input array

Example

// Import classes:
//import org.openapitools.client.*
//import org.openapitools.client.infrastructure.*
//import org.openapitools.client.models.*

val apiClient = ApiClient()
val webService = apiClient.createWebservice(UserApi::class.java)
val user : kotlin.collections.List<User> =  // kotlin.collections.List<User> | List of user object

webService.createUsersWithListInput(user)

Parameters

Name Type Description Notes
user kotlin.collections.List<User> List of user object

Return type

null (empty response body)

Authorization

HTTP request headers

  • Content-Type: application/json
  • Accept: Not defined

Delete user

This can only be done by the logged in user.

Example

// Import classes:
//import org.openapitools.client.*
//import org.openapitools.client.infrastructure.*
//import org.openapitools.client.models.*

val apiClient = ApiClient()
val webService = apiClient.createWebservice(UserApi::class.java)
val username : kotlin.String = username_example // kotlin.String | The name that needs to be deleted

webService.deleteUser(username)

Parameters

Name Type Description Notes
username kotlin.String The name that needs to be deleted

Return type

null (empty response body)

Authorization

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

Get user by user name

Example

// Import classes:
//import org.openapitools.client.*
//import org.openapitools.client.infrastructure.*
//import org.openapitools.client.models.*

val apiClient = ApiClient()
val webService = apiClient.createWebservice(UserApi::class.java)
val username : kotlin.String = username_example // kotlin.String | The name that needs to be fetched. Use user1 for testing.

val result : User = webService.getUserByName(username)

Parameters

Name Type Description Notes
username kotlin.String The name that needs to be fetched. Use user1 for testing.

Return type

User

Authorization

No authorization required

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/xml, application/json

Logs user into the system

Example

// Import classes:
//import org.openapitools.client.*
//import org.openapitools.client.infrastructure.*
//import org.openapitools.client.models.*

val apiClient = ApiClient()
val webService = apiClient.createWebservice(UserApi::class.java)
val username : kotlin.String = username_example // kotlin.String | The user name for login
val password : kotlin.String = password_example // kotlin.String | The password for login in clear text

val result : kotlin.String = webService.loginUser(username, password)

Parameters

Name Type Description Notes
username kotlin.String The user name for login
password kotlin.String The password for login in clear text

Return type

kotlin.String

Authorization

No authorization required

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/xml, application/json

Logs out current logged in user session

Example

// Import classes:
//import org.openapitools.client.*
//import org.openapitools.client.infrastructure.*
//import org.openapitools.client.models.*

val apiClient = ApiClient()
val webService = apiClient.createWebservice(UserApi::class.java)

webService.logoutUser()

Parameters

This endpoint does not need any parameter.

Return type

null (empty response body)

Authorization

HTTP request headers

  • Content-Type: Not defined
  • Accept: Not defined

Updated user

This can only be done by the logged in user.

Example

// Import classes:
//import org.openapitools.client.*
//import org.openapitools.client.infrastructure.*
//import org.openapitools.client.models.*

val apiClient = ApiClient()
val webService = apiClient.createWebservice(UserApi::class.java)
val username : kotlin.String = username_example // kotlin.String | name that need to be deleted
val user : User =  // User | Updated user object

webService.updateUser(username, user)

Parameters

Name Type Description Notes
username kotlin.String name that need to be deleted
user User Updated user object

Return type

null (empty response body)

Authorization

HTTP request headers

  • Content-Type: application/json
  • Accept: Not defined