Conversation
* Add initial module for Apache5x for seting up package * Add based on new module checklist
…pache5SDKHttpClient (#6088) * Add initial module for Apache5x for seting up package * Add based on new module checklist * Baseline all the classes from Apache4 SDK client to the new Apache5 module
…aring Checkstyles and spotbug issues (#6100) * Phase 2 , getting Apache 5 compilation and Junit ready along with clearing Checkstyles and spotbug issues * Handle comments from review * Handle comments from Zoe
…reamRequestEntity repeatability (#6132) * Fix HTTP authentication retry failures by improving RepeatableInputStreamRequestEntity repeatability * Upated test cases * Handled comments
This reverts commit 64f7d33.
* Fix architecture test failures for apache5.x * Checkstyle issues
…ientConnectionManager for Connection Manager (#6147) * Fix architecture test failures for apache5.x * Checkstyle issues * Update to use PoolingHttpClientConnectionManager class reference that is implementation of HttpClientConnectionManager
…6154) * Fix architecture test failures for apache5.x * Checkstyle issues * Update to use PoolingHttpClientConnectionManager class reference that is implementation of HttpClientConnectionManager * Fix stream reset failure in RepeatableInputStreamRequestEntity by storing content reference to avoid multiple ContentStreamProvider.newStream() calls that cause IOException when retrying requests with non-resettable streams * writeTo_ConcurrentWrites_HandlesCorrectly no longer needed since even Apache 4.x doesnot suports this
…zil.json (#6191) * Fix architecture test failures for apache5.x * Checkstyle issues * Update to use PoolingHttpClientConnectionManager class reference that is implementation of HttpClientConnectionManager * Fix stream reset failure in RepeatableInputStreamRequestEntity by storing content reference to avoid multiple ContentStreamProvider.newStream() calls that cause IOException when retrying requests with non-resettable streams * writeTo_ConcurrentWrites_HandlesCorrectly no longer needed since even Apache 4.x doesnot suports this * Fix connectionPoolingWorks by setting skipping setConnectionTimeToLive is value is set to 0 since 0 is treated as Infinite timeToLive in Sdk and Apache 4.x but treated as immediate closeConnection in apache 5.x * disableAutomaticRetries in Apache 5.x since SDK handles retries , also define Apache5 dependencies in .brazil.json * Added Test case for Async , handled review ocmments
…-v2 into feature/master/apache5x
* Fix architecture test failures for apache5.x * Checkstyle issues * Update to use PoolingHttpClientConnectionManager class reference that is implementation of HttpClientConnectionManager * Fix stream reset failure in RepeatableInputStreamRequestEntity by storing content reference to avoid multiple ContentStreamProvider.newStream() calls that cause IOException when retrying requests with non-resettable streams * writeTo_ConcurrentWrites_HandlesCorrectly no longer needed since even Apache 4.x doesnot suports this * Fix connectionPoolingWorks by setting skipping setConnectionTimeToLive is value is set to 0 since 0 is treated as Infinite timeToLive in Sdk and Apache 4.x but treated as immediate closeConnection in apache 5.x * disableAutomaticRetries in Apache 5.x since SDK handles retries , also define Apache5 dependencies in .brazil.json * Added Test case for Async , handled review ocmments * Donot do buffer the response using BufferedHttpEntity since it might cause memory issue, this behaviour is same as Apache4.x * Fix compilation issues * Fix checkstyle issues * Remove test which are specific to apache http
* Fix architecture test failures for apache5.x * Checkstyle issues * Update to use PoolingHttpClientConnectionManager class reference that is implementation of HttpClientConnectionManager * Fix stream reset failure in RepeatableInputStreamRequestEntity by storing content reference to avoid multiple ContentStreamProvider.newStream() calls that cause IOException when retrying requests with non-resettable streams * writeTo_ConcurrentWrites_HandlesCorrectly no longer needed since even Apache 4.x doesnot suports this * Fix connectionPoolingWorks by setting skipping setConnectionTimeToLive is value is set to 0 since 0 is treated as Infinite timeToLive in Sdk and Apache 4.x but treated as immediate closeConnection in apache 5.x * disableAutomaticRetries in Apache 5.x since SDK handles retries , also define Apache5 dependencies in .brazil.json * Added Test case for Async , handled review ocmments * Donot do buffer the response using BufferedHttpEntity since it might cause memory issue, this behaviour is same as Apache4.x * Fix compilation issues * Fix checkstyle issues * Remove test which are specific to apache http * Add benchmark for Apache5 and add Streaming Api test cases
… alternatives (#6211) * Clean up unused APIs and add test to make sure it can be handled with alternatives * Added NTCredentials to keep backward compatibilty with Apache4.x
… version (#6214) * Fix architecture test failures for apache5.x * Checkstyle issues * Update to use PoolingHttpClientConnectionManager class reference that is implementation of HttpClientConnectionManager * Fix stream reset failure in RepeatableInputStreamRequestEntity by storing content reference to avoid multiple ContentStreamProvider.newStream() calls that cause IOException when retrying requests with non-resettable streams * writeTo_ConcurrentWrites_HandlesCorrectly no longer needed since even Apache 4.x doesnot suports this * Fix connectionPoolingWorks by setting skipping setConnectionTimeToLive is value is set to 0 since 0 is treated as Infinite timeToLive in Sdk and Apache 4.x but treated as immediate closeConnection in apache 5.x * disableAutomaticRetries in Apache 5.x since SDK handles retries , also define Apache5 dependencies in .brazil.json * Added Test case for Async , handled review ocmments * Donot do buffer the response using BufferedHttpEntity since it might cause memory issue, this behaviour is same as Apache4.x * Fix compilation issues * Fix checkstyle issues * Remove test which are specific to apache http * Add benchmark for Apache5 and add Streaming Api test cases * Update Apache5 to 5.5
...ents/apache5-client/src/main/java/software/amazon/awssdk/http/apache5/Apache5HttpClient.java
Dismissed
Show dismissed
Hide dismissed
...ents/apache5-client/src/main/java/software/amazon/awssdk/http/apache5/Apache5HttpClient.java
Outdated
Show resolved
Hide resolved
...ents/apache5-client/src/main/java/software/amazon/awssdk/http/apache5/Apache5HttpClient.java
Show resolved
Hide resolved
...ents/apache5-client/src/main/java/software/amazon/awssdk/http/apache5/Apache5HttpClient.java
Show resolved
Hide resolved
...ents/apache5-client/src/main/java/software/amazon/awssdk/http/apache5/Apache5HttpClient.java
Outdated
Show resolved
Hide resolved
...c/main/java/software/amazon/awssdk/http/apache5/internal/impl/Apache5HttpRequestFactory.java
Show resolved
Hide resolved
...ain/resources/META-INF/native-image/software.amazon.awssdk/apache-client/reflect-config.json
Show resolved
Hide resolved
...ain/resources/META-INF/native-image/software.amazon.awssdk/apache-client/reflect-config.json
Outdated
Show resolved
Hide resolved
* Handled Surface API review comments * Added a single test for localaddress , handled review comments * Removing internal package name as -preview after internal discussion * Fix transient text case failures
* Handled Surface API review comments * Added a single test for localaddress , handled review comments * Removing internal package name as -preview after internal discussion * Fix transient text case failures * Handled comment for merge to master PR for apache 5.x
12b025c to
7a7e4cd
Compare
| @@ -0,0 +1,46 @@ | |||
| # | |||
There was a problem hiding this comment.
Multiple copies of the license header here
There was a problem hiding this comment.
Removed it now , this got copied over while migrating from https://github.com/aws/aws-sdk-java-v2/blob/master/http-clients/apache-client/src/main/resources/META-INF/services/software.amazon.awssdk.http.SdkHttpService
pom.xml
Outdated
| <skip.unit.tests>true</skip.unit.tests> | ||
| <mdep.analyze.skip>true</mdep.analyze.skip> | ||
| <japicmp.skip>true</japicmp.skip> | ||
| <japicmp.skip>false</japicmp.skip> |
There was a problem hiding this comment.
Is there any reason this was changed to false?
There was a problem hiding this comment.
Since its a preview version and can have backward incompatible changes i had changed it to false, I can move it to true and update whenever backward incompatible changes are added
There was a problem hiding this comment.
Hmm, this is specifically for quick profile, right? japicmp is an opt-in check anyway, so it's not enabled for apache http client 5 if it's not in includedModules
There was a problem hiding this comment.
oh my bad , I got it... I got confused with includedModules I think I enabled it to do a quick check locally and forgot to turn if off, Thanks Zoe
| @@ -0,0 +1,6 @@ | |||
| { | |||
| "type": "feature", | |||
| "category": "AWS SDK for Java v2", | |||
There was a problem hiding this comment.
nit: Apache HTTP Client 5?
There was a problem hiding this comment.
I was thinking since Apache HTTP Client 5 did not exist yet and we are introducing a new feature in "AWS SDK for Java v2" I added category as "AWS SDK for Java v2"
Will change this to Apache HTTP Client 5
|
|
This pull request has been closed and the conversation has been locked. Comments on closed PRs are hard for our team to see. If you need more assistance, please open a new issue that references this one. |




Motivation and Context
Add the Apache 5 client dependency
To begin using the Apache 5 HTTP client implementation, add the following dependency to your project:
Configure your AWS service client
You can easily configure any AWS service client to use the new AWS SDK Apache 5 HTTP client:
Advanced configuration example
Modifications
Testing
Please refer #6206 for relative benchmark comparisons
Screenshots (if appropriate)
Types of changes
Checklist
mvn installsucceedsscripts/new-changescript and following the instructions. Commit the new file created by the script in.changes/next-releasewith your changes.License