* Add useResponseAsReturnType option to kotlin, jvm-retrofit2 and coroutines api template (#15491)
* Add useResponseAsReturnType flag to kotlin-jvm-retrofit2-coroutines.yaml sample
* Generate sample
* [Kotlin] Properly document nonPublicApi CLI option
* [Kotlin] Respect parameter name of parent KSerializer to avoid miss-behavior
* [Kotlin] Introduce support for Kotlin Explicit API Mode for Kotlin-Client generator (resolves#16506)
* [Kotlin] Add a new additional property to configure Jackson's `failOnUnknownProperties`
Default to false
* [Kotlin] Unconditionally import `com.fasterxml.jackson.databind.DeserializationFeature`
* [Kotlin] Refactor and add test
* [kotlin] Enum should match spec
Adjust the enum generation to match what is in the spec, rather than
camel-casing it.
Add tests for capitalization scenarios, including for kotlin keywords
* [kotlin] export docs generators for enum change
* [kotlin] export docs generators for enum change
* fix conflicts
---------
Co-authored-by: Tyler B. Thrailkill <tylerbthrailkill@gmail.com>
Co-authored-by: Jari Nystedt <jari.nystedt@tietoevry.com>
* Bumped kotlin spring-jvm-webclient spring boot version from 2.7.11 to 3.1.0
* Do not redefine HttpHeaders and MediaType for simpler code
* Added a simpler constructor to the api and simplified encodeURIComponent
* Added support for Spring Boot 3 in kotlin-client jvm-spring-webclient generator
* Fixed small syntactical regression in Kotlin client build.gradle
* Added library 'jvm-spring-webclient' to Kotlin client generator
* Reran all generators and generated docs
* Changed target of kotlin-jvm-spring-webclient sample from 2_0 to 3_0
* Added build of kotlin-jvm-spring-webclient to github workflow
* Initial version of Kotlin Vert.x client
* Initial version of Kotlin Vert.x client
* Initial version of Kotlin Vert.x client
* Fix for parseDateToQueryString issue in vert.x kotlin client
* Moved common methods from api to ApiClient in kotlin vert.x client
* Fixed issue with absolute URLs
* bearer auth for oauth
* empty request headers fix
* missing import and typo
* added uri template dependency
* added api abstractions to client generator
* added full import form infrastructure
* removed fail on unknown properties to response body parsing
* fixed error response parsing
* replace vertx client name to more unique
* multiline content type
* optional responses added to template
* additional annotations for kotlin client
* Added additionalModelTypeAnnotations parameter support to AbstractKotlinCodegen
* Updated samples and documents
* Fixed issues with gson and moshi serializers with kotlin-jvm-vertx client
* Added sample configs for kotlin-jvm-vertx clients with gson, jackson and moshi
* Added samples for kotlin-jvm-vertx clients with gson, jackson and moshi
* Included kotlin-jvm-vertx samples to test build
* Updated samples
Co-authored-by: Katja Danilova <katja.danilova@protonmail.com>
* Idea plugin for marking source directories, and omitting gradle wrapper for creating sub projects
* Register the omitGradleWrapper option
* Added missing idea option
* Adds UUID to python-exp, allows uuid models to be generated
* Adds test_UUIDString uuid model test
* Fixes uuid properties in python-exp, changes maps to object data type, adds uuid data type
* Adds maps data type back in
* Adds missing Null and AnyType definitions and adds them to python-experimental
* Generator docs updated, added missing uuid, null, anytype, and object
* Adds uuid support description
* Docs updated
Obvious typo in the kotlin help description of the
`supportAndroidApiLevel25AndBelow` configuration parameter i.e.
`in oder` instead of `in order`.
Co-authored-by: Slawomir Kwasniak <slawomir.kwasniak@hensoldt-cyber.de>
* Revert "Revert "Has generators set default template engine (#11245)" (#11316)"
This reverts commit 57987424a4eaa22d73337388489cd86d7f42a023.
* Only loads in the default template engine if the config file contains the generatorName
* Only sets templatingEngineName using condif default in one place
* Adds config files that lack generatorName
* Revert "Adds config files that lack generatorName"
This reverts commit 7dafc93c0f02c037d9be5d2c0a3ee7377c8b479d.
* Adds generator default templating engine to the generator metadata
* Adds generatorLanguageVersion and uses it in python generators
* Regenerates docs
* Adds stability to generator docs
* Triple braces generatorLanguageVersion
* Regenerates samples
* Fixes the python-experimental setup.py file so it works with generatorLanguageVersion
* Updates generators readme
* Refactors generator md creation, adds generateMdMetadata
* Removes extra space
* Adds docs updates
* Fixes table definition for metadata
* Docs update
* Docs update
* Updates title, removes sidebar_label because it was not doing anything on pages like https://openapi-generator.tech/docs/generators/android
* Docs updated
* 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>
* Bump jimschubert/query-tag-action from 1 to 2
Bumps [jimschubert/query-tag-action](https://github.com/jimschubert/query-tag-action) from 1 to 2.
- [Release notes](https://github.com/jimschubert/query-tag-action/releases)
- [Commits](https://github.com/jimschubert/query-tag-action/compare/v1...v2)
Signed-off-by: dependabot[bot] <support@github.com>
* Adjust spacings, bring back suppresses to silence IntelliJ IDEs.
* Suppress few warnings since we know we are using them in the code.
* toLowerCase() is deprecated.
* Wrap enum values in backticks to guard against reserved names, bring back encode/decode for each enum.
* Wrap property names in backticks to guard against reserved names.
* Regenerate samples.
* Do not warn about unused imports.
* Regenerate samples.
* Updated petstore code.
* Add missing reserved Kotlin operators and special keywords.
* Revert adding backticks.
* Regenerate pet store shop code.
* Remove unused suppression.
* Use 3 braces to wrap name.
* Regenerate pet store shop code.
* Remove get from reserved words.
* Revert back removal of description.
* Regenerate source code for Petstore.
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Update Kotlin Multiplatform with Kotlin 1.5.10, Ktor 1.6.0 and Kotlinx.serialization 1.2.1
* remove @Serializable from interfaces
* Using 'String(CharArray): String' is an error. Use CharArray.concatToString() instead
* Fix, RequestConfig needs a type to infer type variable T
Fixes from @DevSrSouzaern
* Fix `private` keyword not being handle as a reservedWords
* Fix enum serialization generation
* Migrate gradle build to Kotlin DSL
* update samples and documentation
* PR Review changes
* sample update
* revert non multiplatform kotlinx_serialization removal
* default Json{} in ApiClient
* revert accidental version push for jvm client
* Match ktor and Kotlinx Serialization version in documentation and build.gradle.kts
* remove const from JSON_DEFAULT
* Update AbstractKotlinCodegen.java
Co-authored-by: Gabriel Souza <devsrsouza@gmail.com>
Co-authored-by: ern <ern@ti8m.ch>
* [kotlin][client] fix Android crash on API level
* [kotlin][client] update sample project
* Try to fix CI
* [kotlin][client] add flag to control android api level supported
* [kotlin][client] update docs
* [kotlin][client] update docs
* added rx3 support
* fix rx3 support
* generated samples
* updated samples
* update samples
* changed rxjava3 adapter to the one from squareup
* changed dependency of RxJava3CallAdapterFactory
Co-authored-by: William Cheng <wing328hk@gmail.com>