* remove import mapping logic in model generation, better handle of file, list
* add new files for file, list
* fix some tests
* update tests, doc
* skip file as reserved word in feign client
* add new files
* remove file from reserved word list in spring generator
* Renew the access token after receiving a 401/403
Feign clients tries to renew the access token after it receives a 401 or 403. It Retries the request 1 time
* Add unit test for exhausted retries
* Update samples
* Implement unit tests for feign client
Implement tests
Migrate to junit 5
* Default feign client does not support PATCH verb
Default feign client does not support PATCH verb
* Remove test for GET endpoint with request body
* Configure junit in gradle build
* Configure logback for unit tests
* Add missing dependencies to sbt
* Fix gradle dependency
* Add logback to gradle unit test
* Regenerate samples
* Make junit test classes package private
* Make junit test classes package private
* Update samples
* Organize imports
* Organize imports
* Example of broken multi-level hierarchy
* Support for multiple levels of hierarchy in model objects
* Support for multiple levels of hierarchy in generators
* Regenerated samples
* Temporarily skip scalaz sample verification, which is having issue with Java version in CI container
* Re-enable scalaz in verify samples
Co-authored-by: Rob Oxspring <roxspring@imapmail.org>
* Adds v2 spec additionalproperties examples, adds v3 spec nulllable model example, updates samples
* Remaining samples updates
* Adds csharp generator update to handle models with multilevel parent types, which works for the AdditionalPropertiesObject model, samples updated
* Add test case that reproduce the issue #1782
* Fix missing RequestBody.required
* Update samples
./bin/utils/ensure-up-to-date
* Run ensure-up-to-date script
./bin/utils/ensure-up-to-date
* Restore test classes to commit 5340c35ce123c18daa82f62131b3d1606bd1ceab
* Fix samples/client/petstore/java/feign
* Fix samples/client/petstore/java/jersey1
* Fix samples/client/petstore/java/jersey2-java8
* Fix samples/client/petstore/java/jersey2
* Fix samples/client/petstore/java/okhttp-gson
* Fix samples/client/petstore/java/resttemplate/src/test/java
* Move "StringUtilTest.java" to "samples.ci"
and add copy command in *.sh scripts
* Fix echo line
* Move tests to 'test-manual/common/'
* Move "ApiClientTest.java" to "samples.ci"
and add copy command in *.sh scripts
* Move "ConfigurationTest.java" to "samples.ci"
and add copy command in *.sh scripts
* Move "auth/ApiKeyAuthTest.java" to "samples.ci"
and add copy command in *.sh scripts
* Move "auth/HttpBasicAuthTest.java" to "samples.ci"
and add copy command in *.sh scripts
* Move "model/EnumValueTest.java" to "samples.ci"
and add copy command in *.sh scripts
* Move "JSONTest.java" to "samples.ci"
and add copy command in *.sh scripts
* Replace "cp" => "mkdir & cp"
* JSONTest.java is java8 specific
* Run bin/java-petstore-all.sh
* "$_" does not work on Shippable
When a spec defines a Model at the top level that is a non-aggretate type (such
as string, number or boolean), it essentially represents an alias for the simple
type. For example, the following spec snippet creates an alias of the boolean
type that for all intents and purposes acts just like a regular boolean.
definitions:
JustABoolean:
type: boolean
This can be modeled in some languages through built-in mechanisms, such as
typedefs in C++. Java, however, just not have a clean way of representing this.
This change introduces an internal mechanism for representing aliases. It
maintains a map in DefaultCodegen that tracks these types of definitions, and
wherever it sees the "JustABoolean" type in the spec, it generates code that
uses the built-in "Boolean" instead.
This functionality currenlty only applies to Java, but could be extended to
other languages later.
The change adds a few examples of this to the fake endpoint spec for testing,
which means all of the samples change as well.
* Support Swagger collectionFormat encodings in Feign
Feign only natively supports the "multi" collectionFormat for encoding lists
of parameter values. This change adds manual encoding of the other formats, such
as "csv" (the default for collections), "tsv", space-separated, and pipes.
* Fix typo in anchor tag.
* Updating samples after #5232.
* Fix tests after #5232.
* Fix Javascript client tests.
* JaxRS server: set serverPort only when not given from outside.
* Update JaxRS sample creator scripts to fix serverPort.
* Preliminary test fix for JaxRS server generators.
* Updating samples for JaxRS with Jersey1/2.
* Updating JaxRS samples again.
* use builder pattern for operations
* @QueryMap parameter only for query parameters
The previous iteration had replaced all parameters (body, path, query, etc)
within a single @QueryMap. But Feign only supports this style of parameter
passing for query parameters. Besides, for the case of a body parameter (like
soxhlet uses) it only added extra verbosity. With this change, the query
parameters are gathered together in a single @QueryMap and the other parameters
are left alone.
* Adding template for generating test code
* Make javadoc consistent with rest of file's conventions/indents
* Update samples
The files in src/main were generated by running
$ bin/java-petstore-feign.sh
The files in src/test were manually fixed.
* Correct capitalization of @QueryMap class in feign
Adds a field operationIdCamelCase (a la operationIdLowerCase) to the
CodegenOperation container and uses it in the feign-generated classes
with @QueryMap parameters. Also re-generated the feign samples.
* Adding hyphen to javadocs for extra readability.
* Adding (not replacing) api method with @QueryParam overload.
In order to keep backwards compatibility, switched to adding a new method to
the interface instead of replacing the old call.
* Adding newline to generated source for readability.
* [feign] add threetenbp support for feign clients
* [okhttp] add threetenbp support for okhttp clients
* [jersey] add threetenbp support for jersey clients
* [retrofit2] add threetenbp support for retrofit2 clients
* [spring] add threetenbp support for spring generators
* add a workaround in tests for a bug in the petstore
The petstore doesn't manage fractional digits of dates correctly when there are less than 3