You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by nf...@apache.org on 2023/03/17 11:40:32 UTC

[camel] 14/19: CAMEL-18995: camel-wordpress - Upgrade to HttpComponents 5.x

This is an automated email from the ASF dual-hosted git repository.

nfilotto pushed a commit to branch CAMEL-18995/upgrade-httpcomponents-5
in repository https://gitbox.apache.org/repos/asf/camel.git

commit bab0d5e0a12ab079e6879c7ef4cd51b0ba3e618c
Author: Nicolas Filotto <nf...@talend.com>
AuthorDate: Fri Mar 17 12:33:01 2023 +0100

    CAMEL-18995: camel-wordpress - Upgrade to HttpComponents 5.x
---
 components/camel-wordpress/pom.xml                 |  6 ++--
 .../api/test/WordpressMockServerTestSupport.java   | 14 ++++-----
 .../test/WordpressServerHttpRequestHandler.java    | 34 ++++++++++------------
 3 files changed, 26 insertions(+), 28 deletions(-)

diff --git a/components/camel-wordpress/pom.xml b/components/camel-wordpress/pom.xml
index db67fa6164a..7af1f8bd3fb 100644
--- a/components/camel-wordpress/pom.xml
+++ b/components/camel-wordpress/pom.xml
@@ -55,9 +55,9 @@
             <scope>test</scope>
         </dependency>
         <dependency>
-            <groupId>org.apache.httpcomponents</groupId>
-            <artifactId>httpclient</artifactId>
-            <version>${httpclient4-version}</version>
+            <groupId>org.apache.httpcomponents.client5</groupId>
+            <artifactId>httpclient5</artifactId>
+            <version>${httpclient-version}</version>
             <scope>test</scope>
         </dependency>
 
diff --git a/components/camel-wordpress/src/test/java/org/apache/camel/component/wordpress/api/test/WordpressMockServerTestSupport.java b/components/camel-wordpress/src/test/java/org/apache/camel/component/wordpress/api/test/WordpressMockServerTestSupport.java
index 4f0020fea02..ea455da3a5c 100644
--- a/components/camel-wordpress/src/test/java/org/apache/camel/component/wordpress/api/test/WordpressMockServerTestSupport.java
+++ b/components/camel-wordpress/src/test/java/org/apache/camel/component/wordpress/api/test/WordpressMockServerTestSupport.java
@@ -22,8 +22,8 @@ import java.util.HashMap;
 import java.util.Map;
 
 import org.apache.camel.component.wordpress.api.WordpressServiceProvider;
-import org.apache.http.impl.bootstrap.HttpServer;
-import org.apache.http.impl.bootstrap.ServerBootstrap;
+import org.apache.hc.core5.http.impl.bootstrap.HttpServer;
+import org.apache.hc.core5.http.impl.bootstrap.ServerBootstrap;
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeAll;
 import org.slf4j.Logger;
@@ -84,10 +84,10 @@ public abstract class WordpressMockServerTestSupport {
 
         // @formatter:off
         return ServerBootstrap.bootstrap().setListenerPort(port)
-                .registerHandler("/wp/v2/posts", new WordpressServerHttpRequestHandler(postsListCreateRequestHandlers))
-                .registerHandler("/wp/v2/posts/*", new WordpressServerHttpRequestHandler(postsSingleUpdateRequestHandlers))
-                .registerHandler("/wp/v2/users", new WordpressServerHttpRequestHandler(usersListCreateRequestHandlers))
-                .registerHandler("/wp/v2/users/*", new WordpressServerHttpRequestHandler(usersSingleUpdateRequestHandlers))
+                .register("/wp/v2/posts", new WordpressServerHttpRequestHandler(postsListCreateRequestHandlers))
+                .register("/wp/v2/posts/*", new WordpressServerHttpRequestHandler(postsSingleUpdateRequestHandlers))
+                .register("/wp/v2/users", new WordpressServerHttpRequestHandler(usersListCreateRequestHandlers))
+                .register("/wp/v2/users/*", new WordpressServerHttpRequestHandler(usersSingleUpdateRequestHandlers))
                 .create();
         // @formatter:on
     }
@@ -105,6 +105,6 @@ public abstract class WordpressMockServerTestSupport {
     }
 
     public static String getServerBaseUrl() {
-        return "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort();
+        return "http://localhost:" + localServer.getLocalPort();
     }
 }
diff --git a/components/camel-wordpress/src/test/java/org/apache/camel/component/wordpress/api/test/WordpressServerHttpRequestHandler.java b/components/camel-wordpress/src/test/java/org/apache/camel/component/wordpress/api/test/WordpressServerHttpRequestHandler.java
index f9d65551784..9cb834cd42c 100644
--- a/components/camel-wordpress/src/test/java/org/apache/camel/component/wordpress/api/test/WordpressServerHttpRequestHandler.java
+++ b/components/camel-wordpress/src/test/java/org/apache/camel/component/wordpress/api/test/WordpressServerHttpRequestHandler.java
@@ -17,21 +17,21 @@
 package org.apache.camel.component.wordpress.api.test;
 
 import java.io.IOException;
-import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 import java.util.Base64;
 import java.util.Collections;
 import java.util.Map;
 
 import org.apache.cxf.helpers.IOUtils;
-import org.apache.http.Header;
-import org.apache.http.HttpRequest;
-import org.apache.http.HttpResponse;
-import org.apache.http.HttpStatus;
-import org.apache.http.client.methods.HttpRequestWrapper;
-import org.apache.http.entity.ContentType;
-import org.apache.http.entity.StringEntity;
-import org.apache.http.protocol.HttpContext;
-import org.apache.http.protocol.HttpRequestHandler;
+import org.apache.hc.core5.http.ClassicHttpRequest;
+import org.apache.hc.core5.http.ClassicHttpResponse;
+import org.apache.hc.core5.http.ContentType;
+import org.apache.hc.core5.http.Header;
+import org.apache.hc.core5.http.HttpStatus;
+import org.apache.hc.core5.http.io.HttpRequestHandler;
+import org.apache.hc.core5.http.io.entity.StringEntity;
+import org.apache.hc.core5.http.message.HttpRequestWrapper;
+import org.apache.hc.core5.http.protocol.HttpContext;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -53,21 +53,19 @@ public class WordpressServerHttpRequestHandler implements HttpRequestHandler {
     }
 
     @Override
-    public void handle(HttpRequest request, HttpResponse response, HttpContext context) throws IOException {
+    public void handle(ClassicHttpRequest request, ClassicHttpResponse response, HttpContext context)
+            throws IOException {
         LOGGER.debug("received request {}", request);
-        final HttpRequestWrapper requestWrapper = HttpRequestWrapper.wrap(request);
+        final HttpRequestWrapper requestWrapper = new HttpRequestWrapper(request);
         // make sure that our writing operations have authentication header
         if (!authenticate(requestWrapper)) {
-            response.setStatusCode(HttpStatus.SC_FORBIDDEN);
+            response.setCode(HttpStatus.SC_FORBIDDEN);
             response.setEntity(new StringEntity("Forbidden", ContentType.TEXT_PLAIN));
             return;
         }
         final String responseBody = IOUtils
                 .toString(this.getClass().getResourceAsStream(mockResourceJsonResponse.get(requestWrapper.getMethod())));
-        if (responseBody == null) {
-            LOGGER.warn("Resource not found on {}. Response body null.", mockResourceJsonResponse);
-        }
-        response.setStatusCode(HttpStatus.SC_OK);
+        response.setCode(HttpStatus.SC_OK);
         response.setEntity(new StringEntity(responseBody, ContentType.APPLICATION_JSON));
     }
 
@@ -79,7 +77,7 @@ public class WordpressServerHttpRequestHandler implements HttpRequestHandler {
         for (Header authorizationHeader : request.getHeaders("Authorization")) {
             // Authorization: Basic base64credentials
             String base64Credentials = authorizationHeader.getValue().substring("Basic".length()).trim();
-            String credentials = new String(Base64.getDecoder().decode(base64Credentials), Charset.forName("UTF-8"));
+            String credentials = new String(Base64.getDecoder().decode(base64Credentials), StandardCharsets.UTF_8);
             // credentials = username:password
             final String[] values = credentials.split(":", 2);
             return USERNAME.equals(values[0]) && PASSWORD.equals(values[1]);