* Add basic jvm-volley folder to enable it as a library * Add JVM_VOLLEY to the KotlinClientCodegen as a library option (using Retrofit2 processing for now) * Temporary checkin of generated code and kotlinfied version for use in new template * Added Kotlin-ified api invoker and request objects, update Kotlin client codgen for volley * Add Android specific build.gradle mustache file to jvm-volley library * Hardcode SDK version and build tools version in build.gradle template, add extra repository for Android Gradle build tools * Add Android manifest to generated code * Add Kotlin dependencies and plugins to build gradle template * WIP: Create basic API templating for jvm-volley * Add ApiException and parameter validation, create path variable using ApiInvoker * Build queryParams and headerParams * Add VolleyRequest template * WIP: Injecting context and default API invoker into APIs (non compiling) * Add DefaultInvoker stub and update API to inject context * Add request queue generation to the DefaultInvoker * Fix up compile errors in the invoker * Cleanup unrequired templates * Update templates * Add constructor overloads to inject stack or network into request queue * Fix compile errors with request queue generation * Fix compile errors * Al'll fix it for you..... * WIP compile fixes * More compile fixes * Generate to java directory and kotlin-ify auth code * More syntax fixes in templates * Almost left it in a working state, fixing that .... now... * Switch builder method based on model existence constraints - body and response * Add coroutine logic to APIs and pass through listeners to the requests, various other fixes. * Use reflection and type tokens to work around clazz issues on generics * Add POST, PATCH and PUT to RequestFactory * More templating magic * Fix Steve, the human compiler's errors again ! * Add CLI option for generating room models * Configure the room model package * Add initial room model templating and generation * Add room model generation implementation * Implement toRoom function on models to convert model to room model * Bug fixes, transformers to and from room models * Add query parameters to URL generation * Fix issues with gson type conversion, add type adapters to gson instance * Fix issues with older API versions and Java8 libraries, * Add request factory interface * API template tidy up * Update IRequestFactory to include companion object, minor tidy ups * Remove @Keep annotations from room templates * Rename toRoomModel and toApiModel functions * Add empty companion object to generated room model * Add ITransformStorage interface to allow polymorphic transforms to room models * Add content type into GsonRequest * Move gson serialization of request body into GsonRequest * Update request factory to take header factories * Remove the generated comparision code * Move the generateRoomModels switch into the KotlinClientCodegen class * Move room model generation out of default generator * Updates for auth * Finalise removal of kotlin elements from default generator * Hoist room model logic out of abstractKotlin into kotlin client codegen * Revert AbstractKotlinCodegen * Revert Codegen constants to remove base generator changes out of our new library * Revert data class template changes, add data class body check to Kotlin Client codegen * Add sample generation yaml file for jvm-volley library * Update JVM-Volley readme for generateRoomModels flag * Remove unused template files, get auth compiling but non functional, clean build of warnings * Generate sample generated code * Add not implemented method for oauth * Add unit test for KotlinClientCodegen generateRoomModel flag * Remove accidental hard coding of src/main/java source folder * Push changed generated sample files * Move and rename IStorable inside the volley library * Inject retry policy into API definition, re-run sample and doc scripts * Add generic post processors * Update samples after generator changes * Fix some compile errors with the pet store sample * Fix duplicate auth companion object and import generation * Reinstate query and form parameter code generation * Add check for unsupported serialization libraries * Fix broken unit tests * Regenerate samples * AN-233 Update request factory to allow custom gsonadapters * update `GsonRequest.mustache` and `RequestFactoy.mustache` to use `Map<Type, Any>` instead of `Map<Type, Object>` to better fit kotlin conventions * Update readme with better examples and design notes * Update readme with info about gson serializers and adapters for polymorphic types * Updated samples * Merge from upstream * Address review comments * Update samples * Samples * Update docs * Remove DateAdapter generated file, template and it's inclusion as a supporting file in favour of localDateTime * Review comment cleanup for initial PR #10253 - cleaner auth key in parameter string handling * Review comment - add a kotlin version parameter to the build scripts * Updated samples * Missing changes from build.mustache * Regenerate samples for build.gradle changes * Merge from master and generate samples * Remove serializer as a supporting file from jvm-volley - it's serialisation is not a singleton and configured differently via gson request and dependency injection * Remove singleton serializer from jvm-volley generation as it's not used Co-authored-by: Alister Shipman <alister.shipman@greater.com.au> Co-authored-by: Steve Telford <steven.telford@greater.com.au> Co-authored-by: Leigh Cooper <leigh.cooper@greater.com.au> Co-authored-by: Michael Hewett <y2trooper@gmail.com>
7.4 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 body : User = // User | Created user object
webService.createUser(body)
Parameters
Name | Type | Description | Notes |
---|---|---|---|
body | User | Created user object |
Return type
null (empty response body)
Authorization
No authorization required
HTTP request headers
- Content-Type: Not defined
- 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 body : kotlin.collections.List<User> = // kotlin.collections.List<User> | List of user object
webService.createUsersWithArrayInput(body)
Parameters
Name | Type | Description | Notes |
---|---|---|---|
body | kotlin.collections.List<User> | List of user object |
Return type
null (empty response body)
Authorization
No authorization required
HTTP request headers
- Content-Type: Not defined
- 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 body : kotlin.collections.List<User> = // kotlin.collections.List<User> | List of user object
webService.createUsersWithListInput(body)
Parameters
Name | Type | Description | Notes |
---|---|---|---|
body | kotlin.collections.List<User> | List of user object |
Return type
null (empty response body)
Authorization
No authorization required
HTTP request headers
- Content-Type: Not defined
- 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
No authorization required
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
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
No authorization required
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 body : User = // User | Updated user object
webService.updateUser(username, body)
Parameters
Name | Type | Description | Notes |
---|---|---|---|
username | kotlin.String | name that need to be deleted | |
body | User | Updated user object |
Return type
null (empty response body)
Authorization
No authorization required
HTTP request headers
- Content-Type: Not defined
- Accept: Not defined