Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve ClientRequestImpl #6208

Merged
merged 38 commits into from
Mar 3, 2023
Merged
Show file tree
Hide file tree
Changes from 28 commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
84a8b86
Improve ClientRequestImpl
klustria Feb 15, 2023
3611c75
Merge remote-tracking branch 'upstream/main' into 5386-improve-client…
klustria Feb 15, 2023
890361f
Improve Http1Client builder javadoc comments
klustria Feb 15, 2023
18d0075
Merge remote-tracking branch 'upstream/main' into 5386-improve-client…
klustria Feb 17, 2023
b7f7713
Validate methods with no entity, Connection queue limit, copyright up…
klustria Feb 17, 2023
511eb66
Merge remote-tracking branch 'upstream/main' into 5386-improve-client…
klustria Feb 20, 2023
cf2cd14
Improve connection queue size limit, add mocked unit test and integra…
klustria Feb 21, 2023
98f5fe0
Merge remote-tracking branch 'upstream/main' into 5386-improve-client…
klustria Feb 21, 2023
b2a6bb9
Add webclient in the Helidon Nima Test Integration Project
klustria Feb 21, 2023
9bb796d
Refactor for readability and further improve unit tests
klustria Feb 22, 2023
1b55e45
Call release rather than close in finishRequest to debug unit test br…
klustria Feb 22, 2023
bd5cd84
Increase connection queue size to debug broken pipe unit test failure
klustria Feb 22, 2023
d7934b8
Rollback Http1ClientConnection to isolate if this is the cause of the…
klustria Feb 24, 2023
1c7a2e2
Merge remote-tracking branch 'upstream/main' into 5386-improve-client…
klustria Feb 24, 2023
89b7401
Rollback ClientRequestImpl to isolate if this is the cause of the tes…
klustria Feb 24, 2023
d0916fd
Fix copyright for rolled back Http1ClientConnection
klustria Feb 24, 2023
02822c8
Return all changes to Http1ClientConnectionClient and adjust ClientRe…
klustria Feb 24, 2023
994a13f
Add connection queue size and expand keepAliveKey
klustria Feb 24, 2023
e43027a
Add all configurable parameters back to further test if this causes t…
klustria Feb 25, 2023
b6ff827
Add header validation back to further test if this causes the test pr…
klustria Feb 25, 2023
6616ca9
Add back all ClientRequestImpl changes and disable sendExpect100Conti…
klustria Feb 26, 2023
23f5d94
Verify if sendExpect100Continue set to true causes the test problem
klustria Feb 26, 2023
d46fd47
Disable sendExpect100Continue for now because it is causing server Ke…
klustria Feb 27, 2023
61c60d3
Merge remote-tracking branch 'upstream/main' into 5386-improve-client…
klustria Feb 27, 2023
bcb68ed
Minor update to remove unnecessary use of this when calling close met…
klustria Feb 27, 2023
c0c0d1c
ConsoleHandler log level is toned down and Http1ClientConnection logg…
klustria Feb 28, 2023
381a220
Merge remote-tracking branch 'upstream/main' into 5386-improve-client…
klustria Feb 28, 2023
c0ec7a4
Use @ServerTest for testing and reinstate disabled tests
klustria Feb 28, 2023
3fd5960
Make http handlers throwable with IOException since NIMA can handle t…
klustria Feb 28, 2023
2e57106
Merge remote-tracking branch 'upstream/main' into 5386-improve-client…
klustria Feb 28, 2023
fdd4151
Change getter methods in Http1Client from public to package local
klustria Mar 1, 2023
9a6f1c1
Merge remote-tracking branch 'upstream/main' into 5386-improve-client…
klustria Mar 1, 2023
af3ac89
Inject Http1Client into the constructor and make `? :` conditional op…
klustria Mar 1, 2023
9eb7399
Another adjustment to make `? :` conditional operator more readable
klustria Mar 1, 2023
a19f2e9
Remove host information from the URL path of the injected client.
klustria Mar 2, 2023
9d37efd
Merge remote-tracking branch 'upstream/main' into 5386-improve-client…
klustria Mar 2, 2023
3516f55
Formulate baseURI from the constructor rather than when using it in e…
klustria Mar 2, 2023
df08c8a
Rename injected http1 client to avoid confusion with the instantiated…
klustria Mar 2, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions nima/tests/integration/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@

<modules>
<module>webserver</module>
<module>webclient</module>
<module>grpc</module>
<module>websocket</module>
<module>http2</module>
Expand Down
40 changes: 40 additions & 0 deletions nima/tests/integration/webclient/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--

Copyright (c) 2023 Oracle and/or its affiliates.

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

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,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

-->

<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<parent>
<groupId>io.helidon.nima.tests.integration</groupId>
<artifactId>helidon-nima-tests-integration-project</artifactId>
<version>4.0.0-SNAPSHOT</version>
</parent>

<groupId>io.helidon.nima.tests.integration.webclient</groupId>
<artifactId>helidon-nima-tests-integration-webclient-project</artifactId>
<name>Helidon Níma Tests Integration WebClient Project</name>

<packaging>pom</packaging>

<modules>
<module>webclient</module>
</modules>
</project>
60 changes: 60 additions & 0 deletions nima/tests/integration/webclient/webclient/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2023 Oracle and/or its affiliates.

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

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,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>io.helidon.nima.tests.integration.webclient</groupId>
<artifactId>helidon-nima-tests-integration-webclient-project</artifactId>
<version>4.0.0-SNAPSHOT</version>
</parent>

<artifactId>helidon-nima-tests-integration-webclient</artifactId>
<name>Helidon Níma Tests Integration WebClient</name>

<properties>
<spotbugs.exclude>etc/spotbugs/exclude.xml</spotbugs.exclude>
</properties>

<dependencies>
<dependency>
<groupId>io.helidon.nima.webclient</groupId>
<artifactId>helidon-nima-webclient</artifactId>
</dependency>
<dependency>
<groupId>io.helidon.nima.testing.junit5</groupId>
<artifactId>helidon-nima-testing-junit5-webserver</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.helidon.common.testing</groupId>
<artifactId>helidon-common-testing-http-junit5</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-all</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</project>
Loading