From e822f1f0ce838e4d5a772adb79873f8ce55d8782 Mon Sep 17 00:00:00 2001
From: juanf <juanf@ethz.ch>
Date: Fri, 2 Jun 2023 16:16:46 +0200
Subject: [PATCH] SSDM-13251: Changes from code review

---
 .../sis/afsclient/client/AfsClientV2.java     | 27 ++++++++++++++-----
 1 file changed, 21 insertions(+), 6 deletions(-)

diff --git a/api-data-store-server-java/src/main/java/ch/ethz/sis/afsclient/client/AfsClientV2.java b/api-data-store-server-java/src/main/java/ch/ethz/sis/afsclient/client/AfsClientV2.java
index 3aac1025342..da2f281af73 100644
--- a/api-data-store-server-java/src/main/java/ch/ethz/sis/afsclient/client/AfsClientV2.java
+++ b/api-data-store-server-java/src/main/java/ch/ethz/sis/afsclient/client/AfsClientV2.java
@@ -226,12 +226,9 @@ public final class AfsClientV2 implements PublicAPI
             @NonNull final Map<String, String> params)
             throws Exception
     {
-        HttpClient.Builder clientBuilder = HttpClient.newBuilder()
-                .version(HttpClient.Version.HTTP_1_1)
-                .followRedirects(HttpClient.Redirect.NORMAL)
-                .connectTimeout(Duration.ofMillis(timeout));
-
-        HttpClient client = clientBuilder.build();
+        //
+        // General Parameter Handling
+        //
 
         if (sessionToken != null)
         {
@@ -255,17 +252,28 @@ public final class AfsClientV2 implements PublicAPI
                     return urlEncode(entry.getKey()) + "=" + urlEncode(entry.getValue());
                 })
                 .reduce((s1, s2) -> s1 + "&" + s2).get();
+
+        //
         // GET Request - Parameters on the query string
+        //
+
         String queryParameters = null;
         if (httpMethod.equals("GET")) {
             queryParameters = parameters;
         }
+
+        //
         // POST Request - Parameters on body
+        //
+
         byte[] body = null;
         if (httpMethod.equals("POST")) {
             body = parameters.getBytes(StandardCharsets.UTF_8);
         }
 
+        //
+        // HTTP Client
+        //
         final URI uri =
                 new URI(serverUri.getScheme(), null, serverUri.getHost(), serverUri.getPort(),
                         serverUri.getPath(), queryParameters, null);
@@ -278,6 +286,13 @@ public final class AfsClientV2 implements PublicAPI
 
         final HttpRequest request = builder.build();
 
+        HttpClient.Builder clientBuilder = HttpClient.newBuilder()
+                .version(HttpClient.Version.HTTP_1_1)
+                .followRedirects(HttpClient.Redirect.NORMAL)
+                .connectTimeout(Duration.ofMillis(timeout));
+
+        HttpClient client = clientBuilder.build();
+
         final HttpResponse<byte[]> httpResponse =
                 client.send(request, HttpResponse.BodyHandlers.ofByteArray());
 
-- 
GitLab