Compare commits

..

262 Commits

Author SHA1 Message Date
Justin Black
109808e60d [Python] Adds new client generator, python-experimental (#3244)
* Adds python-experimental generator

* Adds python-experimental samples folder which uses its own v2 spec

* Adds enusre-up-to-date updates

* Removes samples/client/petstore/perl/t/AnotherFakeApiTest.t

* Removes comment line from python-experimental generator

* Reverts perl docs file

* Updates perl sample client

* Adds python-experimental to pom.xml

* Copies the python test foldeers tests and testfiles into python-experimental

* Copies python test folder into python-experimental

* Moves python testing from Travis (samples pom.xml profile) to Circlci (samples.circleci pom.xml profile)

* Adds python-experimental pom.xml

* Adds python-experimental makefile and .sh files

* Chenges python-experimental to use gitignored venv rather than .venv which is not ignored when testing

* Adds dev-requiremnts.txt and removes .travis.yml from python-experimental so CI tests will pass

* Moves python-experimental from CicleCI to Travis to get support for multiple python environments

* Updates generator java comment so CI tests will run over again
2019-07-06 22:43:29 +08:00
Nathan Broadbent
78551d0180 Set error_reporting(E_ALL) in phpunit.xml settings, to crash on undefined variables (#3266)
* Set error_reporting(E_ALL) in phpunit.xml settings, so that undefined variables will always cause a test failure

* Update petstore sample for php-laravel
2019-07-06 22:21:41 +08:00
William Cheng
fa10103363 comment out python flask tests 2019-07-06 00:22:36 +08:00
William Cheng
e9809294a5 update travis, support java9+ (#3279) 2019-07-05 23:32:10 +08:00
Balázs Zsoldos
bd17a15572 Avoid nullsafe errors in typescript-rxjs runtime.ts (#3255)
* #3253 Avoid nullsafe errors in typescript-rxjs runtime.ts

* #3253 Updating samples
2019-07-05 18:42:30 +08:00
Prateek Malhotra
90bd90c41a [Typescript][Fetch] switch to vars from allVars in model JSON conversion functions (#2899)
Signed-off-by: Prateek Malhotra <someone1@gmail.com>
2019-07-05 18:22:07 +08:00
William Cheng
441f6327d9 Update R technical committee (#3284) 2019-07-05 15:49:19 +08:00
William Cheng
0b79c5b6be Add new Go client (experimental) generator (#3268)
* add new go experimental generator

* extends go client codegen

* add go samples and test

* comment out haskell client test
2019-07-04 22:56:49 +08:00
William Cheng
65fdce7036 Merge branch 'master' of https://github.com/OpenAPITools/openapi-generator 2019-07-04 22:50:02 +08:00
William Cheng
1e380850c0 update doc 2019-07-04 22:49:15 +08:00
William Cheng
267c9bdcf8 Add a link to Japanese eBook (REST API のためのコード生成入門 (OpenAPI Generator)) (#3280) 2019-07-04 22:24:35 +08:00
Jérémie Bresson
8d27857f83 [core] consider content in parameters and headers when computing unused schemas (#3243)
* [core] consider content in parameters and headers when computing unused schemas

* consider parameters in PathItem
2019-07-04 20:47:24 +08:00
Matthew Cachia
cbca86b43a Add unhandledException to 'spring' generator, which declares all operation methods to throw a generic exception, allowing implementations to unhandle checked exceptions. This is useful whenever it is unnecessary to handle specific exceptions and, more importantly, allow generic constructs (eg. Spring @ControllerAdvice) to tackle unhandled exceptions from a single point (for instance, tackle all unhandled exceptions as an HTTP500 while excluding the stacktrace in the response body). (#2482) 2019-07-04 20:19:40 +08:00
Kevin Locke
2c342cc2b4 [Java] Handle discriminator mapping non-ref name (#3247)
The `mapping` property of the [Discriminator Object] is "An object to
hold mappings between payload values and schema names or references."
The subsequent examples in the spec have `mapping`s of both types.
The `mapping` support introduced in #536 only supports references.

Update the code to support names (identified by lack of `/`) or
references and change a test mapping to cover this case.

[Discriminator Object]: https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#discriminatorObject

Signed-off-by: Kevin Locke <kevin@kevinlocke.name>
2019-07-04 15:24:47 +08:00
Josh Burton
310f5feda0 [dart-jaguar] Makes converters publicly accessible so they can be used serialization/deserlization outside of the API client (#3245) 2019-07-04 15:13:23 +08:00
Ramanth Addala
0cb921251d feat(r): Added handling exception with ApiException class and better documentation (#3217)
* feat(r): Added handling exception with ApiException class and document generation

* feat(r):enhancements to exception handling and documentation

* fix(r): fixes and reverting the man folder

* fix(r): minor fix of import statement

* fix(r): generated the docs file

* fix(r) minor doc casing fixes
2019-07-03 22:05:21 +08:00
Matthias Neubert
dda2f3c141 Update README.md (#3273)
Added DB Systel as a company using OpenAPI-generator
2019-07-03 18:38:06 +08:00
Marc Etter
95ba9525f9 [elm][haskell-servant] Fix issue 3256 (#3262)
* [elm] fix empty operation exception (#3256)

* [haskell-servant] fix empty operation type (#3256)

* [elm][haskell-servant] update samples
2019-07-03 18:07:21 +08:00
William Cheng
35262aa7d1 move openapi 3 samples to the correct folder (#3267) 2019-07-03 13:18:52 +08:00
steco
b44f6c302a Update DefaultCodeGen to allow additional primitive types (#2799)
* Update DefaultCodeGen to allow additional primitive types

If a string field is specified with a format which is also defined using
--typeMappings, it will be treated as a primitive type

* Fixed typo in android-petstore-httpclient.bat
2019-07-03 09:12:38 +08:00
Jim Schubert
1fc7740f2e [online] Honor generator environment variable and system property (#3265)
Previously, this pulled from the GENERATOR_HOST system property. This
should have been an environment variable. Fallback is now generator.host
system property.
2019-07-02 13:07:17 -04:00
Jim Schubert
b87806834b [online] Honor GENERATOR_HOST env variable (#3263)
This sets "host" appropriately to the published host when GENERATOR_HOST
is configured.
2019-07-02 09:15:18 -04:00
William Cheng
4e62e92daf update doc 2019-07-02 17:17:57 +08:00
Jan Willem Harmelink
c012dcd754 Added RxJava2 to java-vertx server codegen. (#3240) 2019-07-02 16:46:02 +08:00
Thibault Duperron
dd0c2a84ee Check classVarName against reserved keywords (#3079)
Must fix #1831 and #13
2019-07-02 16:40:36 +08:00
Jérémie Bresson
40a293dcda Update to swagger-parser to 2.0.13-OpenAPITools.org-2 (#3239)
* Update to swagger-parser to 2.0.13-SNAPSHOT

* Update samples

* Update swagger-parser to 2.0.13-OpenAPITools.org-2
2019-07-02 16:37:41 +08:00
Michael Petö
1730a4efce Fix typo in javascript generator template (#3249)
* Fix typo in javascript generator template

* Update sample client
2019-06-30 12:07:49 +08:00
Jim Schubert
3e5e82460f [online] Apidocs ui (#3229)
* [online] Use rapidoc UI for api documentation
2019-06-29 20:30:45 -04:00
Mateusz Szychowski (Muttley)
731b162942 [C++][Pistache] Fix warnings (#3238)
* [C++][Pistache] Fix warnings

Remove unecessary semicolon (Wpedantic)
Remove unused parameter name (Wunused-parameter)

* [C++][Pistache] Update Petstore sample
2019-06-28 19:21:01 +02:00
Thiago Arrais
e46bd7dd18 [go] Serialize multipart array of complex objects as JSON (#2965)
* Serialize multipart array of complex objects as JSON

* Update sample client

* Update sample client
2019-06-28 23:14:13 +08:00
wing328
51014839fd add new perl file 2019-06-28 18:00:48 +08:00
Jérémie Bresson
23e63dccfa [java-client][okhttp-gson] support bearer authentication (#3236) 2019-06-28 17:55:51 +08:00
Sai Giridhar P
6578cef260 [python] : Make example code snippet compilable (#3148)
* feat(python): Making example compilable

* feat(python): Updating pet project

* feat(python): Updating comments

* feat(documentation): Fixing comments style

* feat(documentation): Updating documentation

* feat(documentation): Fixing comments style
2019-06-28 17:53:25 +08:00
wing328
a41448ab9c update perl petstore samples 2019-06-28 16:34:17 +08:00
Rainer Hermanns
3a1b29b90c Added special handling for 'string' types with format 'uri' (OpenAPITools#3160) (#3161)
- implemented Kotlin
- implemented Java

Fixes OpenAPITools#3160
2019-06-28 09:48:41 +08:00
Roman Müller
73966a0152 [KOTLIN Spring] add interfaceOnly option (#3050)
* move template definition to processOpts()

* add interfaceOnly option for kotlin-spring

* add template for interface only option
2019-06-27 12:23:50 -04:00
Mark Oude Veldhuis
325ed4b72e If a parameter is a date, format it as YYYY-MM-DD (#3218) 2019-06-27 08:09:38 +02:00
wing328
35a6f9d6e6 remove corrupted files 2019-06-27 12:12:44 +08:00
wing328
6c9fefa7b5 update doc 2019-06-27 10:47:05 +08:00
Mateusz Szychowski (Muttley)
68a5fa4c8b [C++][Pistache] Catch exception instead of runtime_error (#3225)
* [C++][Pistache] Replace runtime_error with std::exception

* [C++][Pistache] Update Petstore sample

* [C++][Pistache] Fix catch-value warning
2019-06-26 19:13:54 +02:00
DanielHabenicht
7af2bc8dff add link to the "new-generator" guide (#3227)
* add link to the new--generator guide

* Update CONTRIBUTING.md
2019-06-26 17:57:24 +02:00
William Cheng
f41cd234d9 Fix release table in the readme (#3221) 2019-06-26 22:09:16 +08:00
William Cheng
c1771c94bd Add template creator: C# ASP.NET Core 3.0: @A-Joshi (#3213) 2019-06-25 19:23:49 +08:00
Thibault Duperron
01f991a034 Fix inheritance with modelPrefix (#3151)
* Fix inheritance with modelPrefix

Fix #3150

* Fix typo
2019-06-25 14:46:19 +08:00
Amit Joshi
94c583b6ce [aspnetcore]: Preliminary support for ASP.NET 3.0 Core preview 5 (#2824)
* First set of fixes to support ver 3.0, useswashbuckle does not work yet

* Fix swashbuckle issues iwth aspnetcore 3.0

* Use default routing for 2.2 and turn off default for 3.0

* fix up documentation

* PR Feedback and wrong name in mustache file

* Fix for 2.1 usage too

* Change isFramework to useFrameworkReference as name to make thngs explicitly clear. Also fix small messages for the review comments

* Make JSON.NET version configurable

* Activate endpoint routing and use camel case NamingStrategy

* Make Newtonsoft version configurable to match ASP.NET Core preview 5

* Fix spelling of an option, remove a duplicate call and update docs
2019-06-25 14:40:05 +08:00
William Cheng
fe8dd343a8 Remove Jean from the core team in the public website (#3212) 2019-06-25 14:25:45 +08:00
Tomasz Prus
5b9283beca feat: configurable limit of simultaneous connections (python/asyncio) (#3200)
* feat: configurable limit of simultaneous connections (python/asyncio)

* fix: remove unused import (python/asyncio)
2019-06-25 14:13:43 +08:00
Ramanth
f681764067 [R] feat(r): Inclusion of useragent, timeout and serialization (#3084)
* feat(r): Inclusion of useragent timeout and serialization

* fix(r): fixing name of timeout parameter

* fix(r): fixing unit tests

* fix(r): fixing minor issues

* fix(r): updated r petstore batch command

* fix(r): minor unit test fix

* fix(r): refactor of useragent passing and other minor
2019-06-25 14:12:13 +08:00
Bernd
9518e2a02e [typescript-rxjs] refactor to arrow functions and short hand object creation (#3077)
* feat(typescript-rxjs): change BaseAPI to arrow functions, use shorthands where possible

* feat(typescript-rxjs): replace null checking with throwIfRequired helper function in api controllers

* feat(typescript-rxjs): use shorthand syntax for object creation of query and header params

* feat(typescript-rxjs): provide fallback for previously exported RequiredError and querystring

* refactor(typescript-rxjs): change order of query and headers definition

* feat(typescript-rxjs): regenerate samples

* fix(typescript-rxjs): missing closing curly

* fix(typescript-rxjs): add condition to prevent undefined parameters in header or query params
2019-06-25 12:04:40 +08:00
Johan Brandhorst
2b55413371 [Go][Client] Use configured Scheme and Host in requests (#3115)
* [Go][Client] Ensure test errors don't crash

Previously we did not interrupt execution of a test case
when an error was returned from an API call. This was
causing the tests to crash as soon as we try to
dereference the response.

We now fail the tests as soon as the first API error
is received.

* [Go][Client] Use configured Scheme and Host in requests

Previously we were simply setting the Host header and
completely ignoring the configured scheme.
2019-06-25 12:02:20 +08:00
William Cheng
74c569ebf8 Make sure Perl client samples are up-to-date (#3207)
* Make sure Perl samples are up-to-date

* update perl samples
2019-06-25 10:34:44 +08:00
Jim Schubert
3ee76a0662 [core] Initial implementation of a validation framework in core (#3183)
* Initial implementation of a validation framework in core

* Print surefire summary (helps evaluate errors)

* Bump versions: surefire plugin,jmockit

* Depend on jmockit within maven-surefire-plugin which requires it
2019-06-24 18:24:50 -04:00
Jim Schubert
6b428d65f6 Release versioning helper script(s) (#3110)
* Release versioning script with marker tags.

Introduces bump.sh which supports moving from version to version but
only within delimiting marker tags in the target file.

This script currently doesn't do validations or anything fancy.

* Allow bumping version according to type (major,minor,build,revision)

* bump.sh will display error if file contents are unchanged
2019-06-24 18:22:10 -04:00
Chris Couzens
034064be4c Ruby-client: Don't encode slashes if strict-spec false (#3204)
URL-special characters such as /,?,% should be encoded when inside path
parameters. I changed the Ruby-client to do so.
https://github.com/OpenAPITools/openapi-generator/pull/3039

Unfortunately, some projects relied on slashes not being expanded within
path paramters:
https://github.com/OpenAPITools/openapi-generator/issues/3119

With this commit, these projects can now pass `--strict-spec false` to
not have / converted to %2F.

strict spec not specified: / -> %2F
--strict-spec true: / -> %2F
--strict-spec false: / -> /
2019-06-25 00:30:00 +09:00
Michal Foksa
4ac33d80f0 [openapi-yaml] Config option outputFile was ignored by the generator. (#3199) 2019-06-24 16:58:38 +02:00
Mathieu Debove
06cfdbbdc6 Add missing javax dependencies for Java > 8 (#3188)
* Add missing javax dependencies for Java > 8

* update spring petstore samples
2019-06-24 21:42:49 +08:00
wing328
55ae485fd0 update kotlin samples 2019-06-24 21:01:36 +08:00
William Cheng
38008e669e Minor fix to presentation link 2019-06-24 14:42:01 +08:00
Thibault Duperron
a882e4b3a5 Add Flow import to kotlin spring reactive (#3107)
* Add Flow import to kotlin spring reactive

* Add runBlockingTest to api tests

* Add kotlin-springboot-petstore-server-reactive.sh to ensure-up-to-date

* add reactive check for  runBlockingTest

* Samples
2019-06-24 14:26:30 +08:00
Thibault Duperron
1d8c9dcc0b Ktor Fix KtorExperimentalAPI import (#3108)
* Ktor Fix KtorExperimentalAPI import

Fix #2967

* Samples
2019-06-24 14:23:22 +08:00
William Cheng
038afd6650 Add a link to the speaker deck at Kubernetes Contributor Summit (#3205)
Add a link to the speaker deck at Kubernetes Contributor Summit
2019-06-24 14:00:18 +08:00
Sai Giridhar P
2773b32c36 [csharp] Adding http response details on api_docs and making example snippet compilable (#3129)
* feat(csharp): Adding http response details

* feat(csharp): Updating pet project

* feat(csharp): Updating pet project

* feat(csharp): Updating pet project

* feat(csharp): Updating pet project

* feat(csharp): Updating pet project
2019-06-24 11:35:52 +08:00
Sai Giridhar P
a038fcc9c8 [java][jesery2]: "InjectionManagerFactory not found" issue (#3153)
* feat(java-jersey2): Fixing InjectionManagerFactory issue

* feat(java-jersey2): Update pet project
2019-06-24 11:33:57 +08:00
Martyn Garcia
f6c738ed9e Add #send to ruby reserved word list (#3146) 2019-06-22 01:33:16 +09:00
Thibault Duperron
e3fe12eacf Merge java8 doc for spring (#3122)
fix #3117
2019-06-21 22:13:19 +08:00
MBcom
1540ae7951 added api key authentication to aspnetcore 2.1 (#3089)
updated samples
2019-06-21 21:54:08 +08:00
William Cheng
b6bb13b93c Add "yue9944882" to Perl technical committee (#3194) 2019-06-21 21:52:35 +08:00
Sai Giridhar P
2a5af92cdf [csharp-netcore]: Adding http response details in api_docs and making example snippet compilable (#3128)
* feat(csharp-documentation): Improving documentation and example

* feat(csharp-documentation): Updating pet project

* feat(csharp-documentation): Minor updates

* feat(csharp-documentation): Updating pet project

* feat(csharp): Updating pet project

* feat(csharp-netcore): Updating pet project
2019-06-21 21:09:13 +08:00
Min Kim
b9451e91af generate travis configuration (#3193) 2019-06-21 21:01:23 +08:00
Min Kim
0e2eed6892 Perl: Basic bearer auth support (#3192)
* bearer token support

* [generator] running scripts
2019-06-21 18:32:11 +08:00
Ramanth
46c18ad4dd [R] feat(r) : Alternate PR for serialization fixes along with WithHttpInfo method enhancement (#3099)
* feat(r): fixing serialization and deserialization issues

* feat(r): pet store file generated with serialization fixes

* fix(r): updated the query params with keyname in get request

* fix(r):fix issue with package name and other minor

* fix(r): fixing unit tests

* feat(r): adding api calls WithHttpInfo method

* fix(r): reverting unit test changes

* feat(r): saving changes for reference

* Revert "feat(r): saving changes for reference"

This reverts commit 0d091b5c20.

* feat(r): minor refactor of method position

* fix(r): fixing bug in withhttpinfo method args passing

* fix(r): generated petstore with fix
2019-06-21 16:38:32 +08:00
William Cheng
8e0dc2f150 improve release checkout script (#3184) 2019-06-21 10:56:22 +08:00
William Cheng
8e11fd9fe4 Prepare 4.0.3-SNAPSHOT (#3185)
* update version to 4.0.3-SNAPSHOT

* update readme

* update gradle, maven plugin

* update release schedule

* update samples
2019-06-20 18:50:49 +08:00
William Cheng
fae9d4a37b 4.0.2 release (#3181)
* remove snapshot version

* update stable version

* remove build.gradle sample from relesae script
2019-06-20 12:39:15 +08:00
Rhuan
93edd7650b Fix rubocop obsolescence (#3175)
* Update obsolete rubocop configuration

* Update obsolete rubocop config

* Update obsolete rubocop config
2019-06-20 01:50:29 +09:00
William Cheng
4ead766b9e Add Fuse to the company list (#3164)
Add Fuse to the company list
2019-06-18 16:45:13 +08:00
Michael Edwards
242d296082 Idiomatic Rust returns for Error conversions (#2812)
* Idiomatic Rust returns for Error conversions

* Regenerate Rust samples
2019-06-14 09:26:36 +01:00
sunn
a864ae90de Add API timeout handling (#3078) 2019-06-12 20:16:12 +02:00
Thibault Duperron
314f18a2c1 Import inner items for map (#3123)
fix #3094
2019-06-09 11:56:22 +08:00
William Cheng
d86f3edc73 update core team in pom.xml (#3126) 2019-06-09 11:48:13 +08:00
Jim Schubert
ab9facd905 [gradle] Document consuming via gradle plugin portal (#3125) 2019-06-08 14:20:48 -04:00
Akihito Nakano
2a5a272300 Bump up babel-cli version to fix security alert (#3121)
* Bump up babel version

* Update samples

bin/javascript-flowtyped-petstore.sh

* The dependency `babel-preset-react-app` requires `NODE_ENV` or `BABEL_ENV`

* Run `env BABEL_ENV=development npm run build` to update the samples
2019-06-08 22:12:13 +08:00
sunn
6c98046ee6 [C++] [cpprestsdk] Add examples and test for cpprestsdk (#3109)
Add examples and test for cpprestsdk
2019-06-07 23:37:49 +02:00
Gabriel Féron
3df525ee33 Add enum support to rust and skip none option serialization in clients (#2244)
* Add support for enum schemas and properties to the rust generator

Also:
* Skip serializing a field with serde if it's optional and empty
* Fix borrow checker error when using &std::path::Path (should be std::path::PathBuf)
* Add script to generate sample with rust-reqwest
* Regenerate petstore sample for both rust targets
* Remove go code from README.md

* Fix formatting of serde skip_serializing_if attribute
2019-06-07 17:28:43 +01:00
Jim Schubert
c2f5038d75 Add/update new core team member: etherealjoy (#3116) 2019-06-06 15:36:00 -04:00
Jim Schubert
5de7f09ae9 Gradle sample on travis (#3114)
* Explicitly ignore .bak in gradle samples directory

* Add gradle wrapper to local-spec sample, make .java-version (jenv local) be less machine specific

* Include gradle plugin samples in travis build
2019-06-06 15:09:26 -04:00
Ken Rosaka
cd85210835 [typescript-fetch] add bearer token support (#3097)
* [typescript-fetch] added Bearer token support

* [typescript-fetch] executed ./bin/openapi3/typescript-fetch-petstore-all.sh

* [typescript-fetch] executed ./bin/typescript-fetch-petstore-all.sh
2019-06-06 16:58:31 +02:00
sunn
6660b74247 Add Q_DECLARE_METATYPE to the generated models and remove ref in signals (#3091) 2019-06-06 16:13:11 +02:00
William Cheng
19f47d0caa [Java][okhttp-gson] Update dependencies (#3103)
* update java client depedency to the latest version

* update java samples
2019-06-06 13:32:58 +08:00
Thibault Duperron
146c1fb255 Link query parameter to model object (#2710)
* Link query parameter to model object

Must fix #2655

* Fix import
2019-06-05 14:42:15 -04:00
Adi Gerber
0d701b7ce9 scala-play-server: fix enum names for reserved words (#3080) 2019-06-05 14:26:22 -04:00
William Cheng
e68426fda9 Add @sunn to openapi generator core team (#3105) 2019-06-06 02:10:21 +08:00
William Cheng
86e53d6f0b fix NPE in go generator (#3104) 2019-06-06 01:57:16 +08:00
Adi Gerber
6379022c42 scala-play-server: fix API doc url (#3096) 2019-06-06 01:50:39 +08:00
Jérémie Bresson
ad06496887 [maven-plugin] fix strictSpec parameter without alias (#3095)
* Revert "[maven-plugin] fix strictSpec parameter (#3071)"

This reverts commit 8c9a1512ae.

* [maven-plugin] fix strictSpec parameter without alias
2019-06-05 08:21:51 -04:00
Chris Couzens
4e9d226443 Ruby: Avoid double escaping path items (#3093)
`URI.encode` is obsolete. `CGI.escape`, `URI.encode_www_form` or
`URI.encode_www_form_component` are recommended instead.
https://ruby-doc.org/stdlib-2.6/libdoc/uri/rdoc/URI/Escape.html#method-i-escape

URI.encode has different behaviour to CGI.escape:

```ruby
URI.encode('hello/world?test%string')
=> "hello/world?test%25string"
CGI.escape('hello/world?test%string')
=> "hello%2Fworld%3Ftest%25string"
```

I recently raised pull request #3039
201cbdce29

That pull request escapes path items at insertion.

Before either pull request, the path item 'hello?world' would go into
the URL as 'hello?world'. That behaviour was insecure as if an attacker
could control the path item value, they could change the URL the
application connected to.

After #3039 'hello?world' would go in as 'hello%253Fworld'. This was
safer than before, but it's still not correct.
If I'd realised at the time, I would have made it correct at the time.

What this pull request does is make it go in as 'hello%35world', which
is correct.

ApiClient::build_request_url was URI.encoding the whole path.
This wasn't protecting against all undesirable characters in the path
items, but was escaping % characters a 2nd time which was unhelpful.

I have additionally removed URI.encode from Configuration::base_url as I
can't see any benefit it could be bringing.
There is no justification for it in the commit where it was originally
added: 47c8597d36
2019-06-05 19:54:23 +09:00
Slavek Kabrda
66bf0dce9e [Golang][client] Allow generating go client code as a submodule. (#3012) 2019-06-05 17:47:46 +08:00
William Cheng
9f1b9386f1 [CI] Test maven plugin in Travis, move jobs from Shippable to Circle CI (#3087)
* test plugin in travis, move jobs to circle CI

* Revert "[maven-plugin] fix strictSpec parameter (#3071)"

This reverts commit 8c9a1512ae.

* Revert "Revert "[maven-plugin] fix strictSpec parameter (#3071)""

This reverts commit c3e5723c5a.

* test with jdk8
2019-06-05 00:07:15 +08:00
MBcom
dcf3f420f9 general support to add scopes for bearer auth too (#1984)
* general support to add scopes for bearer auth too
implemented authorize workflow in aspnet core too

* petstore update

* fix missing )

* multi roles fix

* null pointer error prevention

* null point exception fixes

* null pointer fixes

* npe fix

* solved line break issue
2019-06-04 23:03:15 +08:00
Sai Giridhar P
dc3543981e feat(java-jersey2): Making response headers case-insensitive (#3072)
* feat(java-jersey2): Making headers case-insensitive

* feat(java-jersey2): Updating documentation
2019-06-04 22:03:01 +08:00
Vincent Devos
57560d365f [KOTLIN Spring] fix generation with modelNamePrefix/Suffix (#3038)
* [KOTLIN Spring] fix generation with modelNamePrefix/modelNameSuffix

* fix indent

* fix indent

* fix indent

* fix indent

* fix indent

* fix indent
2019-06-04 21:57:43 +08:00
William Cheng
c6207c0a49 Mark nodejs-server as deprecated (#3083)
* mark nodejs-server as deprecated

* update opeanpi3 script

* add new file
2019-06-04 21:38:28 +08:00
Jérémie Bresson
89d0c01764 Use 4.0.2-SNAPSHOT version in gradle samples (#3085) 2019-06-04 06:54:25 -04:00
Jérémie Bresson
8c9a1512ae [maven-plugin] fix strictSpec parameter (#3071) 2019-06-03 22:43:19 +08:00
William Cheng
e06a408141 Update C# client dependency (#2678)
* update csharp dependency

* fix appveyor test

* skip build error

* update nunit version

* fix nunit path

* update petstore test

* various fix
2019-06-03 21:17:17 +08:00
Andrej Završnik
caac76c265 Kotlin-Spring template fixes/improvements (#3007)
* Fixed case where invalid comma is added to consumes/produces list in case last element is empty.

* Changed default HttpStatus.OK response to match first response code in definition.
Allowing also other responses 201, 202 ...

* Changed default HttpStatus.OK response to match first response code in definition.
Allowing also other responses 201, 202 ...

* run ./bin/kotlin-springboot-petstore-server.sh
Updated APIs
2019-06-03 20:48:40 +08:00
Sai Giridhar P
6ff0512b31 [Java][jersey2]: Documentation changes and making example snippet compilable (#3056)
* feat(java-jersey2): Adding http response headers and making example compilable

* feat(java-jersey2): Updating pet project

* feat(java-jersey2): Removing uncessary lines from Readme

* feat(java-jersey2): Updating pet projects

* feat(java-jersey2): Updating pet projects
2019-06-03 15:42:41 +08:00
Matthias Preu
1eca97f738 Fix wrong include path in api-header template (#3062)
Change local json.hpp include path to correct value.

Update samples.
2019-06-03 15:41:45 +08:00
Michael Cristina
8d9eb5ba54 refactor(golang): Use http provided constants for http methods (#3028)
* refactor(golang): Use http constants for methods

* regenerate samples

* fix: Only import strings when needed

* regenerate samples

* Only import fmt and strings when needed

* regenerate samples
2019-06-03 15:41:21 +08:00
Sai Giridhar P
6b7c5edbce feat(java-okhttpgson): Making API response headers case insensitive (#3029)
* feat(java-okhttpgson): Making API response headers case insensitive

* feat(java-okhttpgson): Adding documentation

* feat(java-okhttpgson): Removing tabs

* feat(java-okhttpgson): Removing tabs
2019-06-03 15:40:22 +08:00
Fabrizio Ferrai
b5121745a8 [JavaScript] Remove default parameters syntax, as it's an ES6 feature (#2848)
* Remove default parameters in JS client, as it's an ES6 feature

* update js petstore samples
2019-06-03 15:38:30 +08:00
Sai Giridhar P
25dce23d81 fix(java-jersey2): Fixing javadocs warnings (#3040)
* edit fix(java-jersey2): Fixing javadocs warnings

* fix(java-jersey): Updating pet project
2019-06-03 15:37:55 +08:00
William Cheng
ded0bd6801 Update CI badges to 4.1.x (#3069)
Update CI badges to 4.1.x
2019-06-03 11:41:38 +08:00
Jim Schubert
740325f885 Updates sample generated content (#3068)
Generates samples to match with code introduced in #2934.
2019-06-02 19:35:49 -04:00
sylvainmoindron
7916f2f880 [kotlin-spring] add reactive behavior via Kotlin coroutines (#2934)
* kotlin spring : add reactivity via kotlin's coroutines

* add kotlin spring boot reactive samples

* bug : fix spring version and import for coroutines

* remove exception handler for reactive (webflux doesn't support it)

* add spring milestone repository to maven pom

* add reactive type for list in Api and ApiImpl methodes for mathching body responsive parameter

* fix baseType for ArraySchema

* regenerate samples

* updating documentation
2019-06-02 15:50:45 -04:00
William Cheng
b74fa4458d Update compatibility table
Update compatibility table
2019-06-03 00:03:16 +08:00
Chris Couzens
522a1a2372 Ruby client: escape path parameters (#3039)
* Ruby client: escape path parameters

Path parameters should be escaped when encoded into the path.

In the path '/pet/{petId}' let's pretend petId is a string instead of a
number.

If the user uses "Bobby" as the petId then they correctly get the path
'/pet/Bobby'.
But if they put 'Bobby/Tables' as the petId then they used to get the
path '/pet/Bobby/Tables' which will be interpreted by the server as a
different route.

Using CGI::Escape they now get '/pet/Bobby%2FTables' which is correct.

* Ruby client- regenerate further files

Thank you @autopp for noticing I needed to update
`samples/openapi3/client/petstore/ruby`.

Regenerated by running `bin/openapi3/ruby-client-petstore.sh`.

PR #3039
2019-06-03 00:24:30 +09:00
Jim Schubert
f667effa76 [gradle plugin] Release 4.0.1 fixes (#3051)
Fixes issues found during the 4.0.1 release
2019-06-01 23:36:17 -04:00
Jérémie Bresson
dc81574f2b Update version to 4.0.2-SNAPSHOT (#3047)
* Update version to 4.0.2-SNAPSHOT

* Update samples

* Change AppVeyor script (test of gradle sample)

* Fix release version bump script (gradle plugin, sample poms)

* Include sonatype snapshots in maven examples which reference 4.0.2-SNAPSHOT
2019-06-01 21:32:44 -04:00
sunn
7ecc99192d Map number to double time since float is also parsed as double in Qt5 C++ (#3046) 2019-05-31 19:23:07 +02:00
William Cheng
39648ee3a7 Prepare 4.0.1 release (#3041)
* update snapshot version

* update to 4.0.1
2019-05-31 23:42:55 +08:00
Jim Schubert
6a1fc51069 [gradle] Reworking publishing pipeline (#2886)
* [gradle] Reworking publishing pipeline

TravisCI proxies separate external requests with different orginating IP
addresses, while Sonatype associates artifacts for auto-generated
repositories by IP address. This leads to many gradle deploys from CI
resulting in "split" staging repositories with no way to combine in
Sonatype Nexus.

This introduces a workflow which should resolve this issue on the next
revision release. Specifically, nexus-publish-plugin is included to
create singular staging repositories from TravisCI and
gradle-nexus-staging-plugin is included to auto-release and promote
this repository.

NOTE:
We need to publish via publishPluginMavenPublicationToNexusRepository,
because publishToNexus will publish _all_ publish-related tasks,
including the one intended only for the Gradle Plugin Portal.

Tested in standalone open source Nexus Repo Manager, which doesn't
support the staging plugin. So, only SNAPSHOT workflow has been
validated locally.

* Change the 'publish' task to 'publishToMavenLocal' in the helper pom.xml

* Add condition on signing and be explicit about sources/javadoc artifacts

* Call close/closeAndReleaseRepository

* Reuse same closeAndReleaseRepository for SNAPSHOT + releases using a task guard, and publish to Gradle Plugin portal only on tagged build.

* Add v prefix for tag check.
2019-05-31 20:43:21 +08:00
Jan Buchar
c509d9897a [typescript-fetch] Fix uploading files (#2900)
* [typescript-fetch] Fix uploading files

* Check for Blob instead of File

* Update samples

* Update samples

* Update samples

* Update samples

* Regenerate samples

* Bug

* Manually fix samples

* Implement support for Buffer and Blob in a backwards-compatible way

* Rework how blob and buffer instance checking works

* Check for Blob/Buffer existence properly

* Avoid using Buffer and Blob in type declarations

* Remove Buffer support

* Update samples/client/petstore/typescript-fetch/tests/default/test/PetApi.ts

Co-Authored-By: Esteban Marin <estebanmarin@gmx.ch>

* Update samples/client/petstore/typescript-fetch/tests/default/test/PetApi.ts

Co-Authored-By: Esteban Marin <estebanmarin@gmx.ch>
2019-05-31 14:15:32 +08:00
Deven Phillips
ddf21f0ca5 Resolves #2962 - Add properties config to Maven parameters (#2963)
* Resolves #2962 - Add properties config to Maven parameters

* Fixed formatting

* Fixed formatting

* Fix missing hyphen

* Added propery for `engine` parameter
2019-05-31 09:43:57 +08:00
Michael Cristina
a2e84c348c fix(golang): Check error of xml Encode (#3027) 2019-05-31 00:50:34 +08:00
Mateusz Szychowski (Muttley)
87adba9c4b [C++][Restbed] Add handler callback methods (#2911)
* [C++][Restbed] Add handler callback methods

* [C++][Restbed] Update Petstore sample
2019-05-30 16:45:28 +02:00
sunn
aae97638a9 Remove null checks for C# value types (#2933) 2019-05-30 18:06:42 +08:00
Guillaume SMAHA
20b8eff6e3 [python-server] Support python 3.7 for all server-generators (#2884)
* Support python 3.7 for all server-generators

Signed-off-by: Guillaume Smaha <guillaume.smaha@gmail.com>

* Rename typing_patch.py to typing_utils.py

* Renaming typing_patch.mustache to typing_utils.mustache

* Fix comparaison in typing_utils.is_dict for python3.7
2019-05-30 11:36:06 +08:00
Kevin Kirsche
14118807ba Use golang's provided method names (gin) (#2983)
* Use golang's provided method names (gin)

This commit modifies the gin template for the router to leverage the http constants for method types as defined by RFC 7231 section 4.3. These are documented on:

https://golang.org/pkg/net/http/#pkg-constants

This removes the need for the `strings` dependency and does not require any new dependencies, as `net/http` is already imported.

* Remove strings dependency which is no longer used

* Update samples
2019-05-30 01:48:22 +08:00
Sai Giridhar P
e3bc228dd5 [python] Adding constructor parameters to Configuration and improving documentation (#3002)
* feat(python): Updated configuration's constructor and documentation

* feat(python): Updated documentation

* feat(python): Updated pet project

* feat(python): Updated pet project

* feat(python): Fixing host

* feat(python): Updating pet project

* feat(python): Fixing indentation
2019-05-30 00:50:26 +08:00
William Cheng
6742302922 Add new option to maven plugin's readme (#3025)
Add new option to maven plugin's readme
2019-05-29 21:59:38 +08:00
azizamaan
91af76700e Engine param in maven plugin. (#2881) 2019-05-29 21:31:21 +08:00
Ingvi Rafn
8a6d996c4f Added support for patterns on model properties (#2948) 2019-05-29 21:30:25 +08:00
Sai Giridhar P
40ec016c87 [csharp] Make API response headers dictionary case insensitive (#2998)
* fix(response-headers): Making response headers case insensitive

* fix(response-headers): Making response headers case insensitive

* feat(csharp): Headers case insensitive

* feat(csharp): Making API response's headers case-insensitive

* feat(csharp): Indentation fix

* feat(csharp): Indentation fix

* feat(csharp): Adding generator's documentation
2019-05-29 19:39:54 +08:00
Sai Giridhar P
7756296c25 [Python] ModuleNotFoundError when packagename contains dots (#2992)
* feat(python): Support package names with dots

* feat(python): Fixing tests

* feat(python): Adding comment

* fix(python): Fixing indentation

* fix(python): Fixing indentation
2019-05-29 19:38:42 +08:00
Erik Timmers
44e4dc3ff4 Add support for the URI format (#3023)
* Add support for URI formats

* Set URI type for all generators
2019-05-29 19:35:30 +08:00
Sai Giridhar P
f93e75b078 [java-okhttp]: Make example snippets code compilable (#3016)
* fix(okhttp-gson): Make example executable

* fix(okhttp-gson): Make example executable

* fix(okhttp-gson): Make example executable

* fix(okhttp-gson): Updating pet project

* fix(okhttp-gson): Updating parcelable project

* fix(okhttp-gson): Using {{{}}}
2019-05-29 00:58:23 +08:00
Sai Giridhar P
0a037ae111 [csharp] Making example code snippet compilable (#3019)
* fix(okhttp-gson): Updating example

* fix(csharp): Updating example

* fix(csharp): Updating pet project

* fix(csharp): Updating example
2019-05-29 00:57:06 +08:00
Sai Giridhar P
499c8ac5c1 [java-okhttpgson]: Include API's Http response codes and their corresponding description and response headers in the documentation (#2995)
* fix(okhttp-gson-java): Adding response headers on api_doc.mustache

* feat(okhttp-gson): Adding Http response headers to docs and javadocs

* feat(okhttp-gson): Included dots in custom tage

* feat(java-okhttpgson): Updating pet project

* feat(java-okhttpgson): Updating other pet project
2019-05-29 00:55:59 +08:00
Erik Timmers
38b1fe2d36 Add support for enums in Elm operations (#2982) 2019-05-28 23:00:04 +08:00
Vincent Devos
d748312818 [KOTLIN client] fix Moshi (Serializer/Deserializer) duplicated (#3013) 2019-05-28 15:15:06 +08:00
Jaumard
d1043c910c fix jaguar wrong import on object (#3000) 2019-05-28 15:10:35 +08:00
William Cheng
60e6371fc5 fix class hardcode to pet (#3014) 2019-05-28 00:45:01 +08:00
Gualtieri Mario
50878fbc2e [TS][Inverisify] Adding support for RxJS 6 (#2793)
* Add support to http patch method

* Add support to rxjs6

* Align sample

* Add sample for openapi3

* Change usage of single quote to use only double ones

* Fix wrong changes of typescript-angular package.json template

* Add `map` keyword inside reservedWords

* Add typescript-inversify inside README


Add typescript-inversify inside README

* fix merge issue, update petstore

* update doc
2019-05-27 23:33:07 +08:00
Esteban Marin
5167955ee0 Create FUNDING.yml (#3008) 2019-05-27 22:17:21 +08:00
William Cheng
b88b1d656a Add auto-generated tests and travis config to Dart clients (#3006)
* add auto-generated tests and travis config for dart

* improve tests

* fix tests

* add test, travis files to dart jaguar generator
2019-05-27 18:44:57 +08:00
William Cheng
5c6824f569 update feign to the latest stable version (#2999) 2019-05-27 15:11:02 +08:00
vellengs
e4f56d5906 To fix conflict params name 'url' (#2921)
* To fix conflict params name 'url'

Sometime we have api params named url that will conflict with imported module url named url.

* run samples

* run samples

* update samples

* update ts axios petstore all
2019-05-27 09:42:41 +08:00
Sai Giridhar P
d0a8d68512 [csharp-netcore] Enabling XML documentation on csharp-netcore client (#2996)
* feat(csharp-netcore): Enabling xml documentation

* feat(csharp-dotnetcore): Updating pet

* feat(csharp-netcore): Updating csproc with documentation file

* feat(csharp-netcore): Updating netcore project's csproc

* feat(csharp-netcore): Updating pet project

* feat(csharp-netcore): Updating pet project

* feat(csharp-netcore): Updating ensure-up-to-date script
2019-05-27 01:22:31 +08:00
William Cheng
ff1c7c87ef update jackson joda version, samples (#3005) 2019-05-27 00:26:24 +08:00
fj-roman
7109f5fb3b [kotlin] add testFolder configuration for kotlin (#2975)
* add apiSuffix configuration

* refactor the global option apiSuffix to kotlin specific feature

* add testcase

* add testFolder for kotlin gen

* add basic api_test.mustache template

* add api_test,mustache

* add tests

* improve usage of file separators

* replace defined file separator into os specific separators

* improve test templates and kotlin-springboot sample

* add test dependecies into gradle template

* add newline into template file
2019-05-26 17:12:31 +08:00
sunn
2e6b911022 Set default base path and change constructor to const ref (#2973) 2019-05-26 17:03:48 +08:00
William Cheng
2bc9592bd5 Revert "Add auto-generated tests and travis config to Dart clients (#2909)" (#3001)
This reverts commit dfda6655ec.
2019-05-26 01:50:31 +08:00
William Cheng
dfda6655ec Add auto-generated tests and travis config to Dart clients (#2909)
* add auto-generated tests and travis config for dart

* improve tests

* fix tests
2019-05-25 22:52:30 +08:00
William Cheng
d243a6b96d Update jackson-databind to address security issues (#2993)
* update jackson-databind to address security issue

* update java vertx client dev, sample

* update dep, samples

* update retrofit play2 dep
2019-05-25 18:24:37 +08:00
Vincent Devos
c4bf6588aa [Kotlin client] Improve JSON parser (#2981)
* [Kotlin client] Improve JSON parser

* fix import in model for threetenbp date
2019-05-24 17:11:26 -04:00
kroegerama
213c015c95 improve Kotlin code quality (#2988)
* improve Kotlin code quality

* regenerate kotlin samples
2019-05-25 00:18:25 +08:00
Shenghan Gao
268196e7f6 [Python] Remove unnecessary if else. (#2985)
* Remove Unnecessary `if else`

* update samples
2019-05-25 00:10:11 +08:00
William Cheng
e284d2e466 Add a link to eBook (traditional chinese) (#2989) 2019-05-25 00:07:37 +08:00
Akihito Nakano
63e1e0451c Add OPTiM to the company list (#2971) 2019-05-23 18:31:33 +09:00
Keiju Matsumoto
1e06d7fe88 [Kotlin] Fix parse error when using custom field names with @Json (#2944)
* Fix to use isEmpty method

* Add KotlinJsonAdapterFactory to moshi adapter

* Update petstore sample
2019-05-22 20:58:38 +09:00
Vincent Devos
6a1f33d2f8 adjust template folder to lang option (#2959)
* adjust template folder to lang option : scala-finch, java-msf4j, java-undertow, php-ze-ph

* Changing file permissions

* move ze-ph and finch resources folder
2019-05-22 20:55:05 +09:00
Sai Giridhar P
689534cfd7 [C#] Enabling XML documentation in the C# client (#2953)
* feat(csharp-issue-2952): Enabling XML documentation

* feat(csharp-issue-2952): Updating pet
2019-05-22 18:31:00 +08:00
William Cheng
d139219bba Add a link to Simplified Chinese eBook on OpenAPI Generator (#2970)
Add a link to Simplified Chinese eBook on OpenAPI Generator
2019-05-22 18:27:26 +08:00
William Cheng
be8c5faa50 [PHP] Fix group parameters in WithHttpInfo method (#2951)
* fix group paramaeter in php withhttpinfo method

* update php openapi3 samples
2019-05-22 18:20:55 +08:00
William Cheng
972fe8fa40 Revert "Specify "flex-flow: row wrap" to show the all table (#2942)" (#2969)
This reverts commit 2de5528cc2.
2019-05-22 10:44:57 +08:00
optim-y-takahashi
3526fe403f Add link to the article "OpenAPIによるスキーマファースト開発の実施サンプルとCloud Runについて" (#2960) 2019-05-22 00:43:29 +09:00
William Cheng
f8562d292b add yelp to company list (#2949) 2019-05-21 11:08:58 +08:00
Akihito Nakano
2de5528cc2 Specify "flex-flow: row wrap" to show the all table (#2942) 2019-05-21 09:47:19 +08:00
Jim Schubert
658970da29 [build] Avoid caching openapitools* artifacts (#2885) 2019-05-20 20:41:41 -04:00
William Cheng
5ad318bfae update apex petstore, add apex to ensure-uptodate 2019-05-20 21:34:54 +08:00
Logan Moore
e30f0c9879 Set namedCredential file name from the property (#2937)
The namedCredential property is intended to override the namedCredentials name, but it wasn't being used. Instead, the title from the openapi spec file was used, and the namedCredential property wasn't used anywhere.

For backwards compatibility, this change also keeps the spec title as the default name if an override is not provided.
2019-05-20 21:28:58 +08:00
William Cheng
18b66ed28c Add a link to the article published in 47northlabs.com (#2941)
Add a link to the article published in 47northlabs.com
2019-05-20 19:00:31 +08:00
Jeremie Bresson
8b34bc1f97 Set openApiGeneratorVersion to 4.0.1-SNAPSHOT (#2882) 2019-05-20 12:22:32 +02:00
Vincent Devos
3014ece6d8 [Typescript] remove deprecated typings (#2880)
* [Typescript] remove deprecated typings

* add typescript-v7 CI tests
2019-05-20 16:59:12 +08:00
Erik Hvattum
87c9de210f Feature/typescript fetch/map templating (#2913)
* Add openapi dictionary/map support to typescript-fetch client generator

	Change isContainer -> isListContainer for existing array support.
	Add isMapContainer control flow, adding map support.
	Add utility function to help map openapi map/dictionaries to ts maps.
	Close #1878

* Run typescript-fetch generator scripts and update output files
2019-05-20 16:54:43 +08:00
Vincent Devos
d5e24f0111 [JAVA] fix artifactVersion overriding snapshot parameter when set (#2891) 2019-05-20 16:12:28 +08:00
drl-max
1ad6701f02 Wrote method to remove newline characters (Windows or Unix style) from both strings before comparing them. (#2927) 2019-05-20 15:53:19 +08:00
Timo Dörr
10ac54f1b3 typescript-fetch: Remove superfluous closing parenthsesis which result in compilation errors (#2922) 2019-05-20 15:49:44 +08:00
Logan Moore
81d53e2982 Change github link to the correct repo (#2938) 2019-05-20 14:16:02 +08:00
Vincent Devos
6bffe4dbc7 [Groovy] improve code parsing body/form params (#2879)
* [Groovy] improve code parsing body/form params

* remove leading space

* remove leading space
2019-05-20 11:20:48 +08:00
François Rosé
fdd08dc1f1 Remove @fvarose from technical committee (#2936) 2019-05-20 10:03:17 +08:00
Jérémie Bresson
4e579ff75b [meta] remove cli dependency (#2896) 2019-05-19 21:25:16 +02:00
sunn
e85e1f112a Separate exception types (#2930) 2019-05-18 11:57:23 +02:00
Vincent Devos
f550553e3f [Typescript] gets package npm version from API specification (#2920)
* [TypeScript] gets package npm version from API specification

* forgot flowtyped
2019-05-17 13:55:24 +08:00
ircecho
049d24ee4f dart2: update to work with dart 2.3.0 (#2894)
* dart2: update to work with dart 2.3.0

* dart2: update to work with dart 2.3.0
2019-05-15 22:49:54 +08:00
William Cheng
42f47b7b0a add CAM logo to the website (#2898) 2019-05-15 22:25:34 +08:00
Sergey Moiseev
87414352a5 Add support of Bearer Basic Authorization to Ruby client (#2856)
* Support for Bearer in Ruby Client

* Update README.mustache

* Update README.mustache

* Update api_doc.mustache

* Update api_doc.mustache

* Update api_doc.mustache

* samples

* Uncommited changes

* Formatting

* More Formatting

* Fomatting

* More formatting

* More formatting

* Even more formatting

* Even more formatting

* More formatting

* Even more formatting

* More formatting

* More formatting
2019-05-15 21:17:57 +08:00
Mateusz Szychowski (Muttley)
c353f79342 [F#][Giraffe] Remove unused import (#2893) 2019-05-15 21:12:30 +08:00
Thibault Duperron
c3efb91e31 Disable jdk8 when using responseWrapper (#2873)
Fix #2872
2019-05-15 21:12:00 +08:00
William Cheng
cbe39ba881 Set version to 4.0.1-SNAPSHOT (#2882) 2019-05-14 10:28:32 +02:00
William Cheng
3744273312 4.0.0 release (#2878)
* remove snapshot version

* update readme

* undo changes to example

* revert apache maven version

* update gradle property
2019-05-13 20:56:47 +08:00
William Cheng
dc0c24b955 Minor wording change (#2875)
* better wording for version of openapi doc

* update petstore samples
2019-05-13 15:59:59 +08:00
Akira Tanimura
25392b9fd9 [Ruby] update TargetRubyVersion in .rubocop.yml to 2.4 (#2876) 2019-05-13 14:52:58 +08:00
Jonas DOREL
305f78c52b JS Client - Add support for empty enum in server object (#2853)
* Add support for empty enum in server object

* Updated samples
2019-05-13 14:21:43 +08:00
William Cheng
9d3c1f2262 update groovy readme (#2874) 2019-05-12 11:50:12 +08:00
William Cheng
001854171e upgrade groovy to 2.5.7 (#2871) 2019-05-12 01:48:42 +08:00
William Cheng
92b994496c Add CAM to company list (#2869) 2019-05-11 14:15:59 +08:00
William Cheng
0994ec3909 update ts rxjs samples 2019-05-11 12:19:08 +08:00
Patrick Ruckstuhl
a91130d6b4 Update README.mustache (#2866)
Fixed wrong reference to fetch instead of rxjs
2019-05-11 11:48:31 +08:00
Vincent Devos
ef26ce68d4 [Kotlin] client improvement / remove WildCards in client/server (#2862) 2019-05-11 11:42:11 +08:00
William Cheng
9323cad06b [Core] Minor enhancements (#2863)
* fix getcontenttype, better working for skipFormModel

* add tests for allof
2019-05-11 11:11:06 +08:00
Vincent Devos
98afbe062b [GROOVY] update client generator to a stable version (#2847)
* [GROOVY] update client generator to a stable version

* fix tab

* fix remove using invokerPackage

* fix test
2019-05-11 11:10:25 +08:00
Fabrizio Ferrai
48314905da [Haskell-Servant] Upgrade to Servant 0.16 (#2849) 2019-05-11 11:08:53 +08:00
Béres Zoltán
757fcfeac6 Fixed vertex ApiClient template (#2841)
* updated java/vertex ApiClient template

* update java samples
2019-05-10 00:56:39 +08:00
Hemant Zope
8e91b8c62a [core] add support for model as query params (#2489)
* add support for model as query params

* add logging incase of multiple schemas are present
2019-05-09 15:31:58 +08:00
Vincent Devos
70108b753e [JAVA] fix artifactVersion is not taken from specification (#2798)
* [JAVA] fix artifactVersion is not taken from specification when not provided by generator option

* update jaxrs-spec samples

* update docs generator jaxrs
2019-05-09 15:19:52 +08:00
Fabrizio Ferrai
0ef579363d [haskell-servant] Fix parsing of special characters (#2676) 2019-05-09 15:08:51 +08:00
William Cheng
99e352af46 comment out elm script in ensure uptodate 2019-05-09 14:53:20 +08:00
Jon Rimmer
6d1a91e3c1 [Typescript] Warn about unset post-processing param (#2843) 2019-05-09 14:39:55 +08:00
Slavek Kabrda
21b8160d00 [Golang][client] Make it possible to generate go.mod and go.sum files - fixes #2796 (#2813) 2019-05-08 14:52:17 +08:00
Thiago Arrais
f2b1f770f8 [go] fix multipart for non-file inputs (#2792)
* [go] fix multipart for non-file inputs

* update relevant sample client
2019-05-08 11:19:06 +08:00
Matthieu Berthomé
ee43cc1520 handle composed schemas in InlineModelResolver (#2112)
* handle composed schemas in InlineModelResolver

* fix unit test -> TestUtils.parseSpec

* update samples

* fix samples

* update samples

* update samples

* add new files
2019-05-08 10:19:15 +08:00
fj-roman
7eb2be9c99 [Kotlin] add apiSuffix configuration (#2690)
* add apiSuffix configuration

* Add default value for Api suffix

* remove overriding method toApiName

* refactor the global option apiSuffix to kotlin specific feature

* add missing Option for apiSuffix

* extend readme.md for apiSuffix configuration

* update doc

* add testcase
2019-05-07 21:37:32 +08:00
Matthieu Berthomé
f0346aeeb2 python: api_client: add the multipart files after sanitization (#2122)
* python: api_client: add the multipart files after sanitization

* simplify prepare_post_parameters

* fix case of both post params and files set

* update samples

* update samples
2019-05-07 21:27:01 +08:00
Vincent Devos
a4f2e15bb7 [TypescriptAngular] gets package npm version from API specification (#2810) 2019-05-07 18:50:36 +08:00
Richard Whitehouse
31734c2717 [Rust Server] Support octet stream body param (#2725)
Add support for having a required octet stream as a body parameter.
2019-05-07 18:45:07 +08:00
Jérémie Bresson
16f94e7e62 Update swagger-parser to version 2.0.13-OpenAPITools.org-1 (#2775) 2019-05-06 22:58:48 +02:00
Vincent Devos
97e4270c0b [Java] improve docs with adding default value for additional properties (#2770)
* [Java] improve docs with adding default value for additional properties

* remove using File.separator for sourceFolder/projectTestFolder path

* Improve artifactId and artifactVersion description

* update doc java pkmst and sample
2019-05-06 22:31:12 +08:00
William Cheng
4fa284ed5d Add Elm petstore scripts to ensure-uptodate script (#2823)
* update elm petstore samples

* add elm to ensure uptodate script

* add elm-format

* add symlink to elm-format
2019-05-06 22:19:59 +08:00
William Cheng
909d454f9d [F#] minor improvements (#2825)
* Add template owner of F#

Add template owner of F#

* rename fsharp-giraffe-server

* add nmfisher to tech committee

* update windows batch file

* update doc
2019-05-06 22:11:50 +08:00
Thibault Duperron
5e92ec1b4c Fix default value for container jaxrs (#2618)
* Fix default value for container jaxrs

Fix #2600

* Samples
2019-05-06 22:06:46 +08:00
Felix Sonntag
6283625478 [Python][R] Escape single quotes in strings (#2808) (#2809) 2019-05-06 22:04:05 +08:00
topce
632364e290 fix multiple file upload (#2735)
for typescript-angular client
https://swagger.io/docs/specification/describing-request-body/file-upload/
2019-05-06 22:03:11 +08:00
Jim Schubert
e34e85427b [gradle] Display non-Stable generator stability in parens on openApiGenerators task (#2826) 2019-05-06 08:35:34 -04:00
sunn
b186883217 Add Qt5 server on the list of supported C++ server stubs (#2829) 2019-05-06 19:18:48 +08:00
Jim Schubert
6e1c8976fc [feat] Intro GeneratorMetadata (stability index) (#2816)
* [feat] Intro GeneratorMetadata (stability index)

GeneratorMetadata offers an immutable object created via Builder pattern
which allows generators to explicitly define their stability (stable,
beta, experimental, deprecated) as well as a message to be shown during
generation.

This is a step toward:

* Fleshing out the "Core" artifact (#845)
* Providing a place to encapsulate feature-oriented metadata (#840)
* Providing a means to communicate end of life scheduling (#116)

This new structure, specifically the Stability property, allows us to
offer future enhancements such as allowing users to filter down to only
"Stable" generators via CLI, and eventually any compat table (see #503).

* Mark deprecated generators as deprecated in-code

* Re-export docs/generators.md
2019-05-05 16:54:22 -04:00
Jim Schubert
26d0487a2f [travis] Avoiding build timeouts, removing run-in-docker.sh (#2820)
* Removes run-in-docker.sh from travis build
* Updates run-in-docker.sh so it will cache to a volume-bound .m2/repository directory as intended
2019-05-05 15:15:18 -04:00
William Cheng
e8a83dfe1f Add beta server stub generator for F#/Giraffe (#2802)
* Beta server stub generator for F#/Giraffe (#2705)

* first commit for F#/Giraffe

use CLI generator

work on handlers

add binding to url params

add parameter declaration to handler & fix array types

order models by dependency and add tests

add oauth handlers

add service generation

add service implementation

return json for map types and add all return types to service implementation

pare down record types for readability

move implementations to impl folder

fix additional handler invocation

remove logging

remove open api type provider package reference

add sane defaults for OAuth

add readme and reorganize files for easier ignore

fix oauth checks and move login to default template

typedef operation body params as model

add API test templates

fix test templates

set project & other folders when packageName is set

add ignore to test pipes

add ignore for oauth to hide compile warnings

escape model types for generic dictionaries

remove Boolean object from primitives

fix handler and param templates for multiple path params

remove "Model" from model module names and fix import mapping for dictionary

add package name to model imports

change model templates to use imports

move login to CustomHandlers

raise exception where oauth not properly configured

allow webhost configuration from CustomHandlers

remove explicit support for nullable types and render option in template instead

move Cookie options to CustomHandlers

add header params

integrate api key provider

add nullable to datetime types

fix test generation and pretty up model folder

add context path to handler test template

dont copy spec file

remove superseded copyright notices

remove superseded copyright notices

* remove carriage return in fsharp template

* remove superseded sample output directory

* fix bash build script

* update generated sample

* update documentation

* add new file

* fix compile issues
2019-05-06 01:30:51 +08:00
William Cheng
3c8d820e3a resize lightbow logo 2019-05-05 18:57:57 +08:00
William Cheng
9009538944 add lightbow logo 2019-05-05 18:17:14 +08:00
William Cheng
d0f537c0e7 add Lightbow as sponsor (#2822) 2019-05-05 18:14:27 +08:00
Jim Schubert
a02cb19d31 [docs] Document new templating engine, adding ability to reference templates by file to comlete the example (#2773) 2019-05-05 18:03:28 +08:00
Vincent Devos
c33547e0f1 [JAVA][KOTLIN] fix var Naming for all uppercase with Numbers (#2794) 2019-05-05 17:41:06 +08:00
Jonas DOREL
f2f12b9e04 [Documentation] Add instructions to build the javascript client module (#2806)
* Add instructions to build the module

* Updated samples
2019-05-05 17:32:05 +08:00
William Cheng
92eacdfda9 use mvn instead of run-in-docker (#2821) 2019-05-05 16:59:11 +08:00
William Cheng
9c89e6af25 Better handling of form data (#2818)
* better warning message, better handling of form payload

* fix form data detection

* better format
2019-05-05 16:05:18 +08:00
Fabrizio Ferrai
250e5284cd [haskell-servant] Add some missing types to the generated modules (#2675)
* Add some missing types to the generated modules

* Run bin/openapi3 script
2019-05-04 17:05:15 -05:00
Jim Schubert
9dcab9de6b Clarifies need to build project for sample output (#2819)
PR template seems to assume contributor is compiling the project, and would have had "latest" build completed locally. New contributors making template or documentation changes may not have built the project at all, and wouldn't know to do so based on previous PR template instructions.
2019-05-04 14:39:57 -04:00
Andy
6b94aba8a1 [Elm] Bugfix .encode in modelTypeDiscriminator (#2807)
The function is called `encode`. This fixed the call.

See dfa7e616c0/modules/openapi-generator/src/main/resources/elm/modelTypeArray.mustache (L11)
2019-05-04 15:24:47 +02:00
Jim Schubert
73d9d2d641 Apply strict spec option to CodegenConfig instance (#2814) 2019-05-03 19:32:05 -04:00
sunn
561c1e0646 Use super class methods for Model and Api Filenames (#2787) 2019-05-03 19:14:12 +02:00
Jim Schubert
a2fb88c1c1 [all] Adds strict spec option (#2783)
* [all] Adds strict spec option

Introduces an option to allow user customization of strict specification
behaviors. For instance, OpenAPI 3.x requires a path object name to be
prefixed with '/' so we append any missing '/', but this may not be
desirable to some users or generators. In this commit, this fix specifically is
the only modification affected.

* Clarify strict-spec docs, add option to README.md

* Update CLI options in docs/usage.md
2019-05-03 10:57:47 -04:00
William Cheng
e71eb3020c add warning about .net 2.0 framework without support (#2804) 2019-05-03 22:44:39 +08:00
Jérémie Bresson
814d5b3cc2 [java] add test for Enum_Test (#2801) 2019-05-03 10:15:34 +02:00
Vincent Devos
bd0d6af968 [TypeScript-axios] fix using withSeparateModelsAndApi and withoutPrefixEnums with additional-properties option (#2719) 2019-05-03 11:40:20 +08:00
sunn
d373cde1df [ASP.NET Core]Switch registry to MCR for dotnet images (#2789)
* Switch registry to MCR for dotnet images

* Update PetStore

* Reverted EOL image tag 2.0
2019-05-02 19:23:01 +02:00
sunn
d112eea088 Process server port (#2782) 2019-05-02 19:22:23 +02:00
sunn
1c16d9a9e8 [C++][Pistache]Fix import of model header (#2781)
* Fix import of model header

* use method from super class
2019-05-02 19:20:23 +02:00
Jim Schubert
bd775a992c [general] Remove swagger-codegen "lang" mappings (#2785)
For 4.0.0, we've removed the "lang" option. This removes any mappings
from swagger-codegen "lang" to openapi-generator "generator" options.
2019-05-02 17:53:41 +08:00
Alexis Yushin
4b414d81d4 dart2: Do not add non-nullable fields to model json (#2777)
* do not add non-nullable fields to model json

This fix would avoid adding and sending fields that are not isNullable in the request.

* updated sample for issue #2535
2019-05-02 16:31:38 +08:00
Erik Timmers
006cfa35e6 [elm] Fix repetitive enum prefixes (#2784)
Fixes #2759.
2019-05-02 10:05:39 +02:00
SalDiAngelus
f9d04c9c23 Fixed checking for optional properties when converting from json. (#2779) 2019-05-01 23:18:38 +02:00
sunn
1fddb69960 Allow socket address reuse option (#2780) 2019-05-01 23:16:53 +02:00
William Cheng
05053f5b8a [ASP.NET Core] minor format fix, better null check (#2778)
* aspnet core format fix, better null check

* minor wording change

* update doc
2019-05-01 16:55:14 -04:00
dan-drl
40759a57fb [C++][RESTSDK] support enums (#2749)
* Support enums

* Updating petstore sample

* Use enum class instead of just enum

* Use string_t for g++ compatibility

* Add enum descriptions

* Fix string parsing. Make g++ compatible.
2019-05-01 17:22:05 +02:00
William Cheng
26c493b4a1 Merge branch 'fschlag-master3' 2019-05-01 21:30:13 +08:00
William Cheng
4203cd468c update c-sharp samples 2019-05-01 21:04:44 +08:00
William Cheng
4e7f1876b5 Merge branch 'master' of https://github.com/fschlag/openapi-generator into fschlag-master3 2019-05-01 21:00:12 +08:00
William Cheng
a88e0acc47 [C#][.NET Core] fix map instantiation in models extending Dictionary (#2776)
* fix map type in csharp netcore

* add new files for csharp netcore client
2019-05-01 20:48:05 +08:00
William Cheng
09559da027 Add a link to the article on "Simply How" (#2774)
Add a link to the article on "Simply How"
2019-05-01 15:15:45 +08:00
Florian Schlag
651ead1346 Additional null check before doing SequenceEqual check 2019-04-30 10:32:49 +02:00
9753 changed files with 144033 additions and 374242 deletions

View File

@@ -134,7 +134,7 @@
]
},
{
"input": "csharp-netcore-petstore.sh",
"input": "csharp-refactor-petstore.sh",
"matches": [
"Client: C-Sharp"
]
@@ -146,13 +146,13 @@
]
},
{
"input": "dart-jaguar-petstore.sh",
"input": "dart-flutter-petstore.sh",
"matches": [
"Client: Dart"
]
},
{
"input": "dart-dio-petstore.sh",
"input": "dart-jaguar-petstore.sh",
"matches": [
"Client: Dart"
]
@@ -218,7 +218,7 @@
]
},
{
"input": "scala-finch-petstore-server.sh",
"input": "finch-petstore-server.sh",
"matches": [
"Server: Scala"
]
@@ -260,7 +260,7 @@
]
},
{
"input": "graphql-nodejs-express-server.sh",
"input": "graphql-server-petstore.sh",
"matches": [
"Server: GraphQL"
]
@@ -825,13 +825,13 @@
]
},
{
"input": "python-server-flask-petstore-python2.sh",
"input": "python-flask-petstore-python2.sh",
"matches": [
"Server: Python"
]
},
{
"input": "python-server-flask-petstore.sh",
"input": "python-flask-petstore.sh",
"matches": [
"Server: Python"
]
@@ -878,6 +878,12 @@
"Client: Rust"
]
},
{
"input": "rust-reqwest-petstore.sh",
"matches": [
"Client: Rust"
]
},
{
"input": "rust-server-petstore.sh",
"matches": [
@@ -1305,76 +1311,6 @@
"matches": [
"Announcement"
]
},
{
"input": "[typescript] Generic typescript text",
"matches": [
"Client: TypeScript"
]
},
{
"input": "[typescript] Generic typescript text",
"matches": [
"Client: TypeScript"
]
},
{
"input": "[typescript-angular] Generic typescript text",
"matches": [
"Client: TypeScript"
]
},
{
"input": "[typescript-angularjs] Generic typescript text",
"matches": [
"Client: TypeScript"
]
},
{
"input": "[typescript-aurelia] Generic typescript text",
"matches": [
"Client: TypeScript"
]
},
{
"input": "[typescript-axios] Generic typescript text",
"matches": [
"Client: TypeScript"
]
},
{
"input": "[typescript-fetch] Generic typescript text",
"matches": [
"Client: TypeScript"
]
},
{
"input": "[typescript-inversify] Generic typescript text",
"matches": [
"Client: TypeScript"
]
},
{
"input": "[typescript-jquery] Generic typescript text",
"matches": [
"Client: TypeScript"
]
},
{
"input": "[typescript-node] Generic typescript text",
"matches": [
"Client: TypeScript"
]
},
{
"input": "[typescript-rxjs] Generic typescript text",
"matches": [
"Client: TypeScript"
]
},
{
"input": "Should not auto-label for typescript outside of brackets.",
"matches": []
}
]
}

View File

@@ -1,10 +1,11 @@
<!-- Enter details of the change here. Include additional tests that have been done, reference to the issue for tracking, etc. -->
<!-- Please check the completed items below -->
### PR checklist
- [ ] Read the [contribution guidelines](https://github.com/openapitools/openapi-generator/blob/master/CONTRIBUTING.md).
- [ ] If contributing template-only or documentation-only changes which will change sample output, [build the project](https://github.com/OpenAPITools/openapi-generator#14---build-projects) before.
- [ ] Run the shell script(s) under `./bin/` (or Windows batch scripts under`.\bin\windows`) to update Petstore samples related to your fix. This is important, as CI jobs will verify _all_ generator outputs of your HEAD commit, and these must match the expectations made by your contribution. You only need to run `./bin/{LANG}-petstore.sh`, `./bin/openapi3/{LANG}-petstore.sh` if updating the code or mustache templates for a language (`{LANG}`) (e.g. php, ruby, python, etc).
- [ ] File the PR against the [correct branch](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `master`, `4.1.x`, `5.0.x`. Default: `master`.
- [ ] Copy the [technical committee](https://github.com/openapitools/openapi-generator/#62---openapi-generator-technical-committee) to review the pull request if your PR is targeting a particular programming language.
- [ ] Ran the shell script under `./bin/` to update Petstore sample so that CIs can verify the change. (For instance, only need to run `./bin/{LANG}-petstore.sh`, `./bin/openapi3/{LANG}-petstore.sh` if updating the {LANG} (e.g. php, ruby, python, etc) code generator or {LANG} client's mustache templates). Windows batch files can be found in `.\bin\windows\`. If contributing template-only or documentation-only changes which will change sample output, be sure to [build the project](https://github.com/OpenAPITools/openapi-generator#14---build-projects) first.
- [ ] Filed the PR against the [correct branch](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `master`, `4.1.x`, `5.0.x`. Default: `master`.
- [ ] Copied the [technical committee](https://github.com/openapitools/openapi-generator/#62---openapi-generator-technical-committee) to review the pull request if your PR is targeting a particular programming language.
### Description of the PR
(details of the change, additional tests that have been done, reference to the issue for tracking, etc)

View File

@@ -138,7 +138,6 @@ labels:
- '\s*?-[gl] swift[34]+\s*?'
- '\s*?-[gl] swift2-deprecated\s*?'
'Client: TypeScript':
- '\s*?\[typescript\]\s*?'
- '\s*?\[typescript-[\-a-z]+\]\s*?'
- '\s*?-[gl] typescript-[\-a-z]+\s*?'
# 'Client: VB/VB.net': # NOTE: Not yet implemented

8
.gitignore vendored
View File

@@ -7,7 +7,6 @@ out/
classpath.txt
version.properties
modules/openapi-generator-gradle-plugin/bin/
modules/openapi-generator-cli/bin/
!modules/openapi-generator-cli/src/main/resources/version.properties
.project
.classpath
@@ -175,7 +174,6 @@ samples/client/petstore/python-tornado/.venv/
samples/client/petstore/typescript-angular2/npm/npm-debug.log
samples/client/petstore/typescript-node/npm/npm-debug.log
samples/client/petstore/typescript-angular/tsd-debug.log
samples/client/petstore/typescript-fetch/tests/**/dist/
# aspnetcore
samples/server/petstore/aspnetcore/.vs/
@@ -188,8 +186,6 @@ samples/client/petstore/kotlin-string/build
samples/openapi3/client/petstore/kotlin/build
samples/server/petstore/kotlin-server/ktor/build
samples/server/petstore/kotlin-springboot/build
samples/client/petstore/kotlin-multiplatform/build/
samples/client/petstore/kotlin-okhttp3/build/
\?
# haskell
@@ -236,7 +232,3 @@ samples/client/petstore/elm/index.html
# C
samples/client/petstore/c/build
samples/client/petstore/c/*.so
# Ruby
samples/openapi3/client/petstore/ruby/Gemfile.lock
samples/openapi3/client/petstore/ruby-faraday/Gemfile.lock

View File

@@ -28,7 +28,7 @@ WORKDIR ${TARGET_DIR}
COPY --from=builder ${GEN_DIR}/modules/openapi-generator-online/target/openapi-generator-online.jar ${TARGET_DIR}/openapi-generator-online.jar
ENV GENERATOR_HOST=""
ENV GENERATOR_HOST=http://localhost
EXPOSE 8080

View File

@@ -20,7 +20,6 @@ cache:
- $HOME/samples/client/petstore/php/OpenAPIToolsClient-php/vendor
- $HOME/samples/client/petstore/ruby/vendor/bundle
- $HOME/samples/client/petstore/python/.venv/
- $HOME/samples/client/petstore/typescript/tests/default/node_modules
- $HOME/samples/client/petstore/typescript-node/npm/node_modules
- $HOME/samples/client/petstore/typescript-node/npm/typings/
- $HOME/samples/client/petstore/typescript-fetch/tests/default/node_modules
@@ -72,10 +71,10 @@ before_install:
- docker run -d -e SWAGGER_HOST=http://petstore.swagger.io -e SWAGGER_BASE_PATH=/v2 -p 80:8080 swaggerapi/petstore
- docker ps -a
# Add bats test framework and cURL for Bash script integration tests
- sudo add-apt-repository ppa:duggan/bats --yes
- sudo apt-get update -qq
- sudo apt-get install -qq bats
- sudo apt-get install -qq curl
#- sudo add-apt-repository ppa:duggan/bats --yes
#- sudo apt-get update -qq
#- sudo apt-get install -qq bats
#- sudo apt-get install -qq curl
# install dart
#- sudo apt-get update
#- sudo apt-get install apt-transport-https
@@ -95,11 +94,7 @@ before_install:
# - Rely on `kerl` for [pre-compiled versions available](https://docs.travis-ci.com/user/languages/erlang#Choosing-OTP-releases-to-test-against). Rely on installation path chosen by [`travis-erlang-builder`](https://github.com/travis-ci/travis-erlang-builder/blob/e6d016b1a91ca7ecac5a5a46395bde917ea13d36/bin/compile#L18).
# - . ~/otp/18.2.1/activate && erl -version
#- curl -f -L -o ./rebar3 https://s3.amazonaws.com/rebar3/rebar3 && chmod +x ./rebar3 && ./rebar3 version && export PATH="${TRAVIS_BUILD_DIR}:$PATH"
# install C++ tools
- sudo apt install -y --no-install-recommends valgrind cmake build-essential
# install Qt5
- sudo apt install -y --no-install-recommends qt5-default
- cmake --version
# show host table to confirm petstore.swagger.io is mapped to localhost
- cat /etc/hosts
# show java version

View File

@@ -1,40 +0,0 @@
kind: pipeline
name: default
steps:
# test haskell client
- name: haskell-client-test
image: haskell:8.6.5
commands:
- (cd samples/client/petstore/haskell-http-client/ && stack --install-ghc --no-haddock-deps haddock --fast && stack test --fast)
# test Dart 2.x petstore client
- name: dart2x-test
image: google/dart
commands:
- (cd samples/client/petstore/dart-jaguar/openapi && pub get && pub run build_runner build --delete-conflicting-outputs)
- (cd samples/client/petstore/dart-jaguar/flutter_petstore/openapi && pub get && pub run build_runner build --delete-conflicting-outputs)
- (cd samples/client/petstore/dart2/petstore && pub get && pub run test)
# test Java 11 HTTP client
- name: java11-test
image: openjdk:11.0
commands:
- ./mvnw clean install
- ./mvnw --quiet verify -Psamples.droneio
# test all generators with fake petstore spec (2.0, 3.0)
- /bin/bash bin/utils/test-fake-petstore-for-all.sh
# generate test scripts
- /bin/bash bin/tests/run-all-test
# generate all petstore samples (client, servers, doc)
- /bin/bash bin/run-all-petstore
# generate all petstore samples (openapi3)
- /bin/bash bin/openapi3/run-all-petstore
# test ocaml petstore client
- name: ocaml-test
image: ocaml/opam2:4.07
commands:
- sudo apt-get -y install m4
- cd samples/client/petstore/ocaml
- opam install ppx_deriving_yojson cohttp ppx_deriving cohttp-lwt-unix
- eval $(opam env)
- sudo chmod -R 777 .
- dune build --build-dir=./_build

View File

@@ -12,8 +12,15 @@ if [ "$NODE_INDEX" = "1" ]; then
#cp CI/pom.xml.circleci pom.xml
java -version
mvn --quiet verify -Psamples.circleci
mvn --quiet javadoc:javadoc -Psamples.circleci
# generate all petstore samples (client, servers, doc)
./bin/run-all-petstore
# generate all petstore samples (openapi3)
./bin/openapi3/run-all-petstore
# generate test scripts
./bin/tests/run-all-test
# test all generators with fake petstore spec (2.0, 3.0)
./bin/utils/test-fake-petstore-for-all.sh
elif [ "$NODE_INDEX" = "2" ]; then
# run ensure-up-to-date sample script on SNAPSHOT version only
project_version=`mvn org.apache.maven.plugins:maven-help-plugin:3.1.0:evaluate -Dexpression=project.version -q -DforceStdout`
@@ -21,13 +28,12 @@ elif [ "$NODE_INDEX" = "2" ]; then
echo "Running node $NODE_INDEX to test ensure-up-to-date"
java -version
# install elm-format
# install elm-format for formatting elm code
npm install -g elm-format
# clear any changes to the samples
git checkout -- .
# symlink elm-format
sudo ln -s /opt/circleci/.nvm/versions/node/v12.1.0/bin/elm-format /usr/local/bin/elm-format
# look for outdated samples
./bin/utils/ensure-up-to-date
fi
#elif [ "$NODE_INDEX" = "3" ]; then

View File

@@ -15,57 +15,33 @@ public class ApiKeyAuthTest {
public void testApplyToParamsInQuery() {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
ApiKeyAuth auth = new ApiKeyAuth("query", "api_key");
auth.setApiKey("my-api-key");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
assertEquals(1, queryParams.size());
for (Pair queryParam : queryParams) {
assertEquals("my-api-key", queryParam.getValue());
}
// no changes to header or cookie parameters
// no changes to header parameters
assertEquals(0, headerParams.size());
assertEquals(0, cookieParams.size());
}
@Test
public void testApplyToParamsInHeaderWithPrefix() {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
ApiKeyAuth auth = new ApiKeyAuth("header", "X-API-TOKEN");
auth.setApiKey("my-api-token");
auth.setApiKeyPrefix("Token");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// no changes to query or cookie parameters
// no changes to query parameters
assertEquals(0, queryParams.size());
assertEquals(0, cookieParams.size());
assertEquals(1, headerParams.size());
assertEquals("Token my-api-token", headerParams.get("X-API-TOKEN"));
}
@Test
public void testApplyToParamsInCookieWithPrefix() {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
ApiKeyAuth auth = new ApiKeyAuth("cookie", "X-API-TOKEN");
auth.setApiKey("my-api-token");
auth.setApiKeyPrefix("Token");
auth.applyToParams(queryParams, headerParams, cookieParams);
// no changes to query or header parameters
assertEquals(0, queryParams.size());
assertEquals(0, headerParams.size());
assertEquals(1, cookieParams.size());
assertEquals("Token my-api-token", cookieParams.get("X-API-TOKEN"));
}
}

View File

@@ -22,15 +22,13 @@ public class HttpBasicAuthTest {
public void testApplyToParams() {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
auth.setUsername("my-username");
auth.setPassword("my-password");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// no changes to query or cookie parameters
// no changes to query parameters
assertEquals(0, queryParams.size());
assertEquals(0, cookieParams.size());
assertEquals(1, headerParams.size());
// the string below is base64-encoded result of "my-username:my-password" with the "Basic " prefix
String expected = "Basic bXktdXNlcm5hbWU6bXktcGFzc3dvcmQ=";
@@ -38,7 +36,7 @@ public class HttpBasicAuthTest {
// null username should be treated as empty string
auth.setUsername(null);
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// the string below is base64-encoded result of ":my-password" with the "Basic " prefix
expected = "Basic Om15LXBhc3N3b3Jk";
assertEquals(expected, headerParams.get("Authorization"));
@@ -46,7 +44,7 @@ public class HttpBasicAuthTest {
// null password should be treated as empty string
auth.setUsername("my-username");
auth.setPassword(null);
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// the string below is base64-encoded result of "my-username:" with the "Basic " prefix
expected = "Basic bXktdXNlcm5hbWU6";
assertEquals(expected, headerParams.get("Authorization"));

View File

@@ -15,55 +15,33 @@ public class ApiKeyAuthTest {
public void testApplyToParamsInQuery() {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
ApiKeyAuth auth = new ApiKeyAuth("query", "api_key");
auth.setApiKey("my-api-key");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
assertEquals(1, queryParams.size());
for (Pair queryParam : queryParams) {
assertEquals("my-api-key", queryParam.getValue());
}
// no changes to header or cookie parameters
// no changes to header parameters
assertEquals(0, headerParams.size());
assertEquals(0, cookieParams.size());
}
@Test
public void testApplyToParamsInHeaderWithPrefix() {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
ApiKeyAuth auth = new ApiKeyAuth("header", "X-API-TOKEN");
auth.setApiKey("my-api-token");
auth.setApiKeyPrefix("Token");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// no changes to query parameters
assertEquals(0, queryParams.size());
assertEquals(0, cookieParams.size());
assertEquals(1, headerParams.size());
assertEquals("Token my-api-token", headerParams.get("X-API-TOKEN"));
}
@Test
public void testApplyToParamsInCookieWithPrefix() {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
ApiKeyAuth auth = new ApiKeyAuth("cookie", "X-API-TOKEN");
auth.setApiKey("my-api-token");
auth.setApiKeyPrefix("Token");
auth.applyToParams(queryParams, headerParams, cookieParams);
// no changes to query or header parameters
assertEquals(0, queryParams.size());
assertEquals(0, headerParams.size());
assertEquals(1, cookieParams.size());
assertEquals("Token my-api-token", cookieParams.get("X-API-TOKEN"));
}
}

View File

@@ -22,11 +22,10 @@ public class HttpBasicAuthTest {
public void testApplyToParams() {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
auth.setUsername("my-username");
auth.setPassword("my-password");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// no changes to query parameters
assertEquals(0, queryParams.size());
@@ -37,7 +36,7 @@ public class HttpBasicAuthTest {
// null username should be treated as empty string
auth.setUsername(null);
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// the string below is base64-encoded result of ":my-password" with the "Basic " prefix
expected = "Basic Om15LXBhc3N3b3Jk";
assertEquals(expected, headerParams.get("Authorization"));
@@ -45,7 +44,7 @@ public class HttpBasicAuthTest {
// null password should be treated as empty string
auth.setUsername("my-username");
auth.setPassword(null);
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// the string below is base64-encoded result of "my-username:" with the "Basic " prefix
expected = "Basic bXktdXNlcm5hbWU6";
assertEquals(expected, headerParams.get("Authorization"));

View File

@@ -10,7 +10,6 @@ import java.util.TimeZone;
import org.junit.*;
import static org.junit.Assert.*;
import static org.hamcrest.CoreMatchers.*;
public class ApiClientTest {
@@ -330,18 +329,24 @@ public class ApiClientTest {
assertEquals("sun.gif", apiClient.sanitizeFilename(".\\sun.gif"));
}
@Test
public void testNewHttpClient() {
public void testInterceptorCleanupWithNewClient() {
OkHttpClient oldClient = apiClient.getHttpClient();
apiClient.setHttpClient(oldClient.newBuilder().build());
assertThat(apiClient.getHttpClient(), is(not(oldClient)));
assertEquals(1, oldClient.networkInterceptors().size());
OkHttpClient newClient = new OkHttpClient();
apiClient.setHttpClient(newClient);
assertEquals(1, apiClient.getHttpClient().networkInterceptors().size());
apiClient.setHttpClient(newClient);
assertEquals(1, apiClient.getHttpClient().networkInterceptors().size());
}
/**
* Tests the invariant that the HttpClient for the ApiClient must never be null
*/
@Test(expected = NullPointerException.class)
public void testNullHttpClient() {
apiClient.setHttpClient(null);
@Test
public void testInterceptorCleanupWithSameClient() {
OkHttpClient oldClient = apiClient.getHttpClient();
assertEquals(1, oldClient.networkInterceptors().size());
apiClient.setHttpClient(oldClient);
assertEquals(1, apiClient.getHttpClient().networkInterceptors().size());
}
}

View File

@@ -61,7 +61,6 @@ public class PetApiTest {
ApiClient oldClient = api.getApiClient();
ApiClient newClient = new ApiClient();
newClient.setVerifyingSsl(true);
newClient.setBasePath("http://example.com");
newClient.setDebugging(true);

View File

@@ -15,52 +15,46 @@ public class ApiKeyAuthTest {
public void testApplyToParamsInQuery() {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
ApiKeyAuth auth = new ApiKeyAuth("query", "api_key");
auth.setApiKey("my-api-key");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
assertEquals(1, queryParams.size());
for (Pair queryParam : queryParams) {
assertEquals("my-api-key", queryParam.getValue());
}
// no changes to header or cookie parameters
// no changes to header parameters
assertEquals(0, headerParams.size());
assertEquals(0, cookieParams.size());
}
@Test
public void testApplyToParamsInQueryWithNullValue() {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
ApiKeyAuth auth = new ApiKeyAuth("query", "api_key");
auth.setApiKey(null);
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// no changes to parameters
assertEquals(0, queryParams.size());
assertEquals(0, headerParams.size());
assertEquals(0, cookieParams.size());
}
@Test
public void testApplyToParamsInHeaderWithPrefix() {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
ApiKeyAuth auth = new ApiKeyAuth("header", "X-API-TOKEN");
auth.setApiKey("my-api-token");
auth.setApiKeyPrefix("Token");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// no changes to query or cookie parameters
// no changes to query parameters
assertEquals(0, queryParams.size());
assertEquals(0, cookieParams.size());
assertEquals(1, headerParams.size());
assertEquals("Token my-api-token", headerParams.get("X-API-TOKEN"));
}
@@ -69,51 +63,14 @@ public class ApiKeyAuthTest {
public void testApplyToParamsInHeaderWithNullValue() {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
ApiKeyAuth auth = new ApiKeyAuth("header", "X-API-TOKEN");
auth.setApiKey(null);
auth.setApiKeyPrefix("Token");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// no changes to parameters
assertEquals(0, queryParams.size());
assertEquals(0, cookieParams.size());
assertEquals(0, headerParams.size());
}
@Test
public void testApplyToParamsInCookieWithPrefix() {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
ApiKeyAuth auth = new ApiKeyAuth("cookie", "X-API-TOKEN");
auth.setApiKey("my-api-token");
auth.setApiKeyPrefix("Token");
auth.applyToParams(queryParams, headerParams, cookieParams);
// no changes to query or header parameters
assertEquals(0, queryParams.size());
assertEquals(0, headerParams.size());
assertEquals(1, cookieParams.size());
assertEquals("Token my-api-token", cookieParams.get("X-API-TOKEN"));
}
@Test
public void testApplyToParamsInCookieWithNullValue() {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
ApiKeyAuth auth = new ApiKeyAuth("cookie", "X-API-TOKEN");
auth.setApiKey(null);
auth.setApiKeyPrefix("Token");
auth.applyToParams(queryParams, headerParams, cookieParams);
// no changes to parameters
assertEquals(0, queryParams.size());
assertEquals(0, cookieParams.size());
assertEquals(0, headerParams.size());
}
}

View File

@@ -22,15 +22,13 @@ public class HttpBasicAuthTest {
public void testApplyToParams() {
List<Pair> queryParams = new ArrayList<Pair>();
Map<String, String> headerParams = new HashMap<String, String>();
Map<String, String> cookieParams = new HashMap<String, String>();
auth.setUsername("my-username");
auth.setPassword("my-password");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// no changes to query or cookie parameters
// no changes to query parameters
assertEquals(0, queryParams.size());
assertEquals(0, cookieParams.size());
assertEquals(1, headerParams.size());
// the string below is base64-encoded result of "my-username:my-password" with the "Basic " prefix
String expected = "Basic bXktdXNlcm5hbWU6bXktcGFzc3dvcmQ=";
@@ -38,7 +36,7 @@ public class HttpBasicAuthTest {
// null username should be treated as empty string
auth.setUsername(null);
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// the string below is base64-encoded result of ":my-password" with the "Basic " prefix
expected = "Basic Om15LXBhc3N3b3Jk";
assertEquals(expected, headerParams.get("Authorization"));
@@ -46,7 +44,7 @@ public class HttpBasicAuthTest {
// null password should be treated as empty string
auth.setUsername("my-username");
auth.setPassword(null);
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// the string below is base64-encoded result of "my-username:" with the "Basic " prefix
expected = "Basic bXktdXNlcm5hbWU6";
assertEquals(expected, headerParams.get("Authorization"));
@@ -56,7 +54,7 @@ public class HttpBasicAuthTest {
headerParams = new HashMap<String, String>();
auth.setUsername(null);
auth.setPassword(null);
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// no changes to parameters
assertEquals(0, queryParams.size());
assertEquals(0, headerParams.size());

View File

@@ -53,7 +53,6 @@ public class ArrayOfArrayOfNumberOnlyTest {
List<BigDecimal> arrayArrayNumber = new ArrayList<BigDecimal>();
arrayArrayNumber.add(b1);
arrayArrayNumber.add(b2);
model.setArrayArrayNumber(new ArrayList<List<BigDecimal>>());
model.getArrayArrayNumber().add(arrayArrayNumber);
// create another instance for comparison
@@ -63,7 +62,6 @@ public class ArrayOfArrayOfNumberOnlyTest {
List<BigDecimal> arrayArrayNumber2 = new ArrayList<BigDecimal>();
arrayArrayNumber2.add(b1);
arrayArrayNumber2.add(b2);
model2.setArrayArrayNumber(new ArrayList<List<BigDecimal>>());
model2.getArrayArrayNumber().add(arrayArrayNumber2);
Assert.assertTrue(model2.equals(model));

View File

@@ -17,53 +17,31 @@ public class ApiKeyAuthTest {
public void testApplyToParamsInQuery() {
MultiValueMap<String, String> queryParams = new LinkedMultiValueMap<String, String>();
HttpHeaders headerParams = new HttpHeaders();
MultiValueMap<String, String> cookieParams = new LinkedMultiValueMap<String, String>();
ApiKeyAuth auth = new ApiKeyAuth("query", "api_key");
auth.setApiKey("my-api-key");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
assertEquals(1, queryParams.size());
assertEquals("my-api-key", queryParams.get("api_key").get(0));
// no changes to header or cookie parameters
// no changes to header parameters
assertEquals(0, headerParams.size());
assertEquals(0, cookieParams.size());
}
@Test
public void testApplyToParamsInHeaderWithPrefix() {
MultiValueMap<String, String> queryParams = new LinkedMultiValueMap<String, String>();
HttpHeaders headerParams = new HttpHeaders();
MultiValueMap<String, String> cookieParams = new LinkedMultiValueMap<String, String>();
ApiKeyAuth auth = new ApiKeyAuth("header", "X-API-TOKEN");
auth.setApiKey("my-api-token");
auth.setApiKeyPrefix("Token");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// no changes to query or cookie parameters
// no changes to query parameters
assertEquals(0, queryParams.size());
assertEquals(0, cookieParams.size());
assertEquals(1, headerParams.size());
assertEquals("Token my-api-token", headerParams.get("X-API-TOKEN").get(0));
}
@Test
public void testApplyToParamsInCookieWithPrefix() {
MultiValueMap<String, String> queryParams = new LinkedMultiValueMap<String, String>();
HttpHeaders headerParams = new HttpHeaders();
MultiValueMap<String, String> cookieParams = new LinkedMultiValueMap<String, String>();
ApiKeyAuth auth = new ApiKeyAuth("cookie", "X-API-TOKEN");
auth.setApiKey("my-api-token");
auth.setApiKeyPrefix("Token");
auth.applyToParams(queryParams, headerParams, cookieParams);
// no changes to query or cookie parameters
assertEquals(0, queryParams.size());
assertEquals(0, headerParams.size());
assertEquals(1, cookieParams.size());
assertEquals("Token my-api-token", cookieParams.get("X-API-TOKEN").get(0));
}
}

View File

@@ -24,15 +24,13 @@ public class HttpBasicAuthTest {
public void testApplyToParams() {
MultiValueMap<String, String> queryParams = new LinkedMultiValueMap<String, String>();
HttpHeaders headerParams = new HttpHeaders();
MultiValueMap<String, String> cookieParams = new LinkedMultiValueMap<String, String>();
auth.setUsername("my-username");
auth.setPassword("my-password");
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// no changes to query or cookie parameters
// no changes to query parameters
assertEquals(0, queryParams.size());
assertEquals(0, cookieParams.size());
assertEquals(1, headerParams.size());
// the string below is base64-encoded result of "my-username:my-password" with the "Basic " prefix
String expected = "Basic bXktdXNlcm5hbWU6bXktcGFzc3dvcmQ=";
@@ -40,7 +38,7 @@ public class HttpBasicAuthTest {
// null username should be treated as empty string
auth.setUsername(null);
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// the string below is base64-encoded result of ":my-password" with the "Basic " prefix
expected = "Basic Om15LXBhc3N3b3Jk";
assertEquals(expected, headerParams.get("Authorization").get(1));
@@ -48,7 +46,7 @@ public class HttpBasicAuthTest {
// null password should be treated as empty string
auth.setUsername("my-username");
auth.setPassword(null);
auth.applyToParams(queryParams, headerParams, cookieParams);
auth.applyToParams(queryParams, headerParams);
// the string below is base64-encoded result of "my-username:" with the "Basic " prefix
expected = "Basic bXktdXNlcm5hbWU6";
assertEquals(expected, headerParams.get("Authorization").get(2));

View File

@@ -1,26 +0,0 @@
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.openapitools</groupId>
<artifactId>TypeScriptAngularBuildPestoreClientTests</artifactId>
<packaging>pom</packaging>
<version>1.0-SNAPSHOT</version>
<name>TS Fetch Multiple Parameters Petstore Client</name>
<build>
<plugins>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>

View File

@@ -1,73 +0,0 @@
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.openapitools</groupId>
<artifactId>TypeScriptFetchBuildPrefixParameterInterfacesPestoreClientTests</artifactId>
<packaging>pom</packaging>
<version>1.0-SNAPSHOT</version>
<name>TS Fetch Petstore Client (with namespacing for parameter interfaces)</name>
<build>
<plugins>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<id>npm-install</id>
<phase>integration-test</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>npm</executable>
<arguments>
<argument>install</argument>
</arguments>
</configuration>
</execution>
<execution>
<id>npm-build</id>
<phase>integration-test</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>npm</executable>
<arguments>
<argument>run</argument>
<argument>build</argument>
</arguments>
</configuration>
</execution>
<execution>
<id>npm-test</id>
<phase>integration-test</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>npm</executable>
<arguments>
<argument>test</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>

View File

@@ -85,7 +85,7 @@ For [Vendor Extensions](https://github.com/OAI/OpenAPI-Specification/blob/master
To add test cases (optional) covering the change in the code generator, please refer to [modules/openapi-generator/src/test/java/org/openapitools/codegen](https://github.com/openapitools/openapi-generator/tree/master/modules/openapi-generator/src/test/java/org/openapitools/codegen)
To test the templates, please perform the following:
- Update the Petstore sample by running the shell scripts under `bin` and `bin/openapi3` folder. For example, run `./bin/python-petstore.sh` and `./bin/openapi3/python-petstore.sh` to update the Python PetStore API client under [`samples/client/petstore/python`](https://github.com/openapitools/openapi-generator/tree/master/samples/client/petstore/python) and [`samples/openapi3/client/petstore/python`](https://github.com/openapitools/openapi-generator/tree/master/samples/openapi3/client/petstore/python). For Windows, the batch files can be found under `bin\windows` folder. (If you find that there are new files generated or unexpected changes as a result of the update, that's not unusual as the test cases are added to the OpenAPI spec from time to time. If you've questions or concerns, please open a ticket to start a discussion)
- Update the Petstore sample by running the shell scripts under `bin` and `bin/openapi3` folder. For example, run `./bin/python-client-petstore.sh` and `./bin/openapi3/python-client-petstore.sh` to update the Python PetStore API client under [`samples/client/petstore/python`](https://github.com/openapitools/openapi-generator/tree/master/samples/client/petstore/python) and [`samples/openapi3/client/petstore/python`](https://github.com/openapitools/openapi-generator/tree/master/samples/openapi3/client/petstore/python). For Windows, the batch files can be found under `bin\windows` folder. (If you find that there are new files generated or unexpected changes as a result of the update, that's not unusual as the test cases are added to the OpenAPI spec from time to time. If you've questions or concerns, please open a ticket to start a discussion)
- Run the tests in the sample folder using maven `mvn integration-test -rf :<artifactId>`, e.g. open a shell in `samples/client/petstore/python`, run `mvn integration-test -rf :PythonPetstoreClientTests`. The artifactId of the project can be found in the pom.xml file. (some languages may not contain unit testing for Petstore and we're looking for contribution from the community to implement those tests)
- Finally, git commit the updated samples files: `git commit -a`
(`git add -A` if added files with new test cases)

171
README.md
View File

@@ -2,22 +2,25 @@
<div align="center">
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`4.2.0-SNAPSHOT`): [![Build Status](https://img.shields.io/travis/OpenAPITools/openapi-generator/master.svg?label=Integration%20Test)](https://travis-ci.org/OpenAPITools/openapi-generator)
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`4.0.3`): [![Build Status](https://img.shields.io/travis/OpenAPITools/openapi-generator/master.svg?label=Integration%20Test)](https://travis-ci.org/OpenAPITools/openapi-generator)
[![Integration Test2](https://circleci.com/gh/OpenAPITools/openapi-generator.svg?style=shield)](https://circleci.com/gh/OpenAPITools/openapi-generator)
[![Run Status](https://api.shippable.com/projects/5af6bf74e790f4070084a115/badge?branch=master)](https://app.shippable.com/github/OpenAPITools/openapi-generator)
[![Windows Test](https://ci.appveyor.com/api/projects/status/github/openapitools/openapi-generator?branch=master&svg=true&passingText=Windows%20Test%20-%20OK&failingText=Windows%20Test%20-%20Fails)](https://ci.appveyor.com/project/WilliamCheng/openapi-generator-wh2wu)
[![JDK11 Build](https://cloud.drone.io/api/badges/OpenAPITools/openapi-generator/status.svg?ref=refs/heads/master)](https://cloud.drone.io/OpenAPITools/openapi-generator)
[`4.1.x`](https://github.com/OpenAPITools/openapi-generator/tree/4.1.x) branch: [![Build Status](https://img.shields.io/travis/OpenAPITools/openapi-generator/4.1.x.svg?label=Integration%20Test)](https://travis-ci.org/OpenAPITools/openapi-generator)
[![Integration Test2](https://circleci.com/gh/OpenAPITools/openapi-generator/tree/4.1.x.svg?style=shield)](https://circleci.com/gh/OpenAPITools/openapi-generator)
[![Run Status](https://api.shippable.com/projects/5af6bf74e790f4070084a115/badge?branch=4.1.x)](https://app.shippable.com/github/OpenAPITools/openapi-generator)
[![Windows Test](https://ci.appveyor.com/api/projects/status/github/openapitools/openapi-generator?branch=4.1.x&svg=true&passingText=Windows%20Test%20-%20OK&failingText=Windows%20Test%20-%20Fails)](https://ci.appveyor.com/project/WilliamCheng/openapi-generator-wh2wu)
[`5.0.x`](https://github.com/OpenAPITools/openapi-generator/tree/5.0.x) branch: [![Build Status](https://img.shields.io/travis/OpenAPITools/openapi-generator/5.0.x.svg?label=Integration%20Test)](https://travis-ci.org/OpenAPITools/openapi-generator)
[![Integration Test2](https://circleci.com/gh/OpenAPITools/openapi-generator/tree/5.0.x.svg?style=shield)](https://circleci.com/gh/OpenAPITools/openapi-generator)
[![Run Status](https://api.shippable.com/projects/5af6bf74e790f4070084a115/badge?branch=5.0.x)](https://app.shippable.com/github/OpenAPITools/openapi-generator)
[![Windows Test](https://ci.appveyor.com/api/projects/status/github/openapitools/openapi-generator?branch=5.0.x&svg=true&passingText=Windows%20Test%20-%20OK&failingText=Windows%20Test%20-%20Fails)](https://ci.appveyor.com/project/WilliamCheng/openapi-generator-wh2wu)
[![JDK11 Build](https://cloud.drone.io/api/badges/OpenAPITools/openapi-generator/status.svg?ref=refs/heads/5.0.x)](https://cloud.drone.io/OpenAPITools/openapi-generator)
</div>
<div align="center">
[![Jion the Slack chat room](https://img.shields.io/badge/Slack-Join%20the%20chat%20room-orange)](https://join.slack.com/t/openapi-generator/shared_invite/enQtNzAyNDMyOTU0OTE1LTY5ZDBiNDI5NzI5ZjQ1Y2E5OWVjMjZkYzY1ZGM2MWQ4YWFjMzcyNDY5MGI4NjQxNDBiMTlmZTc5NjY2ZTQ5MGM)
[![Join the chat at https://gitter.im/OpenAPITools/openapi-generator](https://badges.gitter.im/OpenAPITools/openapi-generator.svg)](https://gitter.im/OpenAPITools/openapi-generator?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![Stable releaases in the Maven store](https://img.shields.io/maven-metadata/v/http/central.maven.org/maven2/org/openapitools/openapi-generator/maven-metadata.xml.svg)](http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22org.openapitools%22%20AND%20a%3A%22openapi-generator%22)
[![Follow OpenAPI Generator Twitter account to get the latest update](https://img.shields.io/twitter/follow/oas_generator.svg?style=social&label=Follow)](https://twitter.com/oas_generator)
@@ -48,22 +51,16 @@ If you find OpenAPI Generator useful for work, please consider asking your compa
[![NamSor](https://openapi-generator.tech/img/companies/namsor.png)](https://www.namsor.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[![LightBow](https://openapi-generator.tech/img/companies/lightbow.png)](https://www.lightbow.net/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
#### Thank you GoDaddy for sponsoring the domain names and Linode for sponsoring the VPS
[<img src="https://openapi-generator.tech/img/companies/godaddy.png" width="150">](https://www.godaddy.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
[![Linode](https://www.linode.com/media/images/logos/standard/light/linode-logo_standard_light_small.png)](https://www.linode.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
## Overview
OpenAPI Generator allows generation of API client libraries (SDK generation), server stubs, documentation and configuration automatically given an [OpenAPI Spec](https://github.com/OAI/OpenAPI-Specification) (both 2.0 and 3.0 are supported). Currently, the following languages/frameworks are supported:
| | Languages/Frameworks |
|-|-|
**API clients** | **ActionScript**, **Ada**, **Apex**, **Bash**, **C**, **C#** (.net 2.0, 3.5 or later, .NET Standard 1.3 - 2.0, .NET Core 2.0), **C++** (cpp-restsdk, Qt5, Tizen), **Clojure**, **Dart (1.x, 2.x)**, **Elixir**, **Elm**, **Eiffel**, **Erlang**, **Go**, **Groovy**, **Haskell** (http-client, Servant), **Java** (Jersey1.x, Jersey2.x, OkHttp, Retrofit1.x, Retrofit2.x, Feign, RestTemplate, RESTEasy, Vertx, Google API Client Library for Java, Rest-assured, Spring 5 Web Client), **Kotlin**, **Lua**, **Nim**, **Node.js/JavaScript** (ES5, ES6, AngularJS with Google Closure Compiler annotations, Flow types), **Objective-C**, **OCaml**, **Perl**, **PHP**, **PowerShell**, **Python**, **R**, **Ruby**, **Rust** (rust, rust-server), **Scala** (akka, http4s, scalaz, swagger-async-httpclient), **Swift** (2.x, 3.x, 4.x), **Typescript** (AngularJS, Angular (2.x - 8.x), Aurelia, Axios, Fetch, Inversify, jQuery, Node, Rxjs)
**Server stubs** | **Ada**, **C#** (ASP.NET Core, NancyFx), **C++** (Pistache, Restbed, Qt5 QHTTPEngine), **Erlang**, **F#** (Giraffe), **Go** (net/http, Gin), **Haskell** (Servant), **Java** (MSF4J, Spring, Undertow, JAX-RS: CDI, CXF, Inflector, Jersey, RestEasy, Play Framework, [PKMST](https://github.com/ProKarma-Inc/pkmst-getting-started-examples), [Vert.x](https://vertx.io/)), **Kotlin** (Spring Boot, Ktor, Vertx), **PHP** (Laravel, Lumen, Slim, Silex, [Symfony](https://symfony.com/), [Zend Expressive](https://github.com/zendframework/zend-expressive)), **Python** (Flask), **NodeJS**, **Ruby** (Sinatra, Rails5), **Rust** (rust-server), **Scala** ([Finch](https://github.com/finagle/finch), [Lagom](https://github.com/lagom/lagom), [Play](https://www.playframework.com/), Scalatra)
**API documentation generators** | **HTML**, **Confluence Wiki**, **Asciidoc**
**API clients** | **ActionScript**, **Ada**, **Apex**, **Bash**, **C**, **C#** (.net 2.0, 3.5 or later), **C++** (cpp-restsdk, Qt5, Tizen), **Clojure**, **Dart (1.x, 2.x)**, **Elixir**, **Elm**, **Eiffel**, **Erlang**, **Go**, **Groovy**, **Haskell** (http-client, Servant), **Java** (Jersey1.x, Jersey2.x, OkHttp, Retrofit1.x, Retrofit2.x, Feign, RestTemplate, RESTEasy, Vertx, Google API Client Library for Java, Rest-assured, Spring 5 Web Client), **Kotlin**, **Lua**, **Node.js** (ES5, ES6, AngularJS with Google Closure Compiler annotations, Flow types) **Objective-C**, **Perl**, **PHP**, **PowerShell**, **Python**, **R**, **Ruby**, **Rust** (rust, rust-server), **Scala** (akka, http4s, scalaz, swagger-async-httpclient), **Swift** (2.x, 3.x, 4.x), **Typescript** (AngularJS, Angular (2.x - 7.x), Aurelia, Axios, Fetch, Inversify, jQuery, Node, Rxjs)
**Server stubs** | **Ada**, **C#** (ASP.NET Core, NancyFx), **C++** (Pistache, Restbed, Qt5 QHTTPEngine), **Erlang**, **F#** (Giraffe), **Go** (net/http, Gin), **Haskell** (Servant), **Java** (MSF4J, Spring, Undertow, JAX-RS: CDI, CXF, Inflector, RestEasy, Play Framework, [PKMST](https://github.com/ProKarma-Inc/pkmst-getting-started-examples)), **Kotlin** (Spring Boot, Ktor), **PHP** (Laravel, Lumen, Slim, Silex, [Symfony](https://symfony.com/), [Zend Expressive](https://github.com/zendframework/zend-expressive)), **Python** (Flask), **NodeJS**, **Ruby** (Sinatra, Rails5), **Rust** (rust-server), **Scala** ([Finch](https://github.com/finagle/finch), [Lagom](https://github.com/lagom/lagom), [Play](https://www.playframework.com/), Scalatra)
**API documentation generators** | **HTML**, **Confluence Wiki**
**Configuration files** | [**Apache2**](https://httpd.apache.org/)
**Others** | **GraphQL**, **JMeter**, **MySQL Schema**, **Protocol Buffer**
**Others** | **GraphQL**, **JMeter**, **MySQL Schema**
## Table of contents
@@ -84,7 +81,6 @@ OpenAPI Generator allows generation of API client libraries (SDK generation), se
- [3.2 - Workflow Integration](#32---workflow-integration-maven-gradle-github-cicd)
- [3.3 - Online Generators](#33---online-openapi-generator)
- [3.4 - License Information on Generated Code](#34---license-information-on-generated-code)
- [3.5 - IDE Integration](#35---ide-integration)
- [4 - Companies/Projects using OpenAPI Generator](#4---companiesprojects-using-openapi-generator)
- [5 - Presentations/Videos/Tutorials/Books](#5---presentationsvideostutorialsbooks)
- [6 - About Us](#6---about-us)
@@ -102,8 +98,9 @@ The OpenAPI Specification has undergone 3 revisions since initial creation in 20
OpenAPI Generator Version | Release Date | Notes
---------------------------- | ------------ | -----
5.0.0 (upcoming major release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/5.0.0-SNAPSHOT/)| 13.05.2020 | Major release with breaking changes (no fallback)
4.2.0 (upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/4.2.0-SNAPSHOT/)| 09.10.2019 | Minor release (breaking changes with fallbacks)
[4.1.3](https://github.com/OpenAPITools/openapi-generator/releases/tag/v4.1.3) (latest stable release) | 04.10.2019 | Patch release (bug fixes, enhancements)
4.1.0 (upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/4.1.0-SNAPSHOT/)| 15.07.2019 | Minor release (breaking changes with fallbacks)
4.0.3 (upcoming patch release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/4.0.3-SNAPSHOT/)| 04.07.2019 | Patch release (minor bug fixes, etc)
[4.0.2](https://github.com/OpenAPITools/openapi-generator/releases/tag/v4.0.2) (latest stable release) | 20.06.2019 | Patch release (bug fixes, minor enhancements, etc)
OpenAPI Spec compatibility: 1.0, 1.1, 1.2, 2.0, 3.0
@@ -159,16 +156,16 @@ See the different versions of the [openapi-generator-cli](https://mvnrepository.
<!-- RELEASE_VERSION -->
If you're looking for the latest stable version, you can grab it directly from Maven.org (Java 8 runtime at a minimum):
JAR location: `http://central.maven.org/maven2/org/openapitools/openapi-generator-cli/4.1.3/openapi-generator-cli-4.1.3.jar`
JAR location: `http://central.maven.org/maven2/org/openapitools/openapi-generator-cli/4.0.2/openapi-generator-cli-4.0.2.jar`
For **Mac/Linux** users:
```sh
wget http://central.maven.org/maven2/org/openapitools/openapi-generator-cli/4.1.3/openapi-generator-cli-4.1.3.jar -O openapi-generator-cli.jar
wget http://central.maven.org/maven2/org/openapitools/openapi-generator-cli/4.0.2/openapi-generator-cli-4.0.2.jar -O openapi-generator-cli.jar
```
For **Windows** users, you will need to install [wget](http://gnuwin32.sourceforge.net/packages/wget.htm) or you can use Invoke-WebRequest in PowerShell (3.0+), e.g.
```
Invoke-WebRequest -OutFile openapi-generator-cli.jar http://central.maven.org/maven2/org/openapitools/openapi-generator-cli/4.1.3/openapi-generator-cli-4.1.3.jar
Invoke-WebRequest -OutFile openapi-generator-cli.jar http://central.maven.org/maven2/org/openapitools/openapi-generator-cli/4.0.2/openapi-generator-cli-4.0.2.jar
```
After downloading the JAR, run `java -jar openapi-generator-cli.jar help` to show the usage.
@@ -226,9 +223,9 @@ openapi-generator-cli version # is always 3.0.2, unless any of the above overrid
To build from source, you need the following installed and available in your `$PATH:`
* [Java 8](https://www.oracle.com/technetwork/java/index.html)
* [Java 8](http://java.oracle.com)
* [Apache Maven 3.3.4 or greater](https://maven.apache.org/)
* [Apache Maven 3.3.4 or greater](http://maven.apache.org/)
After cloning the project, you can build it from source with this command:
```sh
@@ -251,17 +248,6 @@ openapi-generator generate -i https://raw.githubusercontent.com/openapitools/ope
To reinstall with the latest master, run `brew uninstall openapi-generator && brew install --HEAD openapi-generator`
To install OpenJDK (pre-requisites), please run
```sh
brew cask install adoptopenjdk12
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-12.0.2.jdk/Contents/Home/
```
To install Maven, please run
```sh
brew install maven
```
### [1.6 - Docker](#table-of-contents)
#### Public Pre-built Docker images
@@ -295,7 +281,7 @@ Example usage:
```sh
# Start container at port 8888 and save the container id
> CID=$(docker run -d -p 8888:8080 openapitools/openapi-generator-online)
> CID=$(docker run -d -p 8888:8080 -e GENERATOR_HOST=http://localhost:8888 openapitools/openapi-generator-online)
# allow for startup
> sleep 10
@@ -362,7 +348,7 @@ Right now: no solution for this one :|
#### Run Docker in Vagrant
Prerequisite: install [Vagrant](https://www.vagrantup.com/downloads.html) and [VirtualBox](https://www.virtualbox.org/wiki/Downloads).
```sh
git clone https://github.com/openapitools/openapi-generator.git
git clone http://github.com/openapitools/openapi-generator.git
cd openapi-generator
vagrant up
vagrant ssh
@@ -383,10 +369,10 @@ openapi-generator version
```
<!-- RELEASE_VERSION -->
Or install a particular OpenAPI Generator version (e.g. v4.1.3):
Or install a particular OpenAPI Generator version (e.g. v4.0.2):
```sh
npm install @openapitools/openapi-generator-cli@cli-4.1.3 -g
npm install @openapitools/openapi-generator-cli@cli-4.0.2 -g
```
Or install it as dev-dependency:
@@ -410,7 +396,7 @@ java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generat
(if you're on Windows, replace the last command with `java -jar modules\openapi-generator-cli\target\openapi-generator-cli.jar generate -i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g php -o c:\temp\php_api_client`)
<!-- RELEASE_VERSION -->
You can also download the JAR (latest release) directly from [maven.org](http://central.maven.org/maven2/org/openapitools/openapi-generator-cli/4.1.3/openapi-generator-cli-4.1.3.jar)
You can also download the JAR (latest release) directly from [maven.org](http://central.maven.org/maven2/org/openapitools/openapi-generator-cli/4.0.2/openapi-generator-cli-4.0.2.jar)
<!-- /RELEASE_VERSION -->
To get a list of **general** options available, please run `java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar help generate`
@@ -449,7 +435,7 @@ NAME
SYNOPSIS
openapi-generator-cli generate
[(-a <authorization> | --auth <authorization>)]
[--api-name-suffix <api name suffix>]
[--additional-properties <additional properties>...]
[--api-package <api package>] [--artifact-id <artifact id>]
[--artifact-version <artifact version>]
[(-c <configuration file> | --config <configuration file>)]
@@ -470,13 +456,12 @@ SYNOPSIS
[--model-name-prefix <model name prefix>]
[--model-name-suffix <model name suffix>]
[--model-package <model package>]
[(-o <output directory> | --output <output directory>)]
[(-p <additional properties> | --additional-properties <additional properties>)...]
[(-o <output directory> | --output <output directory>)]
[--package-name <package name>] [--release-note <release note>]
[--remove-operation-id-prefix]
[--reserved-words-mappings <reserved word mappings>...]
[(-s | --skip-overwrite)] [--server-variables <server variables>...]
[--skip-validate-spec] [--strict-spec <true/false strict behavior>]
[(-s | --skip-overwrite)] [--skip-validate-spec]
[--strict-spec <true/false strict behavior>]
[(-t <template directory> | --template-dir <template directory>)]
[--type-mappings <type mappings>...] [(-v | --verbose)]
@@ -521,8 +506,8 @@ Please refer to [integration.md](docs/integration.md) on how to integrate OpenAP
Here are the public online services:
- latest stable version: https://api.openapi-generator.tech
- latest master: https://api-latest-master.openapi-generator.tech (updated with latest master every hour)
- latest stable version: http://api.openapi-generator.tech
- latest master: http://api-latest-master.openapi-generator.tech (updated with latest master every hour)
The server is sponsored by [Linode](https://www.linode.com/) [![Linode Logo](https://www.linode.com/media/images/logos/standard/light/linode-logo_standard_light_small.png)](https://www.linode.com/)
@@ -538,76 +523,41 @@ The OpenAPI Generator project is intended as a benefit for users of the Open API
* Generated code is intentionally _not_ subject to the parent project license
When code is generated from this project, it shall be considered **AS IS** and owned by the user of the software. There are no warranties--expressed or implied--for generated code. You can do what you wish with it, and once generated, the code is your responsibility and subject to the licensing terms that you deem appropriate.
### [3.5 - IDE Integration](#table-of-contents)
Here is a list of community-conitributed IDE plug-ins that integrate with OpenAPI Generator:
- Eclipse: [Codewind OpenAPI Tools for Eclipse](https://www.eclipse.org/codewind/open-api-tools-for-eclipse.html) by [IBM](https://www.ibm.com)
- IntelliJ IDEA: [OpenAPI Generator](https://plugins.jetbrains.com/plugin/8433-openapi-generator) by [Jim Schubert](https://jimschubert.us/#/)
- IntelliJ IDEA: [Senya Editor](https://plugins.jetbrains.com/plugin/10690-senya-editor) by [senya.io](https://senya.io)
- [RepreZen API Studio](https://www.reprezen.com/)
- Visual Studio: [REST API Client Code Generator](https://marketplace.visualstudio.com/items?itemName=ChristianResmaHelle.ApiClientCodeGenerator) by [Christian Resma Helle](https://christian-helle.blogspot.com/)
- Visual Studio Code: [Codewind OpenAPI Tools](https://marketplace.visualstudio.com/items?itemName=IBM.codewind-openapi-tools) by [IBM](https://marketplace.visualstudio.com/publishers/IBM)
## [4 - Companies/Projects using OpenAPI Generator](#table-of-contents)
Here are some companies/projects (alphabetical order) using OpenAPI Generator in production. To add your company/project to the list, please visit [README.md](README.md) and click on the icon to edit the page.
- [Adaptant Solutions AG](https://www.adaptant.io/)
- [Angular.Schule](https://angular.schule/)
- [Australia and New Zealand Banking Group (ANZ)](http://www.anz.com/)
- [ASKUL](https://www.askul.co.jp)
- [Arduino](https://www.arduino.cc/)
- [b<>com](https://b-com.com/en)
- [Banzai Cloud](https://banzaicloud.com)
- [BIMData.io](https://bimdata.io)
- [Bithost GmbH](https://www.bithost.ch)
- [Bosch Connected Industry](https://www.bosch-connected-industry.com)
- [Boxever](https://www.boxever.com/)
- [California State University, Northridge](https://www.csun.edu)
- [CAM](https://www.cam-inc.co.jp/)
- [Camptocamp](https://www.camptocamp.com/en)
- [codecentric AG](https://www.codecentric.de/)
- [Commencis](https://www.commencis.com/)
- [Cupix](https://www.cupix.com/)
- [DB Systel](https://www.dbsystel.de)
- [dwango](https://dwango.co.jp/)
- [Edge Impulse](https://www.edgeimpulse.com/)
- [Element AI](https://www.elementai.com/)
- [Fenergo](https://www.fenergo.com/)
- [FormAPI](https://formapi.io/)
- [Fuse](https://www.fuse.no/)
- [Gantner](https://www.gantner.com)
- [GenFlow](https://github.com/RepreZen/GenFlow)
- [GMO Pepabo](https://pepabo.com/en/)
- [GoDaddy](https://godaddy.com)
- [Here](https://developer.here.com/)
- [IBM](https://www.ibm.com/)
- [JustStar](https://www.juststarinfo.com)
- [Klarna](https://www.klarna.com/)
- [Médiavision](https://www.mediavision.fr/)
- [Metaswitch](https://www.metaswitch.com/)
- [Myworkout](https://myworkout.com)
- [NamSor](https://www.namsor.com/)
- [Openet](https://www.openet.com/)
- [Paxos](https://www.paxos.com)
- [Ponicode](https://ponicode.dev/)
- [Pricefx](https://www.pricefx.com/)
- [Prometheus/Alertmanager](https://github.com/prometheus/alertmanager)
- [Raiffeisen Schweiz Genossenschaft](https://www.raiffeisen.ch)
- [RedHat](https://www.redhat.com)
- [RepreZen API Studio](https://www.reprezen.com/swagger-openapi-code-generation-api-first-microservices-enterprise-development)
- [REST United](https://restunited.com)
- [Stingray](http://www.stingray.com)
- [Suva](https://www.suva.ch/)
- [Telstra](https://dev.telstra.com)
- [TravelTime platform](https://www.traveltimeplatform.com/)
- [TUI InfoTec GmbH](http://www.tui-infotec.com/)
- [unblu inc.](https://www.unblu.com/)
- [Veamly](https://www.veamly.com/)
- [WSO2](https://wso2.com/)
- [Vouchery.io](https://vouchery.io)
- [Xero](https://www.xero.com/)
- [Yelp](https://www.yelp.com/)
- [Zalando](https://www.zalando.com)
@@ -630,7 +580,6 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- 2018/12/09 - [openapi-generator をカスタマイズする方法](https://qiita.com/watiko/items/0961287c02eac9211572) by [@watiko](https://qiita.com/watiko)
- 2019/01/03 - [Calling a Swagger service from Apex using openapi-generator](https://lekkimworld.com/2019/01/03/calling-a-swagger-service-from-apex-using-openapi-generator/) by [Mikkel Flindt Heisterberg](https://lekkimworld.com)
- 2019/01/13 - [OpenAPI GeneratorでRESTful APIの定義書から色々自動生成する](https://ky-yk-d.hatenablog.com/entry/2019/01/13/234108) by [@ky_yk_d](https://twitter.com/ky_yk_d)
- 2019/01/20 - [Contract-First API Development with OpenAPI Generator and Connexion](https://medium.com/commencis/contract-first-api-development-with-openapi-generator-and-connexion-b21bbf2f9244) by [Anil Can Aydin](https://github.com/anlcnydn)
- 2019/01/30 - [Rapid Application Development With API First Approach Using Open-API Generator](https://dzone.com/articles/rapid-api-development-using-open-api-generator) by [Milan Sonkar](https://dzone.com/users/828329/milan_sonkar.html)
- 2019/02/02 - [平静を保ち、コードを生成せよ 〜 OpenAPI Generator誕生の背景と軌跡 〜](https://speakerdeck.com/akihito_nakano/gunmaweb34) by [中野暁人](https://github.com/ackintosh) at [Gunma.web #34 スキーマ駆動開発](https://gunmaweb.connpass.com/event/113974/)
- 2019/02/20 - [An adventure in OpenAPI V3 code generation](https://mux.com/blog/an-adventure-in-openapi-v3-api-code-generation/) by [Phil Cluff](https://mux.com/blog/author/philc/)
@@ -648,35 +597,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
- 2019-05-22 - [REST APIs代码生成指南(OpenAPI Generator)](https://gum.co/openapi_generator_ebook_gb) by [William Cheng](https://twitter.com/wing328), [Xin Meng](https://github.com/xmeng1)
- 2019-05-24 - [REST API 代碼生成指南 (OpenAPI Generator)](https://gum.co/openapi_generator_ebook_big5) by [William Cheng](https://twitter.com/wing328)
- 2019-06-24 - [Kubernetes Clients and OpenAPI Generator](https://speakerdeck.com/wing328/kubernetes-clients-and-openapi-generator) by [William Cheng](https://twitter.com/wing328) at [Kubernetes Contributor Summits Shanghai 2019](https://www.lfasiallc.com/events/contributors-summit-china-2019/)
- 2019-06-28 [Codewind OpenAPI Tools](https://marketplace.eclipse.org/content/codewind-openapi-tools) in [Eclipse Marketplace](https://marketplace.eclipse.org/) by IBM
- 2019-06-29 [Codewind OpenAPI Tools](https://marketplace.visualstudio.com/items?itemName=IBM.codewind-openapi-tools) in [Visual Studio Marketplace](https://marketplace.visualstudio.com/) by IBM
- 2019-07-04 - [REST API のためのコード生成入門 (OpenAPI Generator)](https://gum.co/openapi_generator_ebook_big5) by [William Cheng](https://twitter.com/wing328), [中野暁人](https://github.com/ackintosh), [和田拓朗](https://github.com/taxpon)
- 2019-07-08 - [OpenAPI Generator にコントリビュートしたら社名が載った話。(CAM) - CAM TECH BLOG](https://tech.cam-inc.co.jp/entry/2019/07/08/140000) by [CAM, Inc.](https://www.cam-inc.co.jp/)
- 2019-07-14 - [OpenAPI GeneratorでPythonのクライアントライブラリを作成した](https://qiita.com/yuji38kwmt/items/dfb929316a1335a161c0) by [yuji38kwmt](https://qiita.com/yuji38kwmt)
- 2019-07-19 - [Developer Experience (DX) for Open-Source Projects: How to Engage Developers and Build a Growing Developer Community](https://speakerdeck.com/wing328/developer-experience-dx-for-open-source-projects-english-japanese) by [William Cheng](https://twitter.com/wing328), [中野暁人](https://github.com/ackintosh) at [Open Source Summit Japan 2019](https://events.linuxfoundation.org/events/open-source-summit-japan-2019/)
- 2019-08-14 - [Our OpenAPI journey with Standardizing SDKs](https://bitmovin.com/our-openapi-journey-with-standardizing-sdks/) by [Sebastian Burgstaller](https://bitmovin.com/author/sburgstaller/) at [Bitmovin](https://www.bitmovin.com)
- 2019-08-15 - [APIのコードを自動生成させたいだけならgRPCでなくてもよくない?](https://www.m3tech.blog/entry/2019/08/15/110000) by [M3, Inc.](https://corporate.m3.com/)
- 2019-08-22 - [マイクロサービスにおけるWeb APIスキーマの管理─ GraphQL、gRPC、OpenAPIの特徴と使いどころ](https://employment.en-japan.com/engineerhub/entry/2019/08/22/103000) by [@ota42y](https://twitter.com/ota42y)
- 2019-08-24 - [SwaggerドキュメントからOpenAPI Generatorを使ってモックサーバー作成](https://qiita.com/masayoshi0222/items/4845e4c715d04587c104) by [坂本正義](https://qiita.com/masayoshi0222)
- 2019-08-29 - [OpenAPI初探](https://cloud.tencent.com/developer/article/1495986) by [peakxie](https://cloud.tencent.com/developer/user/1113152) at [腾讯云社区](https://cloud.tencent.com/developer)
- 2019-08-29 - [全面进化Kubernetes CRD 1.16 GA前瞻](https://www.servicemesher.com/blog/kubernetes-1.16-crd-ga-preview/) by [Min Kim](https://github.com/yue9944882) at [ServiceMesher Blog](https://www.servicemesher.com/blog/)
- 2019-09-01 - [Creating a PHP-Slim server using OpenAPI (Youtube video)](https://www.youtube.com/watch?v=5cJtbIrsYkg) by [Daniel Persson](https://www.youtube.com/channel/UCnG-TN23lswO6QbvWhMtxpA)
- 2019-09-06 - [Vert.x and OpenAPI](https://wissel.net/blog/2019/09/vertx-and-openapi.html) by [Stephan H Wissel](https://twitter.com/notessensei) at [wissel.net blog](https://wissel.net)
- 2019-09-09 - [Cloud-native development - Creating RESTful microservices](https://cloud.ibm.com/docs/cloud-native?topic=cloud-native-rest-api) in [IBM Cloud Docs](https://cloud.ibm.com/docs)
- 2019-09-14 - [Generating and Configuring a Mastercard API Client](https://developer.mastercard.com/platform/documentation/generating-and-configuring-a-mastercard-api-client/) at [Mastercard Developers Platform](https://developer.mastercard.com/platform/documentation/)
- 2019-09-15 - [OpenAPI(Swagger)導入下調べ](https://qiita.com/ShoichiKuraoka/items/f1f7a3c2376f7cd9c56a) by [Shoichi Kuraoka](https://qiita.com/ShoichiKuraoka)
- 2019-09-17 - [Tutorial: Documenting http4k APIs with OpenApi3](https://www.http4k.org/tutorials/documenting_apis_with_openapi/) by [http4k](https://www.http4k.org/)
- 2019-09-22 - [OpenAPI 3を完全に理解できる本](https://booth.pm/ja/items/1571902) by [@ota42y](https://twitter.com/ota42y)
- 2019-09-22 - [RESTful APIs: Tutorial of OpenAPI Specification](https://medium.com/@amirm.lavasani/restful-apis-tutorial-of-openapi-specification-eeada0e3901d) by [Amir Lavasani](https://medium.com/@amirm.lavasani)
- 2019-09-22 - [Redefining SDKs as software diversity kits](https://devrel.net/dev-rel/redefining-sdks-as-software-diversity-kits) by [Sid Maestre (Xero)](https://twitter.com/sidneyallen) at [DevRelCon San Francisco 2019](https://sf2019.devrel.net/)
- 2019-09-23 - [swaggerからOpenApi GeneratorでSpringのコードを自動生成](https://qiita.com/littleFeet/items/492df2ad68a0799a5e5e) by [@littleFeet](https://qiita.com/littleFeet) at [Qiita](https://qiita.com/)
- 2019-09-24 - [Eine Stunde was mit Api First!](https://www.slideshare.net/JanWeinschenker/eine-stunde-was-mit-api-first) by [@janweinschenker](https://twitter.com/janweinschenker) at [Java Forum Nord](https://javaforumnord.de/)
- 2019-10-09 - [openapi-generator で生成した Go クライアントで Bearer 認証をする](https://autopp-tech.hatenablog.com/entry/2019/10/09/222039) by [Akira Tanimura](https://github.com/autopp)
- 2019-10-10 - [Automatic Generation of REST Clients](https://www.meetup.com/fr-FR/Criteo-Labs-Tech-Talks/events/264775768/) by Thomas Peyrard, Senior Software Engineer at Criteo in [Full-Stack Tech Talks (Meetup)](https://www.meetup.com/fr-FR/Criteo-Labs-Tech-Talks/events/264775768/)
- 2019-10-12 - [OpenApi自动生成client](https://blog.csdn.net/wxid2798226/article/details/102527467) by [郑泽洲](https://me.csdn.net/wxid2798226)
- 2019-10-16 - [How to ship APIs faster?](https://medium.com/@accounts_76224/how-to-ship-apis-faster-cabef2f819e4) by [Simon Guilliams @ PoniCode](https://ponicode.dev)
- 2019-10-22 - [OpenAPI + Spring Boot(Kotlin)でファイルダウンロードAPIを作成する](https://qiita.com/boronngo/items/4b78b92526209daeaee9) by [Yuki Furukawa](https://twitter.com/yuki_furukawa5)
- 2019-10-24 - [Microprofile OpenAPI - Code First or Design First?](https://github.com/pe-st/apidocs/blob/master/MicroProfile-OpenAPI-all-slides.pdf) by [Peter [pɛʃə] Steiner](https://twitter.com/pesche) at [eclipsecon Europe 2019](https://www.eclipsecon.org/europe2019/sessions/microprofile-openapi-code-first-or-design-first)
## [6 - About Us](#table-of-contents)
@@ -713,7 +634,6 @@ Here is a list of template creators:
* Dart (refactor): @joernahrens
* Dart 2: @swipesight
* Dart (Jaguar): @jaumard
* Dart (Dio): @athornz
* Elixir: @niku
* Elm: @eriktim
* Eiffel: @jvelilla
@@ -734,21 +654,16 @@ Here is a list of template creators:
* Java (Vertx): @lopesmcc
* Java (Google APIs Client Library): @charlescapps
* Java (Rest-assured): @viclovsky
* Java (Java 11 Native HTTP client): @bbdouglas
* Javascript/NodeJS: @jfiala
* Javascript (Closure-annotated Angular) @achew22
* Javascript (Flow types) @jaypea
* JMeter: @davidkiss
* Kotlin: @jimschubert [:heart:](https://www.patreon.com/jimschubert)
* Kotlin (MultiPlatform): @andrewemery
* Lua: @daurnimator
* Nim: @hokamoto
* OCaml: @cgensoul
* Perl: @wing328 [:heart:](https://www.patreon.com/wing328)
* PHP (Guzzle): @baartosz
* PowerShell: @beatcracker
* R: @ramnov
* Ruby (Faraday): @meganemura @dkliban
* Rust: @farcaller
* Rust (rust-server): @metaswitch
* Scala (scalaz & http4s): @tbrown1979
@@ -785,15 +700,12 @@ Here is a list of template creators:
* Java Undertow: @stevehu
* Java Play Framework: @JFCote
* Java PKMST: @anshu2185 @sanshuman @rkumar-pk @ninodpillai
* Java Vert.x: @lwlee2608
* JAX-RS RestEasy: @chameleon82
* JAX-RS CXF: @hiveship
* JAX-RS CXF (CDI): @nickcmaynard
* JAX-RS RestEasy (JBoss EAP): @jfiala
* Kotlin: @jimschubert [:heart:](https://www.patreon.com/jimschubert)
* Kotlin (Spring Boot): @dr4ke616
* Kotlin (Vertx): @Wooyme
* NodeJS Express: @YishTish
* PHP Laravel: @renepardon
* PHP Lumen: @abcsun
* PHP Slim: @jfastnacht
@@ -806,16 +718,13 @@ Here is a list of template creators:
* Scala Lagom: @gmkumar2005
* Scala Play: @adigerber
* Documentation
* AsciiDoc: @man-at-home
* HTML Doc 2: @jhitchcock
* Confluence Wiki: @jhitchcock
* Configuration
* Apache2: @stkrwork
* Schema
* Avro: @sgadouar
* GraphQL: @wing328 [:heart:](https://www.patreon.com/wing328)
* MySQL: @ybelenko
* Protocol Buffer: @wing328
:heart: = Link to support the contributor directly
@@ -856,36 +765,34 @@ If you want to join the committee, please kindly apply by sending an email to te
| Apex | |
| Bash | @frol (2017/07) @bkryza (2017/08) @kenjones-cisco (2017/09) |
| C | @zhemant (2018/11) |
| C++ | @ravinikam (2017/07) @stkrwork (2017/07) @etherealjoy (2018/02) @martindelille (2018/03) @muttleyxd (2019/08) |
| C# | @mandrean (2017/08), @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert) @frankyjuang (2019/09) |
| C++ | @ravinikam (2017/07) @stkrwork (2017/07) @etherealjoy (2018/02) @martindelille (2018/03) |
| C# | @mandrean (2017/08), @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert) |
| Clojure | |
| Dart | @ircecho (2017/07) @swipesight (2018/09) @jaumard (2018/09) @nickmeinhold (2019/09) |
| Dart | @ircecho (2017/07) @swipesight (2018/09) @jaumard (2018/09) |
| Eiffel | @jvelilla (2017/09) |
| Elixir | @mrmstn (2018/12) |
| Elm | @eriktim (2018/09) |
| Erlang | @tsloughter (2017/11) @jfacorro (2018/10) @robertoaloi (2018/10) |
| F# | @nmfisher (2019/05) |
| Go | @antihax (2017/11) @bvwells (2017/12) @grokify (2018/07) @kemokemo (2018/09) @bkabrda (2019/07) |
| Go | @antihax (2017/11) @bvwells (2017/12) @grokify (2018/07) @kemokemo (2018/09 |
| GraphQL | @renepardon (2018/12) |
| Groovy | |
| Haskell | |
| Java | @bbdouglas (2017/07) @sreeshas (2017/08) @jfiala (2017/08) @lukoyanov (2017/09) @cbornet (2017/09) @jeff9finger (2018/01) @karismann (2019/03) @Zomzog (2019/04) @lwlee2608 (2019/10) |
| Kotlin | @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert), @dr4ke616 (2018/08) @karismann (2019/03) @Zomzog (2019/04) @andrewemery (2019/10) |
| Java | @bbdouglas (2017/07) @sreeshas (2017/08) @jfiala (2017/08) @lukoyanov (2017/09) @cbornet (2017/09) @jeff9finger (2018/01) @karismann (2019/03) @Zomzog (2019/04) |
| Kotlin | @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert), @dr4ke616 (2018/08) @karismann (2019/03) @Zomzog (2019/04) |
| Lua | @daurnimator (2017/08) |
| Nim | |
| NodeJS/Javascript | @CodeNinjai (2017/07) @frol (2017/07) @cliffano (2017/07) |
| ObjC | |
| OCaml | @cgensoul (2019/08) |
| Perl | @wing328 (2017/07) [:heart:](https://www.patreon.com/wing328) @yue9944882 (2019/06) |
| PHP | @jebentier (2017/07), @dkarlovi (2017/07), @mandrean (2017/08), @jfastnacht (2017/09), @ackintosh (2017/09) [:heart:](https://www.patreon.com/ackintosh/overview), @ybelenko (2018/07), @renepardon (2018/12) |
| PowerShell | |
| Python | @taxpon (2017/07) @frol (2017/07) @mbohlool (2017/07) @cbornet (2017/09) @kenjones-cisco (2017/11) @tomplus (2018/10) @Jyhess (2019/01) |
| R | @Ramanth (2019/07) @saigiridhar21 (2019/07) |
| Ruby | @cliffano (2017/07) @zlx (2017/09) @autopp (2019/02) |
| Rust | @frol (2017/07) @farcaller (2017/08) @bjgill (2017/12) @richardwhiuk (2019/07) |
| Rust | @frol (2017/07) @farcaller (2017/08) @bjgill (2017/12) |
| Scala | @clasnake (2017/07), @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert), @shijinkui (2018/01), @ramzimaalej (2018/03) |
| Swift | @jgavris (2017/07) @ehyche (2017/08) @Edubits (2017/09) @jaz-ah (2017/09) @d-date (2018/03) |
| TypeScript | @TiFu (2017/07) @taxpon (2017/07) @sebastianhaas (2017/07) @kenisteward (2017/07) @Vrolijkx (2017/09) @macjohnny (2018/01) @nicokoenig (2018/09) @topce (2018/10) @akehir (2019/07) |
| TypeScript | @TiFu (2017/07) @taxpon (2017/07) @sebastianhaas (2017/07) @kenisteward (2017/07) @Vrolijkx (2017/09) @macjohnny (2018/01) @nicokoenig (2018/09) @topce (2018/10) |
:heart: = Link to support the contributor directly
@@ -955,7 +862,7 @@ Copyright 2018 SmartBear Software
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at [apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0)
You may obtain a copy of the License at [apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,

View File

@@ -30,7 +30,7 @@ export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
model="modules/openapi-generator/src/test/resources/2_0/petstore.yaml"
ags="generate --template-dir modules/openapi-generator/src/main/resources/Ada -g ada $@"
ags="$ags -i $model -t modules/openapi-generator/src/main/resources/Ada -o samples/client/petstore/ada"
ags="$ags --additional-properties projectName=Petstore --model-package Samples.Petstore"
ags="$ags -DprojectName=Petstore --model-package Samples.Petstore"
java $JAVA_OPTS -jar $executable $ags
rm -rf samples/client/petstore/ada/src/server

View File

@@ -27,6 +27,6 @@ fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="generate -t modules/openapi-generator/src/main/resources/android -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g android --additional-properties library=httpclient -o samples/client/petstore/android/httpclient $@"
ags="generate -t modules/openapi-generator/src/main/resources/android -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g android -Dlibrary=httpclient -o samples/client/petstore/android/httpclient $@"
java $JAVA_OPTS -jar $executable $ags

View File

@@ -1,31 +0,0 @@
#!/bin/sh
SCRIPT="$0"
while [ -h "$SCRIPT" ] ; do
ls=$(ls -ld "$SCRIPT")
link=$(expr "$ls" : '.*-> \(.*\)$')
if expr "$link" : '/.*' > /dev/null; then
SCRIPT="$link"
else
SCRIPT=$(dirname "$SCRIPT")/"$link"
fi
done
if [ ! -d "${APP_DIR}" ]; then
APP_DIR=$(dirname "$SCRIPT")/..
APP_DIR=$(cd "${APP_DIR}"; pwd)
fi
executable="./modules/openapi-generator-cli/target/openapi-generator-cli.jar"
if [ ! -f "$executable" ]
then
mvn clean package
fi
# if you've executed sbt assembly previously it will use that instead.
export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
ags="$@ generate -t modules/openapi-generator/src/main/resources/asciidoc-documentation --additional-properties=specDir=modules/openapi-generator/src/main/resources/asciidoc-documentation,snippetDir=. -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g asciidoc -o samples/documentation/asciidoc"
java ${JAVA_OPTS} -jar ${executable} ${ags}

View File

@@ -1,6 +0,0 @@
{
"generatorName": "apex",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/client/petstore/apex",
"templateDir": "modules/openapi-generator/src/main/resources/apex"
}

View File

@@ -1,11 +0,0 @@
{
"generatorName": "csharp-netcore",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/csharp-netcore/OpenAPIClientCore",
"templateDir": "modules/openapi-generator/src/main/resources/csharp-netcore/",
"additionalProperties": {
"packageGuid": "{321C8C3F-0156-40C1-AE42-D59761FB9B6C}",
"useCompareNetObjects": true,
"targetFramework": "netcoreapp2.0"
}
}

View File

@@ -1,10 +0,0 @@
{
"generatorName": "csharp-netcore",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/csharp-netcore/OpenAPIClient",
"templateDir": "modules/openapi-generator/src/main/resources/csharp-netcore/",
"additionalProperties": {
"packageGuid": "{321C8C3F-0156-40C1-AE42-D59761FB9B6C}",
"useCompareNetObjects": true
}
}

View File

@@ -1,8 +0,0 @@
{
"generatorName": "csharp",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/csharp/OpenAPIClient",
"additionalProperties": {
"packageGuid": "{321C8C3F-0156-40C1-AE42-D59761FB9B6C}"
}
}

View File

@@ -1,11 +0,0 @@
{
"generatorName": "dart",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/client/petstore/dart/flutter_petstore/openapi",
"templateDir": "modules/openapi-generator/src/main/resources/dart",
"additionalProperties": {
"hideGenerationTimestamp": true,
"browserClient": false,
"supportDart2": false
}
}

View File

@@ -1,10 +0,0 @@
{
"generatorName": "dart-jaguar",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/client/petstore/dart-jaguar/flutter_petstore/openapi",
"templateDir": "modules/openapi-generator/src/main/resources/dart-jaguar",
"additionalProperties": {
"hideGenerationTimestamp": true,
"pubName": "openapi"
}
}

View File

@@ -1,11 +0,0 @@
{
"generatorName": "dart-jaguar",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-proto.yaml",
"outputDir": "samples/client/petstore/dart-jaguar/flutter_proto_petstore/openapi",
"templateDir": "modules/openapi-generator/src/main/resources/dart-jaguar",
"additionalProperties": {
"serialization": "proto",
"hideGenerationTimestamp": true,
"pubName": "openapi"
}
}

View File

@@ -1,11 +0,0 @@
{
"generatorName": "dart-jaguar",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-proto.yaml",
"outputDir": "samples/client/petstore/dart-jaguar/openapi_proto",
"templateDir": "modules/openapi-generator/src/main/resources/dart-jaguar",
"additionalProperties": {
"serialization": "proto",
"hideGenerationTimestamp": true,
"pubName": "openapi"
}
}

View File

@@ -1,10 +0,0 @@
{
"generatorName": "dart-jaguar",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/client/petstore/dart-jaguar/openapi",
"templateDir": "modules/openapi-generator/src/main/resources/dart-jaguar",
"additionalProperties": {
"hideGenerationTimestamp": true,
"pubName": "openapi"
}
}

View File

@@ -1,11 +0,0 @@
{
"generatorName": "dart",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/client/petstore/dart/flutter_petstore/openapi",
"templateDir": "modules/openapi-generator/src/main/resources/dart",
"additionalProperties": {
"hideGenerationTimestamp": true,
"browserClient": false,
"supportDart2": false
}
}

View File

@@ -1,11 +0,0 @@
{
"generatorName": "dart",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/client/petstore/dart/openapi-browser-client",
"templateDir": "modules/openapi-generator/src/main/resources/dart",
"additionalProperties": {
"hideGenerationTimestamp": true,
"browserClient": true,
"supportDart2": false
}
}

View File

@@ -1,11 +0,0 @@
{
"generatorName": "dart",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/client/petstore/dart/openapi",
"templateDir": "modules/openapi-generator/src/main/resources/dart",
"additionalProperties": {
"hideGenerationTimestamp": true,
"browserClient": false,
"supportDart2": false
}
}

View File

@@ -1,9 +0,0 @@
{
"generatorName": "dart",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/client/petstore/dart2/openapi",
"templateDir": "modules/openapi-generator/src/main/resources/dart2",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,9 +0,0 @@
{
"generatorName": "elixir",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/elixir/",
"templateDir": "modules/openapi-generator/src/main/resources/elixir",
"additionalProperties": {
"invokerPackage": "OpenapiPetstore"
}
}

View File

@@ -1,10 +0,0 @@
{
"generatorName": "go-gin-server",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/go-gin-api-server",
"templateDir": "modules/openapi-generator/src/main/resources/go-gin-server",
"additionalProperties": {
"packageName": "petstoreserver",
"hideGenerationTimestamp": true
}
}

View File

@@ -1,11 +0,0 @@
{
"generatorName": "go",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/go/go-petstore-withXml",
"templateDir": "modules/openapi-generator/src/main/resources/go",
"additionalProperties": {
"packageName": "petstore",
"withXml": true,
"withGoCodegenComment": true
}
}

View File

@@ -1,9 +0,0 @@
{
"generatorName": "go",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/go/go-petstore",
"templateDir": "modules/openapi-generator/src/main/resources/go",
"additionalProperties": {
"packageName": "petstore"
}
}

View File

@@ -1,9 +0,0 @@
{
"generatorName": "groovy",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/client/petstore/groovy",
"templateDir": "modules/openapi-generator/src/main/resources/Groovy/",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,6 +0,0 @@
{
"generatorName": "haskell-http-client",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/haskell-http-client",
"templateDir": "modules/openapi-generator/src/main/resources/haskell-http-client"
}

View File

@@ -1,11 +0,0 @@
{
"!include": "bin/java-petstore-feign-9x.json",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/feign",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/feign",
"additionalProperties": {
"hideGenerationTimestamp": true,
"booleanGetterPrefix": "is"
}
}

View File

@@ -1,11 +0,0 @@
{
"!include": "bin/java-petstore-feign-10x.json",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/feign10x",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/feign",
"additionalProperties": {
"hideGenerationTimestamp": true,
"booleanGetterPrefix": "is"
}
}

View File

@@ -1,10 +0,0 @@
{
"!include": "bin/java-petstore-google-api-client.json",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/google-api-client",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/google-api-client",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,12 +0,0 @@
{
"artifactId": "cxf-annotated-basepath",
"generatorName": "jaxrs-cxf",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/jaxrs-cxf-annotated-base-path",
"templateDir": "modules/openapi-generator/src/main/resources/JavaJaxRS/cxf",
"additionalProperties": {
"hideGenerationTimestamp": true,
"useAnnotatedBasePath": true,
"serverPort": "8082"
}
}

View File

@@ -1,9 +0,0 @@
{
"generatorName": "jaxrs-cxf-cdi",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/jaxrs-cxf-cdi",
"templateDir": "modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-cdi",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,12 +0,0 @@
{
"artifactId": "cxf-server-non-spring",
"generatorName": "jaxrs-cxf",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/jaxrs-cxf-non-spring-app",
"templateDir": "modules/openapi-generator/src/main/resources/JavaJaxRS/cxf",
"additionalProperties": {
"hideGenerationTimestamp": true,
"generateNonSpringApplication": true,
"serverPort": "8082"
}
}

View File

@@ -1,10 +0,0 @@
{
"generatorName": "jaxrs-cxf",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/server/petstore/jaxrs-cxf",
"templateDir": "modules/openapi-generator/src/main/resources/JavaJaxRS/cxf",
"additionalProperties": {
"hideGenerationTimestamp": true,
"serverPort": "8082"
}
}

View File

@@ -1,11 +0,0 @@
{
"!include": "./bin/jaxrs-datelib-j8.json",
"generatorName": "jaxrs-jersey",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/server/petstore/jaxrs-datelib-j8/",
"templateDir": "modules/openapi-generator/src/main/resources/JavaJaxRS/",
"additionalProperties": {
"hideGenerationTimestamp": true,
"serverPort": "8082"
}
}

View File

@@ -1,10 +0,0 @@
{
"artifactId": "openapiv3-jaxrs-jersey-petstore-server",
"generatorName": "jaxrs-jersey",
"inputSpec": "modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/server/petstore/jaxrs-jersey",
"templateDir": "modules/openapi-generator/src/main/resources/JavaJaxRS/",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,13 +0,0 @@
{
"artifactId": "jaxrs-jersey1-useTags",
"generatorName": "jaxrs-jersey",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"library": "jersey1",
"outputDir": "samples/server/petstore/jaxrs/jersey1-useTags",
"templateDir": "modules/openapi-generator/src/main/resources/JavaJaxRS",
"additionalProperties": {
"hideGenerationTimestamp": true,
"serverPort": "8082",
"useTags": true
}
}

View File

@@ -1,12 +0,0 @@
{
"artifactId": "jaxrs-jersey1-server",
"generatorName": "jaxrs-jersey",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"library": "jersey1",
"outputDir": "samples/server/petstore/jaxrs/jersey1",
"templateDir": "modules/openapi-generator/src/main/resources/JavaJaxRS",
"additionalProperties": {
"hideGenerationTimestamp": true,
"serverPort": "8082"
}
}

View File

@@ -1,12 +0,0 @@
{
"artifactId": "jaxrs-jersey2-useTags",
"generatorName": "jaxrs-jersey",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/server/petstore/jaxrs/jersey2-useTags",
"templateDir": "modules/openapi-generator/src/main/resources/JavaJaxRS",
"additionalProperties": {
"hideGenerationTimestamp": true,
"serverPort": "8082",
"useTags": true
}
}

View File

@@ -1,11 +0,0 @@
{
"artifactId": "jaxrs-jersey-petstore-server",
"generatorName": "jaxrs-jersey",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/server/petstore/jaxrs/jersey2",
"templateDir": "modules/openapi-generator/src/main/resources/JavaJaxRS",
"additionalProperties": {
"hideGenerationTimestamp": true,
"serverPort": "8082"
}
}

View File

@@ -1,11 +0,0 @@
{
"!include": "./bin/jaxrs-resteasy-eap-java8-petstore-server.json",
"artifactId": "jaxrs-resteasy-eap-java8-server",
"generatorName": "jaxrs-resteasy-eap",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/jaxrs-resteasy/eap-java8",
"templateDir": "modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/eap",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,11 +0,0 @@
{
"!include": "./bin/jaxrs-resteasy-eap-joda-petstore-server.json",
"artifactId": "jaxrs-resteasy-eap-joda-server",
"generatorName": "jaxrs-resteasy-eap",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/jaxrs-resteasy/eap-joda",
"templateDir": "modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/eap",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,9 +0,0 @@
{
"generatorName": "jaxrs-resteasy-eap",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/jaxrs-resteasy/eap",
"templateDir": "modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/eap",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,11 +0,0 @@
{
"!include": "./bin/jaxrs-resteasy-joda-petstore-server.json",
"artifactId": "jaxrs-resteasy-joda-server",
"generatorName": "jaxrs-resteasy",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/jaxrs-resteasy/joda",
"templateDir": "modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,9 +0,0 @@
{
"generatorName": "jaxrs-resteasy",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/jaxrs-resteasy/default",
"templateDir": "modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,11 +0,0 @@
{
"artifactId": "jaxrs-spec-interface-petstore-server",
"generatorName": "jaxrs-spec",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/server/petstore/jaxrs-spec-interface",
"additionalProperties": {
"hideGenerationTimestamp": true,
"serializableModel": true,
"interfaceOnly": true
}
}

View File

@@ -1,10 +0,0 @@
{
"artifactId": "jaxrs-spec-petstore-server",
"generatorName": "jaxrs-spec",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/server/petstore/jaxrs-spec",
"additionalProperties": {
"hideGenerationTimestamp": true,
"serializableModel": true
}
}

View File

@@ -1,11 +0,0 @@
{
"artifactId": "petstore-java-client-jersey1",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"library": "jersey1",
"outputDir": "samples/client/petstore/java/jersey1",
"templateDir": "modules/openapi-generator/src/main/resources/Java",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,12 +0,0 @@
{
"!include": "bin/java-petstore-jersey2.json",
"artifactId": "petstore-jersey2-java6",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/jersey2-java6",
"additionalProperties": {
"hideGenerationTimestamp": true,
"supportJava6": true,
"booleanGetterPrefix": "is"
}
}

View File

@@ -1,11 +0,0 @@
{
"!include": "bin/java8-petstore-jersey2.json",
"artifactId": "petstore-jersey2-java8",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/jersey2-java8",
"additionalProperties": {
"hideGenerationTimestamp": true,
"serverPort": "8082"
}
}

View File

@@ -1,9 +0,0 @@
{
"!include": "bin/java-petstore-jersey2.json",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/jersey2",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,10 +0,0 @@
{
"generatorName": "java-msf4j",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/server/petstore/java-msf4j/",
"templateDir": "modules/openapi-generator/src/main/resources/java-msf4j-server",
"additionalProperties": {
"hideGenerationTimestamp": true,
"artifactId": "java-msf4j-server"
}
}

View File

@@ -1,10 +0,0 @@
{
"!include": "bin/java-petstore-native.json",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/native",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/native",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,12 +0,0 @@
{
"!include": "bin/java-petstore-okhttp-gson.json",
"artifactId": "petstore-okhttp-gson-parcelableModel",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/okhttp-gson-parcelableModel",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson",
"additionalProperties": {
"hideGenerationTimestamp": true,
"parcelableModel": true
}
}

View File

@@ -1,10 +0,0 @@
{
"!include": "bin/java-petstore-okhttp-gson.json",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/okhttp-gson",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,11 +0,0 @@
{
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/feign",
"outputDir": "samples/client/petstore/java/feign10x",
"additionalProperties": {
"hideGenerationTimestamp": true,
"booleanGetterPrefix": "is"
},
"!include": "bin/java-petstore-feign-10x.json"
}

View File

@@ -1,10 +0,0 @@
{
"generatorName": "java-play-framework",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/java-play-framework-api-package-override",
"templateDir": "modules/openapi-generator/src/main/resources/JavaPlayFramework",
"additionalProperties": {
"hideGenerationTimestamp": true,
"apiPackage": "com.puppies.store.apis"
}
}

View File

@@ -1,10 +0,0 @@
{
"!include": "bin/java-play-framework-petstore-server-async.json",
"generatorName": "java-play-framework",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/java-play-framework-async",
"templateDir": "modules/openapi-generator/src/main/resources/JavaPlayFramework",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,10 +0,0 @@
{
"generatorName": "java-play-framework",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/java-play-framework-controller-only",
"templateDir": "modules/openapi-generator/src/main/resources/JavaPlayFramework",
"additionalProperties": {
"hideGenerationTimestamp": true,
"controllerOnly": true
}
}

View File

@@ -1,9 +0,0 @@
{
"generatorName": "java-play-framework",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/server/petstore/java-play-framework-fake-endpoints",
"templateDir": "modules/openapi-generator/src/main/resources/JavaPlayFramework",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,10 +0,0 @@
{
"generatorName": "java-play-framework",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/java-play-framework-no-bean-validation",
"templateDir": "modules/openapi-generator/src/main/resources/JavaPlayFramework",
"additionalProperties": {
"hideGenerationTimestamp": true,
"useBeanValidation": false
}
}

View File

@@ -1,10 +0,0 @@
{
"generatorName": "java-play-framework",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/java-play-framework-no-exception-handling",
"templateDir": "modules/openapi-generator/src/main/resources/JavaPlayFramework",
"additionalProperties": {
"hideGenerationTimestamp": true,
"handleExceptions": false
}
}

View File

@@ -1,10 +0,0 @@
{
"generatorName": "java-play-framework",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/java-play-framework-no-interface",
"templateDir": "modules/openapi-generator/src/main/resources/JavaPlayFramework",
"additionalProperties": {
"hideGenerationTimestamp": true,
"useInterfaces": false
}
}

View File

@@ -1,10 +0,0 @@
{
"generatorName": "java-play-framework",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/java-play-framework-no-swagger-ui",
"templateDir": "modules/openapi-generator/src/main/resources/JavaPlayFramework",
"additionalProperties": {
"hideGenerationTimestamp": true,
"useSwaggerUI": false
}
}

View File

@@ -1,10 +0,0 @@
{
"generatorName": "java-play-framework",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/java-play-framework-no-wrap-calls",
"templateDir": "modules/openapi-generator/src/main/resources/JavaPlayFramework",
"additionalProperties": {
"hideGenerationTimestamp": true,
"wrapCalls": false
}
}

View File

@@ -1,9 +0,0 @@
{
"generatorName": "java-play-framework",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore.yaml",
"outputDir": "samples/server/petstore/java-play-framework",
"templateDir": "modules/openapi-generator/src/main/resources/JavaPlayFramework",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,11 +0,0 @@
{
"!include": "bin/java-petstore-rest-assured.json",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/rest-assured",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/rest-assured",
"additionalProperties": {
"hideGenerationTimestamp": true,
"booleanGetterPrefix": "is"
}
}

View File

@@ -1,9 +0,0 @@
{
"!include": "bin/java-petstore-resteasy.json",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/resteasy",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,11 +0,0 @@
{
"!include": "bin/java-petstore-resttemplate.json",
"artifactId": "petstore-resttemplate-withxml",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/resttemplate-withXml",
"additionalProperties": {
"hideGenerationTimestamp": true,
"withXml": true
}
}

View File

@@ -1,9 +0,0 @@
{
"!include": "bin/java-petstore-resttemplate.json",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/resttemplate",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,10 +0,0 @@
{
"!include": "bin/java-petstore-retrofit.json",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/retrofit",
"additionalProperties": {
"hideGenerationTimestamp": true,
"dateLibrary": "joda"
}
}

View File

@@ -1,10 +0,0 @@
{
"!include": "bin/java-petstore-retrofit2-play24.json",
"artifactId": "petstore-java-client-retrofit2-play24",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/retrofit2-play24",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,10 +0,0 @@
{
"!include": "bin/java-petstore-retrofit2-play25.json",
"artifactId": "petstore-java-client-retrofit2-play25",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/retrofit2-play25",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,10 +0,0 @@
{
"!include": "bin/java-petstore-retrofit2-play26.json",
"artifactId": "petstore-java-client-retrofit2-play26",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/retrofit2-play26",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,10 +0,0 @@
{
"!include": "bin/java-petstore-retrofit2.json",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/retrofit2",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/retrofit2",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,11 +0,0 @@
{
"!include": "bin/java-petstore-retrofit2rx.json",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/retrofit2rx",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/retrofit2",
"additionalProperties": {
"useRxJava": true,
"hideGenerationTimestamp": true
}
}

View File

@@ -1,11 +0,0 @@
{
"!include": "bin/java-petstore-retrofit2rx2.json",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/retrofit2rx2",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/retrofit2",
"additionalProperties": {
"useRxJava2": true,
"hideGenerationTimestamp": true
}
}

View File

@@ -1,10 +0,0 @@
{
"!include": "bin/java-petstore-vertx.json",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/vertx",
"templateDir": "modules/openapi-generator/src/main/resources/Java/libraries/vertx",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,9 +0,0 @@
{
"!include": "bin/java-petstore-webclient.json",
"generatorName": "java",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/java/webclient",
"additionalProperties": {
"hideGenerationTimestamp": true
}
}

View File

@@ -1,11 +0,0 @@
{
"generatorName": "javascript",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/javascript-promise",
"templateDir": "modules/openapi-generator/src/main/resources/Javascript",
"additionalProperties": {
"usePromises": true,
"useES6": false,
"appName": "PetstoreClient"
}
}

View File

@@ -1,9 +0,0 @@
{
"generatorName": "javascript",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/javascript-es6",
"templateDir": "modules/openapi-generator/src/main/resources/Javascript/es6",
"additionalProperties": {
"appName": "PetstoreClient"
}
}

View File

@@ -1,11 +0,0 @@
{
"generatorName": "javascript",
"inputSpec": "modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml",
"outputDir": "samples/client/petstore/javascript-promise-es6",
"templateDir": "modules/openapi-generator/src/main/resources/Javascript/es6",
"additionalProperties": {
"appName": "PetstoreClient",
"usePromises": true,
"useES6": true
}
}

Some files were not shown because too many files have changed in this diff Show More