609 Commits

Author SHA1 Message Date
Thomas Bredzinski
508da12ca7
Add support for asynchronous API for JavaJaxRsSpec (#10919)
* Add support for asynchronous API for JavaJaxRsSpec

https://github.com/OpenAPITools/openapi-generator/issues/4832

* Ran the requested command for a PR

Run the following to build the project and update samples:
./mvnw clean package
./bin/generate-samples.sh
./bin/utils/export_docs_generators.sh

* Set java 8 mode when using supportAsync=true

`CompletionStage` are only introduced since 1.8, enabling async should for use java8

Co-authored-by: Thomas Bredzinski <thomas.bredzinski@gemalto.com>
2022-01-03 09:55:01 +08:00
William Cheng
12e03b1937 Merge remote-tracking branch 'origin/master' into 6.0.x 2022-01-02 15:41:37 +08:00
Vesa Poikajärvi
7ffd0711c3
[typescript-axios] Add option to add NodeJS imports (#10990)
* [typescript-axios] Add new option to generate imports from 'url'

* Added new option `withImportUrl` to be used to generate the imports needed
  for NodeJS support without adding DOM to TypeScript libs

* [typescript-axios] Add withImportUrl support to templates

* Generate imports from 'url' if withImportUrl is set to true

* [typescript-axios] Generate new samples using withImportUrl

* [typescript-axios] Add withImportUrl to documentation

* [typescript-axios] Regenerate docs, build was still ongoing and used old param name

* [typescript-axios] Rename withImportUrl to withNodeImports

* Rename the parameter to support other Node imports
* Add imports for form-data too if using multipartFormData
* Add fix for multipart headers when running in Node with form-data package
2021-12-24 16:49:36 +01:00
William Cheng
e3788ce44e update doc for okhttp-gson-nextgen 2021-12-21 15:48:47 +08:00
Bruno Coelho
c305c71715
[DefaultCodegen] generate unknown default case (#11078)
* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] replace Swift custom implementation with the DefaultCodegen implementation

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] update docs

* [DefaultCodegen] fix Swift enum case name

* [DefaultCodegen] generate unknown default case

* [DefaultCodegen] generate unknown default case
2021-12-21 15:40:13 +08:00
alisters
0de482da2b
Kotlin client: add volley library support (#10253)
* 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>
2021-12-20 14:59:11 +08:00
Josh Burton
6f6d4f8c02
[dart-dio-next] Removes dioLibrary option (#10931)
As there is no longer a fork of the dio library this option can be removed
2021-12-17 10:36:42 +08:00
William Cheng
fbb61658df
[kotlin][client] rename ApiInfrastructureResponse to ApiResponse (#11094)
* rename ApiInfrastructureResponse to ApiResponse

* mark ApiResponse as reserved word

* update samples, docs

* fix typo
2021-12-12 16:32:08 +08:00
William Cheng
550c0781dc
[okhttp-gson-next-gen] new option for error object (#10995)
* add error body and type to api exception class

* add option to specify error object

* add option, update api doc with better error handling

* update samples

* update doc
2021-12-10 02:08:17 +08:00
William Cheng
e00efe7c8d Merge remote-tracking branch 'origin/5.4.x' into 6.0.x 2021-12-07 00:12:13 +08:00
WILLIAM CHENG
1799e9cd12 update doc 2021-12-04 13:18:29 +08:00
Jarrod Parkes
15f45711a8
add swift5 option for generating frozen enums (#11013)
* add swift5 option for generating frozen enums

* use case unknownDefault to avoid conflicts

* update comments to reflect unknownDefault case

* set default values for unknown case to avoid conflict

* dont need vendor extensions to detect enum raw data type

* move CaseIterableDefaultsLast into models mustache template

* comment catch all case and add support for other types

* add frozen enums to ci pipeline

* remove extraneous edit to extensions template

* remove left over protocols files

* small comment and case adjustments
2021-12-04 13:05:51 +08:00
Abrhm7786
6bc7390914
Azure functions (#11020)
* New branch

* Added test class for functions server

* Logger should not be static

* Added csharp-netcore-functions to docs/generators

* Added csharp-netcore-functions to generators.md

* Removes sln and csproj
2021-12-04 13:05:30 +08:00
cghislai
b915ad99a8
typescript-angular: Add supports for v13 (#10877) 2021-12-03 09:10:40 +01:00
William Cheng
b061bd2146
[Java][Okhttp] Add oneOf support (#10875)
* add custom gson deserializer

* add check for additional fields, required fields

* add tests for custom deserializer

* add custom adapter

* add custom adapter

* register type adapter factory

* comment out custom deserializer and use adapter instead

* add okhttp-gson-nextgen

* add new files

* restore okhttp-gson

* switch to adapter

* remove custom de/serializer

* add comment

* update tests

* test nextgen in ci

* update doc

* use full model name in JSON.java

* undo changes

* add oneof discriminator support

* fix anyOf

* remove mappings

* add more tests

* fix oneof deserialization, add more tests

* add error body and type to api exception class

* JSON to use instance variables/methods

* Revert "add error body and type to api exception class"

This reverts commit 07f34e2c450ad9f808b728173018b1e4d8fed458.
2021-11-30 15:33:42 +08:00
Takayuki Matsubara
b7e7c13673
update ruby's default options on document (#10924) 2021-11-27 10:02:14 +08:00
Tal Kirshboim
ae911ff2c1
Support generated gradle module as child module (#10966) 2021-11-27 09:36:19 +08:00
cyangle
8338962deb
[crystal] Add annotation to reserved key word list of crystal lang (#10932)
* add annotation to reserved key word list of crystal

* Update crystal docs
2021-11-23 21:02:49 +08:00
Tomáš Čermák
e5159ef8d5
[Protobuf-Schema] Add numbered field number list switch (#10893)
* [Protobuf-Schema] Add numbered field number list switch

* [Protobuf-Schema] Add numbered field number list switch

* [Protobuf-Schema] Added switch

* [Docs][Protobuf-Schema] Generated docs

Co-authored-by: Tomáš Čermák <cermak@merica.cz>
2021-11-23 10:43:34 +08:00
Tomáš Čermák
c13067d100
[Protobuf-Schema] Add unknown to enum switch (#10892)
* [Protobuf-Schema] Add unknown to enum switch

* [Protobuf-Schema] Bugfix: unique unknown by prefix

* [Protobuf-Schema] Add unknown to enum switch

* [Protobuf-Schema] Bugfix: unique unknown by prefix

* [Protobuf-Schema] Bugfix after merge, format file

* [Docs][Protobuf-Schema] Generated docs

Co-authored-by: Tomáš Čermák <cermak@merica.cz>
2021-11-22 21:57:33 +08:00
Felix Winterhalter
c7bd3aa294
fix: Support Netcore 6.0 (#10634) 2021-11-22 16:56:57 +08:00
WILLIAM CHENG
eb75515715 Merge branch '5.4.x' into 6.0.x 2021-11-21 09:50:47 +08:00
agilob
bd61978b5f
Remove deprecated PhpSilexServerCodegen (#10852) 2021-11-21 09:04:13 +08:00
agilob
535b9e22d0
Remove deprecated TypeScriptAngularJsClientCodegen (#10850) 2021-11-21 09:03:11 +08:00
agilob
42cb72ec74
Remove kotlin-server-deprecated generator (#10851) 2021-11-21 09:02:26 +08:00
basyskom-dege
f596b32316
[Qt][C++] Oauth2 Authorization Code Flow and Implicit Flow Support. (#10183)
* Oauth class with reply server for authorization flow

* multiple scopes. Joined with space seperator

* some refactoring, using urls from the spec

* added implicit flow. Refactored oauth classes.

* added missing {{prefix}} to Oauth class

* added client credentials flow

* added password flow. setVariables for each class

* Refactored variables to fit style. Updated Samples
2021-11-14 23:16:29 +08:00
agilob
53d3c9fc70
Fix tpyo prefered -> preferred (#10807) 2021-11-09 14:31:01 +08:00
topce
edb88d9193
Delete body angular (#10751)
* change isBodyAllowed to return true
for delete method
Add method
isMethodPutOrPatchOrPost

* change templates to use isMethodPutOrPatchOrPost
to be compatible with previous versions,
lubrary mainterners should decide
if want to use isBodyAllowed

* since angular 12.1 delete with body is supported
Change angular typescript to support delete with body if
angular version is >= 12.1
update default  ngVersion to be latest
12.2.12

* generate samples and docs

* ApiClient was OK
revert my changes
2021-11-03 10:46:30 +08:00
Mike Welsh
b117d29729
Allow Spring generated code to use new OAS 3 annotations (#9775)
* Resolve #9774

- Add in `oas3` option for Spring codegen to use newer annotations
- Add `useSpringController` option for Spring codegen
- Use `useSpringfox` to fix some unwanted imports for Spring codegen
- Use `jdk8` to add OffsetDateTime import for models in Spring codegen
- Add `JsonValue` to `enumOuterClass.mustache` to allow enums to be
  generated properly

* Update spring examples

* Update with a clean maven install and regenerate samples

* Remove newling at end of param files and regenerate samples

* Update codegen with merge from master

* Update tests and samples

* Remove #vendorParams from API

* Update generated and tests

* Get closer to master

* Remove SpringFox setter boolean

- Annotation was altered to be fully qualified, doesn't need import
  removed anymore

* Update examples and tests

* FIx pojo.mustache (missed update to master) and regenerate tests

* Fix pojo.mustache extra `(`

* Update tests and documentation

* Update models and documentation

* Handle boolean property correctly

- Use `convertPropertyToBoolean` and `writePropertyBack`

* Fix more @ApiParam usage with @Parameter

- Also replace allowableValues with @Scheme(allowableValues =
`

* Update samples

* Update maven `pom.xml` mustache to use OAS3 annotations

* FIx typo in variable name

* Write back `useSpringfox` property
2021-11-03 00:44:54 +08:00
WILLIAM CHENG
4f2b5ee36d Merge remote-tracking branch 'origin/5.4.x' into 6.0.x 2021-11-01 00:54:44 +08:00
Sergii Baitala
bf77570934
[cpprestsdk] CMake build system improvements (#10660)
* cmake install support

* fix option overriding issue

* fix alignment
2021-10-29 09:58:29 +08:00
William Cheng
5e857e749d
add an option for configKey (#10707) 2021-10-27 15:07:41 +08:00
WILLIAM CHENG
3594b3452d Merge remote-tracking branch 'origin/5.4.x' into 6.0.x 2021-10-25 13:31:12 +08:00
William Cheng
fcef9fab63
update doc for java useAbstractionForFiles option (#10677) 2021-10-24 16:21:28 +08:00
William Cheng
8069d183f3
[Java] Add streaming endpoint support (#9813)
* add streaming endpoint support to java client

* update doc
2021-10-24 16:02:49 +08:00
WILLIAM CHENG
1cd591bf7d update doc 2021-10-24 12:28:46 +08:00
Troy P
91d0e2dad0
(fix #9673) This change introduces a flag to have tests generated under the pythonSrcRoot directory if it's specified. (#9674)
This change also introduces AssertJ as a new dependency.
2021-10-24 12:22:18 +08:00
WILLIAM CHENG
e85c67edc7 Merge remote-tracking branch 'origin/master' into 6.0.x 2021-10-22 09:17:23 +08:00
AlexMog
c16562995b
fix: missing typescript local variable name 'from' (#10587)
Co-authored-by: Alexandre Moghrabi <alexandre.moghrabi@circular.xyz>
2021-10-19 21:45:08 +02:00
William Cheng
730636ad31 Merge remote-tracking branch 'origin' into 6.0.x 2021-10-19 12:55:59 +08:00
Dennis Melzer
12d80bfbb5
Fix import for new spring boot version (#9144)
* Fix import for new spring boot version

#8561

* Add new versions

* Fix samples

* Remove unused dependencies

* Revert "Remove unused dependencies"

This reverts commit bdac08b80a64b74affec2cea71b524fcd87a4c1b.

* Add version

* Fix version

* Add hystrix note this depcreated

* Migrate to Junit5

* Trigger build

* Add junit5

* Upgrade to new hystrix starter

* Try to enable hystrix

* Remove hystrix and upgrade to boot 2.5.5

* Remove hystrix

* Revert yaml

* Remove hysterix

* Trigger build

* Update docu

* use 4-space instead of tabs

* remove HystrixCommand

* add back spring-cloud test with oas 3.0 spec

* update samples

Co-authored-by: William Cheng <wing328hk@gmail.com>
2021-10-13 15:29:14 +08:00
agilob
77b72bd0ee
Dart json_serializable: remove experimental generator (#10532) 2021-10-12 16:07:23 +08:00
agilob
c2186a0b0d
Flash: remove (#10535) 2021-10-09 15:51:45 +08:00
William Cheng
96c65fea61
[Java] add an option to customize gradle.properties (#10540)
* add an option to customize gradle properties

* add more info to gradle.properties
2021-10-08 11:20:50 +08:00
agilob
5b1b74e48d
Dart-jaguar: remove (#10534) 2021-10-08 10:47:17 +08:00
Josh Burton
f5e8f54b21
[dart-dio-next] Adds an option for using the dio_http package (#10497)
* [dart-dio] Adds an option for using the dio_http package

Relates to #10305

* [dart-dio-next] Generates new dio_http sample

* [dart-dio-next] renames dio_http sample, adds pom.xml

* [dart-dio-next] Removes executions not required
2021-10-05 14:03:48 +08:00
Heikki Haapala
755359c031
[typescript-axios] Fix model property naming (#10447)
* fix: typescript-axios property names

Disables MODEL_PROPERTY_NAMING for typescript-axios generator as this
was never supported (templates have no mapping between original property
names and formatted names). Wraps all properties in model interfaces
with '' to support most characters except ' for now. Also fixes missing
options typing that was any before.

* chore: add new sample, generate samples

* chore: update generator docs
2021-10-02 08:06:29 +02:00
William Cheng
c9047a6faa
[php] enhance type mapping (#10457)
* map BigDecimal to float

* enhance type mapping in php generators

* update tests

* update doc, samples

* remove primitive types from phpdt, mezzio
2021-09-25 12:09:34 +08:00
Bruno Coelho
7c133be617
[swift5][client] add support for async await (#10442)
* [swift5][client] add support for async await

* [swift5][client] disable CI for the async await sample project temporarily
2021-09-23 10:53:57 +08:00
Aleksandr Nekrasov
ef0186c9cf
[scala] Fix Array[Byte] type for Openapi type string format byte (#10426)
* [scala] fix byteArray mapping in AbstractScala

* fix testng framework instead of junit for sttp codegen

* regenerate scala examples

* regenerate docs and examples

* fix test
2021-09-21 12:15:49 +08:00