Quarkus, as one potential target for using the Java microprofile client
generator, requires a Jandex index to be present in library jars for
discovering beans inside these jars. Therefore, include Jandex index
generation in the pom.xml for microprofile clients as explained here:
https://quarkus.io/guides/cdi-reference#how-to-generate-a-jandex-index
Generating and shipping the index is only a small overhead that is
probably not worth an additional client option.
* 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
* Add apache java client option
* Add sample apache client config
* Switch serialization library, use time formatter
* Add pom template for apache dependencies
* Add initial implementation of ApiClient using apache
* Add apache api template
Plus switch to TypeReference to handle generic types
* Add support for sending json data
* Generate test stubs with @Ignore
* Add accept header
* Remove unnecessary builder assignments
* Set responseHeaders instance variable
* Switch to general serialize / deserialize functions
* Handle sending url encoded form data
* Split response processing into new method
* Allow requests without body
* Use general HttpResponse interface
If the method doesn't need to close it
* Use clients connection timeout
* Add constructor accepting custom client
* Handle multipart and direct file uploads
* Support file downloading
Based on the implementation in the jersey client
* Handle missing content disposition
* Raise error if body given for an unexpected method
* Use try with resources for response handling
* Remove unused url parameter encode method
* Handle content type parse exception
* Improve response content type handling
Would have had issues with content type headers containing a charset
* Make all set methods return client
* Add basic readme
* Send content type with files
* Set domain and path on cookies
Otherwise they will be excluded from the request
* Use consistent quoting in error messages
* Add generated apache sample
* Add generated docs changes
* update samples
* rename library, update samples, docs
* update readme
Co-authored-by: Harry White <hwhite@atlassian.com>
While the fix in #9916 correctly made endpoint types which did not
produce content return the `NoContent` type, those endpoint still
generated `Produces` instances with the wrong mime types due to not
resetting the `hasProduces` variable. This corrects that fix so that the
`Produces` instance for `MimeNoContent` is generated instead of any
other instance.
* fixed non-functional template which assumed a bodyParam requests and made no effort to construct json body from formParams.
* changed spaces to tabs for new lines from last commit
* fixed further indent and tab issues
* fixes a breakage while deserializing the read-only attributes
* updating generated samples
* taking care of the PR comments
* updating samples
* protect against cases where _spec_property_naming may not be present
* updating samples
* adding tests for this issue
* other generated files
* taking care of the comments
* updating the generated samples
Co-authored-by: Aanisha Mishra <aanisha.mishra05@gmail.com>
Prior to this change, clients generated with asyncNative=true
could not intercept the responses using the existing repsonse
interceptor. This adds another response interceptor solely for
asyncNative=true clients.
* handle nullable objects
* reverted java code
* Rewrote type generation to be recursive
* checking for isRequired only makes sense in the model class
* remove comments
* remove whitespaces
* regen samples
* use const once https://dart.dev/guides/language/effective-dart/usage#dont-use-const-redundantly
* remove const from mustache
* added space between comma and type
* fixed formatting
* remove commas
* regen samples
* bad whitespaces
* Add missing imports for Set in microprofile client
In case of array properties declared with uniqueItems: true, the
generated Java code uses Sets but imports are not present for them in
the Api and Test classes.
* Add missing imports for Set in java native clients
In case of array properties declared with uniqueItems: true, the
generated Java code uses Sets but imports are not present for them in
the Api and Test classes.
* refactor: improve additionalModelTypeAnnotations generation
Split by ';' and/or newline
Trim value
fix: #7032
Run ./bin/generate-samples.sh to regenerate model files
Revert "Run ./bin/generate-samples.sh to regenerate model files"
This reverts commit da509c39f363da046fbd457e1ab67ef0f62f3561.
refector: remove unnecessary import
test: multiples tests for AdditionalModelTypeAnnotations
Add a getter to test the list
refactor: remove duplicate AdditionalModelTypeAnnotations
Without using Set to avoid any side effect somewhere, I use stream and
distinct to avoid duplicates
refactor: using Set instead of stream
Remove stream distinct for performance reason, use newHashSet
Keep AdditionalModelTypeAnnotations as List
doc: update info additionalModelTypeAnnotations
refactor: move doc in code for autogen
style: tab in java class
doc: run ensure-up-to-date
refactor: add imports lost in rebase
docs: regenerate docs
docs: update
* fix: docs
* adds memoization to speed up csharp code generation
* takes care of review comments
* memoize adds to toModel for Go generator as well
Co-authored-by: Aanisha Mishra <aanisha.mishra05@gmail.com>