Skip to content

Commit fac1569

Browse files
authored
Use GET() and PUT() instead of method() (#740)
But this does not work for `HEAD()` that is 18+. Moreover, builder `method(String, BodyPublisher)` enforces body publisher as non-null, while the logic to stop emitting `Content-Length: 0` on GET and HEAD expects `null` body publisher. This fixes: * GET as it uses dedicated `GET()` method on builder that will use `null` body publisher (and JDK bugfix will work) * PUT as it uses dedicated `PUT()` method on builder * but does not fix HEAD (and as I see, it will be still emitted with `Content-Length: 0`, but may be wrong). Fixing HEAD is not possible, as dedicated `HEAD()` method was added in java 18, while the existing `method(String, BodyPublisher)` enforces non-null publisher. Fixes #739
1 parent 145588b commit fac1569

File tree

1 file changed

+2
-2
lines changed
  • maven-resolver-transport-jdk-parent/maven-resolver-transport-jdk-11/src/main/java/org/eclipse/aether/transport/jdk

1 file changed

+2
-2
lines changed

maven-resolver-transport-jdk-parent/maven-resolver-transport-jdk-11/src/main/java/org/eclipse/aether/transport/jdk/JdkTransporter.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -272,7 +272,7 @@ protected void implGet(GetTask task) throws Exception {
272272
try {
273273
while (true) {
274274
HttpRequest.Builder request =
275-
HttpRequest.newBuilder().uri(resolve(task)).method("GET", HttpRequest.BodyPublishers.noBody());
275+
HttpRequest.newBuilder().uri(resolve(task)).GET();
276276
headers.forEach(request::setHeader);
277277

278278
if (resume) {
@@ -395,7 +395,7 @@ protected void implPut(PutTask task) throws Exception {
395395
headers.forEach(request::setHeader);
396396
try (FileUtils.TempFile tempFile = FileUtils.newTempFile()) {
397397
utilPut(task, Files.newOutputStream(tempFile.getPath()), true);
398-
request.method("PUT", HttpRequest.BodyPublishers.ofFile(tempFile.getPath()));
398+
request.PUT(HttpRequest.BodyPublishers.ofFile(tempFile.getPath()));
399399

400400
try {
401401
HttpResponse<Void> response = send(request.build(), HttpResponse.BodyHandlers.discarding());

0 commit comments

Comments
 (0)