Closes#719
This change adds the original Request Method to `RetryableException`,
allowing implementers to determine if a retry should occur based on
method and exception type.
To support this, `Response` objects now require that the original
`Request` be present. Test Cases, benchmarks, and documentation have
been added.
* Refactored Request Method Attribute on Requests
* Added `HttpMethod` enum that represents the supported HTTP methods
replacing String handling.
* Deprecated `Request#method()` in favor of `Request#httpMethod()`
* Support of Java 8 Stream Decoder and Jackson Iterator Decoder
Signed-off-by: phymbert <pierrick.hymbert@gmail.com>
* Removed class javadoc to make license plugin happy
Signed-off-by: phymbert <pierrick.hymbert@gmail.com>
* Fixed build failed cause of license missing
Signed-off-by: phymbert <pierrick.hymbert@gmail.com>
* - smaller highlighted changelog
- make decoder type implementation final
- change inner types and constructors visibility to package private
- fix non static inner class
- remove useless Factory inner class
- unit test JacksonIterator
Signed-off-by: phymbert <pierrick.hymbert@gmail.com>
* - Revert deleted groupId tag in benchmark
- Fix code style on StreamDecoder
- Add unit test to verify iterator is closed if stream is closed
- Remove any characteristics to the returned stream
Signed-off-by: phymbert <pierrick.hymbert@gmail.com>
* Benchmark:
- updated with latest factory methods
- do not duplicate groupId
Signed-off-by: phymbert <pierrick.hymbert@gmail.com>
Shows relative performance of caching various points of construction of
a Feign Api. Adds a mesobenchmark of actually performing http requests,
so that caching performance can be placed in context.
See #214