You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2019/12/28 09:03:34 UTC

[camel] branch master updated: [CAMEL-14316] Test code cleanup (#3450)

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

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/master by this push:
     new 03edcbe  [CAMEL-14316] Test code cleanup (#3450)
03edcbe is described below

commit 03edcbefa64320f9da68d87b3b6ace69228227e8
Author: Djordje Bajic <dj...@gmail.com>
AuthorDate: Sat Dec 28 10:03:12 2019 +0100

    [CAMEL-14316] Test code cleanup (#3450)
    
    * CAMEL-14316 - Test code cleanup.
    
    * CAMEL-14316 - Additional test changes.
    
    * CAMEL-14316 - Resolve checktyle warnings.
---
 .../apache/camel/component/http/BaseHttpTest.java  |   7 +-
 .../apache/camel/component/http/BaseHttpsTest.java |   7 +-
 .../http/CamelComponentVerifierExtensionTest.java  | 134 ++++++++-------------
 .../component/http/CamelComponentVerifierTest.java | 134 ++++++++-------------
 .../camel/component/http/HeaderFilteringTest.java  |  13 +-
 .../component/http/HttpAuthenticationTest.java     |  29 ++---
 .../apache/camel/component/http/HttpBodyTest.java  |  46 +++----
 .../component/http/HttpBridgeEndpointTest.java     |  48 +++-----
 .../camel/component/http/HttpCamelHeadersTest.java |  25 ++--
 .../camel/component/http/HttpCharsetTest.java      |  45 +++----
 .../camel/component/http/HttpCompressionTest.java  |  42 ++++---
 .../camel/component/http/HttpConcurrentTest.java   |  32 ++---
 .../component/http/HttpDefaultPortNumberTest.java  |  12 +-
 .../component/http/HttpDisableStreamCacheTest.java |   9 +-
 .../camel/component/http/HttpEndpointURLTest.java  |   2 +-
 .../HttpInvalidHttpClientConfigurationTest.java    |   2 +-
 .../camel/component/http/HttpMethodsTest.java      | 109 ++++++-----------
 .../component/http/HttpNoCamelHeaderTest.java      |  46 +++----
 .../http/HttpNoConnectionRedeliveryTest.java       |   4 +-
 .../camel/component/http/HttpNoConnectionTest.java |  15 ++-
 .../apache/camel/component/http/HttpPathTest.java  |  42 +++----
 .../component/http/HttpPollingConsumerTest.java    |  19 +--
 .../http/HttpProducerConnectionCloseTest.java      |   4 +-
 .../http/HttpProducerContentLengthTest.java        |  86 ++++++-------
 .../http/HttpProducerContentTypeTest.java          |  33 ++---
 ... HttpProducerContentTypeWithSemiColonTest.java} |  51 +++-----
 .../HttpProducerExplicitConnectionCloseTest.java   |   5 +-
 .../http/HttpProducerSelectMethodTest.java         |  53 ++++----
 .../HttpProducerTwoHeadersWithSameKeyTest.java     |  71 +++++------
 .../HttpProducerTwoParametersWithSameKeyTest.java  |  29 ++---
 .../http/HttpProducerWithSystemPropertiesTest.java |   6 +-
 .../camel/component/http/HttpProxyServerTest.java  |  12 +-
 .../apache/camel/component/http/HttpQueryTest.java |  34 +++---
 .../camel/component/http/HttpRedirectTest.java     |  17 ++-
 .../camel/component/http/HttpSNIHostNameTest.java  |   4 +-
 .../camel/component/http/HttpSOTimeoutTest.java    |  21 ++--
 .../component/http/HttpSendDynamicAwareTest.java   |   6 +-
 .../http/HttpThrowExceptionOnFailureTest.java      |  29 ++---
 .../component/http/HttpWithHttpUriHeaderTest.java  |  11 +-
 .../component/http/HttpsAuthenticationTest.java    |  12 +-
 .../apache/camel/component/http/HttpsGetTest.java  |  11 +-
 .../http/HttpsSslContextParametersGetTest.java     |   9 +-
 .../http/ManagedHttpProducerPoolStatsTest.java     |  23 +---
 .../component/http/helper/HttpHelperTest.java      |   2 +
 .../http/rest/RestCamelComponentVerifierTest.java  | 102 +++++++---------
 45 files changed, 600 insertions(+), 853 deletions(-)

diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/BaseHttpTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/BaseHttpTest.java
index 98858d8..3c9ec10 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/BaseHttpTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/BaseHttpTest.java
@@ -22,6 +22,9 @@ import org.apache.camel.Exchange;
 import org.apache.camel.Message;
 import org.apache.http.HttpStatus;
 
+import static org.apache.http.HttpHeaders.CONTENT_LENGTH;
+import static org.apache.http.HttpHeaders.CONTENT_TYPE;
+
 public abstract class BaseHttpTest extends HttpServerTestSupport {
 
     protected void assertExchange(Exchange exchange) {
@@ -35,8 +38,8 @@ public abstract class BaseHttpTest extends HttpServerTestSupport {
 
     protected void assertHeaders(Map<String, Object> headers) {
         assertEquals(HttpStatus.SC_OK, headers.get(Exchange.HTTP_RESPONSE_CODE));
-        assertEquals("12", headers.get("Content-Length"));
-        assertNotNull("Should have Content-Type header", headers.get("Content-Type"));
+        assertEquals("12", headers.get(CONTENT_LENGTH));
+        assertNotNull("Should have Content-Type header", headers.get(CONTENT_TYPE));
     }
 
     protected void assertBody(String body) {
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/BaseHttpsTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/BaseHttpsTest.java
index a7edd84..17064e4 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/BaseHttpsTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/BaseHttpsTest.java
@@ -22,6 +22,9 @@ import org.apache.camel.Exchange;
 import org.apache.camel.Message;
 import org.apache.http.HttpStatus;
 
+import static org.apache.http.HttpHeaders.CONTENT_LENGTH;
+import static org.apache.http.HttpHeaders.CONTENT_TYPE;
+
 public abstract class BaseHttpsTest extends HttpsServerTestSupport {
 
     protected void assertExchange(Exchange exchange) {
@@ -35,8 +38,8 @@ public abstract class BaseHttpsTest extends HttpsServerTestSupport {
 
     protected void assertHeaders(Map<String, Object> headers) {
         assertEquals(HttpStatus.SC_OK, headers.get(Exchange.HTTP_RESPONSE_CODE));
-        assertEquals("12", headers.get("Content-Length"));
-        assertNotNull("Should have Content-Type header", headers.get("Content-Type"));
+        assertEquals("12", headers.get(CONTENT_LENGTH));
+        assertNotNull("Should have Content-Type header", headers.get(CONTENT_TYPE));
     }
 
     protected void assertBody(String body) {
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/CamelComponentVerifierExtensionTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/CamelComponentVerifierExtensionTest.java
index 281ae13..62b6c81 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/CamelComponentVerifierExtensionTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/CamelComponentVerifierExtensionTest.java
@@ -16,8 +16,8 @@
  */
 package org.apache.camel.component.http;
 
-import java.io.IOException;
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -25,44 +25,45 @@ import org.apache.camel.Component;
 import org.apache.camel.component.extension.ComponentVerifierExtension;
 import org.apache.camel.component.http.handler.AuthenticationValidationHandler;
 import org.apache.camel.component.http.handler.BasicValidationHandler;
-import org.apache.http.HttpException;
-import org.apache.http.HttpRequest;
-import org.apache.http.HttpResponse;
 import org.apache.http.HttpStatus;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
 import org.apache.http.localserver.RequestBasicAuth;
 import org.apache.http.localserver.ResponseBasicUnauthorized;
-import org.apache.http.protocol.HttpContext;
 import org.apache.http.protocol.HttpProcessor;
 import org.apache.http.protocol.HttpRequestHandler;
 import org.apache.http.protocol.ImmutableHttpProcessor;
 import org.apache.http.protocol.ResponseContent;
 import org.junit.After;
-import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
 public class CamelComponentVerifierExtensionTest extends BaseHttpTest {
     private static final String AUTH_USERNAME = "camel";
     private static final String AUTH_PASSWORD = "password";
 
     private HttpServer localServer;
+    private ComponentVerifierExtension verifier;
 
     @Before
     @Override
     public void setUp() throws Exception {
+        super.setUp();
+
         localServer = ServerBootstrap.bootstrap()
-            .setHttpProcessor(getHttpProcessor())
-            .registerHandler("/basic", new BasicValidationHandler("GET", null, null, getExpectedContent()))
-            .registerHandler("/auth", new AuthenticationValidationHandler("GET", null, null, getExpectedContent(), AUTH_USERNAME, AUTH_PASSWORD))
-            .registerHandler("/redirect", redirectTo(HttpStatus.SC_MOVED_PERMANENTLY, "/redirected"))
-            .registerHandler("/redirected", new BasicValidationHandler("GET", null, null, getExpectedContent()))
-            .create();
+                .setHttpProcessor(getHttpProcessor())
+                .registerHandler("/basic", new BasicValidationHandler(GET.name(), null, null, getExpectedContent()))
+                .registerHandler("/auth", new AuthenticationValidationHandler(GET.name(), null, null, getExpectedContent(), AUTH_USERNAME, AUTH_PASSWORD))
+                .registerHandler("/redirect", redirectTo(HttpStatus.SC_MOVED_PERMANENTLY, "/redirected"))
+                .registerHandler("/redirected", new BasicValidationHandler(GET.name(), null, null, getExpectedContent()))
+                .create();
 
         localServer.start();
 
-        super.setUp();
+        Component component = context().getComponent("http");
+        verifier = component.getExtension(ComponentVerifierExtension.class).orElseThrow(IllegalStateException::new);
     }
 
     @After
@@ -82,12 +83,12 @@ public class CamelComponentVerifierExtensionTest extends BaseHttpTest {
 
     private HttpProcessor getHttpProcessor() {
         return new ImmutableHttpProcessor(
-            Arrays.asList(
-                new RequestBasicAuth()
-            ),
-            Arrays.asList(
-                new ResponseContent(),
-                new ResponseBasicUnauthorized())
+                Collections.singletonList(
+                        new RequestBasicAuth()
+                ),
+                Arrays.asList(
+                        new ResponseContent(),
+                        new ResponseBasicUnauthorized())
         );
     }
 
@@ -96,24 +97,19 @@ public class CamelComponentVerifierExtensionTest extends BaseHttpTest {
     // *************************************************
 
     protected String getLocalServerUri(String contextPath) {
-        return new StringBuilder()
-            .append("http://")
-            .append(localServer.getInetAddress().getHostName())
-            .append(":")
-            .append(localServer.getLocalPort())
-            .append(contextPath != null
-                ? contextPath.startsWith("/") ? contextPath : "/" + contextPath
-                : "")
-            .toString();
+        return "http://"
+                + localServer.getInetAddress().getHostName()
+                + ":"
+                + localServer.getLocalPort()
+                + (contextPath != null
+                        ? contextPath.startsWith("/") ? contextPath : "/" + contextPath
+                        : "");
     }
 
     private HttpRequestHandler redirectTo(int code, String path) {
-        return new HttpRequestHandler() {
-            @Override
-            public void handle(HttpRequest request, HttpResponse response, HttpContext context) throws HttpException, IOException {
-                response.setHeader("location", getLocalServerUri(path));
-                response.setStatusCode(code);
-            }
+        return (request, response, context) -> {
+            response.setHeader("location", getLocalServerUri(path));
+            response.setStatusCode(code);
         };
     }
 
@@ -123,33 +119,27 @@ public class CamelComponentVerifierExtensionTest extends BaseHttpTest {
 
     @Test
     public void testParameters() throws Exception {
-        Component component = context().getComponent("http");
-        ComponentVerifierExtension verifier = component.getExtension(ComponentVerifierExtension.class).orElseThrow(IllegalStateException::new);
-
         Map<String, Object> parameters = new HashMap<>();
         parameters.put("httpUri", getLocalServerUri("/basic"));
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.PARAMETERS, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
+        assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
     }
 
     @Test
     public void testMissingMandatoryParameters() throws Exception {
-        Component component = context().getComponent("http");
-        ComponentVerifierExtension verifier = component.getExtension(ComponentVerifierExtension.class).orElseThrow(IllegalStateException::new);
-
         Map<String, Object> parameters = new HashMap<>();
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.PARAMETERS, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
-        Assert.assertEquals(1, result.getErrors().size());
+        assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
+        assertEquals(1, result.getErrors().size());
 
         ComponentVerifierExtension.VerificationError error = result.getErrors().get(0);
 
-        Assert.assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.MISSING_PARAMETER, error.getCode());
-        Assert.assertTrue(error.getParameterKeys().contains("httpUri"));
+        assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.MISSING_PARAMETER, error.getCode());
+        assertTrue(error.getParameterKeys().contains("httpUri"));
     }
 
     // *************************************************
@@ -158,41 +148,32 @@ public class CamelComponentVerifierExtensionTest extends BaseHttpTest {
 
     @Test
     public void testConnectivity() throws Exception {
-        Component component = context().getComponent("http");
-        ComponentVerifierExtension verifier = component.getExtension(ComponentVerifierExtension.class).orElseThrow(IllegalStateException::new);
-
         Map<String, Object> parameters = new HashMap<>();
         parameters.put("httpUri", getLocalServerUri("/basic"));
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.CONNECTIVITY, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
+        assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
     }
 
     @Test
     public void testConnectivityWithWrongUri() throws Exception {
-        Component component = context().getComponent("http");
-        ComponentVerifierExtension verifier = component.getExtension(ComponentVerifierExtension.class).orElseThrow(IllegalStateException::new);
-
         Map<String, Object> parameters = new HashMap<>();
         parameters.put("httpUri", "http://www.not-existing-uri.unknown");
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.CONNECTIVITY, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
-        Assert.assertEquals(1, result.getErrors().size());
+        assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
+        assertEquals(1, result.getErrors().size());
 
         ComponentVerifierExtension.VerificationError error = result.getErrors().get(0);
 
-        Assert.assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.EXCEPTION, error.getCode());
-        Assert.assertTrue(error.getParameterKeys().contains("httpUri"));
+        assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.EXCEPTION, error.getCode());
+        assertTrue(error.getParameterKeys().contains("httpUri"));
     }
 
     @Test
     public void testConnectivityWithAuthentication() throws Exception {
-        Component component = context().getComponent("http");
-        ComponentVerifierExtension verifier = component.getExtension(ComponentVerifierExtension.class).orElseThrow(IllegalStateException::new);
-
         Map<String, Object> parameters = new HashMap<>();
         parameters.put("httpUri", getLocalServerUri("/auth"));
         parameters.put("authUsername", AUTH_USERNAME);
@@ -200,14 +181,11 @@ public class CamelComponentVerifierExtensionTest extends BaseHttpTest {
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.CONNECTIVITY, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
+        assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
     }
 
     @Test
     public void testConnectivityWithWrongAuthenticationData() throws Exception {
-        Component component = context().getComponent("http");
-        ComponentVerifierExtension verifier = component.getExtension(ComponentVerifierExtension.class).orElseThrow(IllegalStateException::new);
-
         Map<String, Object> parameters = new HashMap<>();
         parameters.put("httpUri", getLocalServerUri("/auth"));
         parameters.put("authUsername", "unknown");
@@ -215,48 +193,42 @@ public class CamelComponentVerifierExtensionTest extends BaseHttpTest {
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.CONNECTIVITY, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
-        Assert.assertEquals(1, result.getErrors().size());
+        assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
+        assertEquals(1, result.getErrors().size());
 
         ComponentVerifierExtension.VerificationError error = result.getErrors().get(0);
 
-        Assert.assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.AUTHENTICATION, error.getCode());
-        Assert.assertEquals(401, error.getDetails().get(ComponentVerifierExtension.VerificationError.HttpAttribute.HTTP_CODE));
-        Assert.assertTrue(error.getParameterKeys().contains("authUsername"));
-        Assert.assertTrue(error.getParameterKeys().contains("authPassword"));
+        assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.AUTHENTICATION, error.getCode());
+        assertEquals(401, error.getDetails().get(ComponentVerifierExtension.VerificationError.HttpAttribute.HTTP_CODE));
+        assertTrue(error.getParameterKeys().contains("authUsername"));
+        assertTrue(error.getParameterKeys().contains("authPassword"));
     }
 
     @Test
     public void testConnectivityWithRedirect() throws Exception {
-        Component component = context().getComponent("http");
-        ComponentVerifierExtension verifier = component.getExtension(ComponentVerifierExtension.class).orElseThrow(IllegalStateException::new);
-
         Map<String, Object> parameters = new HashMap<>();
         parameters.put("httpUri", getLocalServerUri("/redirect"));
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.CONNECTIVITY, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
+        assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
     }
 
     @Test
     public void testConnectivityWithRedirectDisabled() throws Exception {
-        Component component = context().getComponent("http");
-        ComponentVerifierExtension verifier = component.getExtension(ComponentVerifierExtension.class).orElseThrow(IllegalStateException::new);
-
         Map<String, Object> parameters = new HashMap<>();
         parameters.put("httpUri", getLocalServerUri("/redirect"));
         parameters.put("httpClient.redirectsEnabled", "false");
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.CONNECTIVITY, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
-        Assert.assertEquals(1, result.getErrors().size());
+        assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
+        assertEquals(1, result.getErrors().size());
 
         ComponentVerifierExtension.VerificationError error = result.getErrors().get(0);
 
-        Assert.assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.GENERIC, error.getCode());
-        Assert.assertEquals(getLocalServerUri("/redirected"), error.getDetails().get(ComponentVerifierExtension.VerificationError.HttpAttribute.HTTP_REDIRECT));
-        Assert.assertTrue(error.getParameterKeys().contains("httpUri"));
+        assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.GENERIC, error.getCode());
+        assertEquals(getLocalServerUri("/redirected"), error.getDetails().get(ComponentVerifierExtension.VerificationError.HttpAttribute.HTTP_REDIRECT));
+        assertTrue(error.getParameterKeys().contains("httpUri"));
     }
 }
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/CamelComponentVerifierTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/CamelComponentVerifierTest.java
index 21c0d76..4dca58a 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/CamelComponentVerifierTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/CamelComponentVerifierTest.java
@@ -16,52 +16,53 @@
  */
 package org.apache.camel.component.http;
 
-import java.io.IOException;
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 
 import org.apache.camel.component.extension.ComponentVerifierExtension;
 import org.apache.camel.component.http.handler.AuthenticationValidationHandler;
 import org.apache.camel.component.http.handler.BasicValidationHandler;
-import org.apache.http.HttpException;
-import org.apache.http.HttpRequest;
-import org.apache.http.HttpResponse;
 import org.apache.http.HttpStatus;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
 import org.apache.http.localserver.RequestBasicAuth;
 import org.apache.http.localserver.ResponseBasicUnauthorized;
-import org.apache.http.protocol.HttpContext;
 import org.apache.http.protocol.HttpProcessor;
 import org.apache.http.protocol.HttpRequestHandler;
 import org.apache.http.protocol.ImmutableHttpProcessor;
 import org.apache.http.protocol.ResponseContent;
 import org.junit.After;
-import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
 public class CamelComponentVerifierTest extends BaseHttpTest {
     private static final String AUTH_USERNAME = "camel";
     private static final String AUTH_PASSWORD = "password";
 
     private HttpServer localServer;
+    private ComponentVerifierExtension verifier;
 
     @Before
     @Override
     public void setUp() throws Exception {
+        super.setUp();
+
         localServer = ServerBootstrap.bootstrap()
-            .setHttpProcessor(getHttpProcessor())
-            .registerHandler("/basic", new BasicValidationHandler("GET", null, null, getExpectedContent()))
-            .registerHandler("/auth", new AuthenticationValidationHandler("GET", null, null, getExpectedContent(), AUTH_USERNAME, AUTH_PASSWORD))
-            .registerHandler("/redirect", redirectTo(HttpStatus.SC_MOVED_PERMANENTLY, "/redirected"))
-            .registerHandler("/redirected", new BasicValidationHandler("GET", null, null, getExpectedContent()))
-            .create();
+                .setHttpProcessor(getHttpProcessor())
+                .registerHandler("/basic", new BasicValidationHandler(GET.name(), null, null, getExpectedContent()))
+                .registerHandler("/auth", new AuthenticationValidationHandler(GET.name(), null, null, getExpectedContent(), AUTH_USERNAME, AUTH_PASSWORD))
+                .registerHandler("/redirect", redirectTo(HttpStatus.SC_MOVED_PERMANENTLY, "/redirected"))
+                .registerHandler("/redirected", new BasicValidationHandler(GET.name(), null, null, getExpectedContent()))
+                .create();
 
         localServer.start();
 
-        super.setUp();
+        HttpComponent component = context().getComponent("http", HttpComponent.class);
+        verifier = component.getVerifier();
     }
 
     @After
@@ -81,12 +82,12 @@ public class CamelComponentVerifierTest extends BaseHttpTest {
 
     private HttpProcessor getHttpProcessor() {
         return new ImmutableHttpProcessor(
-            Arrays.asList(
-                new RequestBasicAuth()
-            ),
-            Arrays.asList(
-                new ResponseContent(),
-                new ResponseBasicUnauthorized())
+                Collections.singletonList(
+                        new RequestBasicAuth()
+                ),
+                Arrays.asList(
+                        new ResponseContent(),
+                        new ResponseBasicUnauthorized())
         );
     }
 
@@ -95,24 +96,19 @@ public class CamelComponentVerifierTest extends BaseHttpTest {
     // *************************************************
 
     protected String getLocalServerUri(String contextPath) {
-        return new StringBuilder()
-            .append("http://")
-            .append(localServer.getInetAddress().getHostName())
-            .append(":")
-            .append(localServer.getLocalPort())
-            .append(contextPath != null
-                ? contextPath.startsWith("/") ? contextPath : "/" + contextPath
-                : "")
-            .toString();
+        return "http://"
+                + localServer.getInetAddress().getHostName()
+                + ":"
+                + localServer.getLocalPort()
+                + (contextPath != null
+                        ? contextPath.startsWith("/") ? contextPath : "/" + contextPath
+                        : "");
     }
 
     private HttpRequestHandler redirectTo(int code, String path) {
-        return new HttpRequestHandler() {
-            @Override
-            public void handle(HttpRequest request, HttpResponse response, HttpContext context) throws HttpException, IOException {
-                response.setHeader("location", getLocalServerUri(path));
-                response.setStatusCode(code);
-            }
+        return (request, response, context) -> {
+            response.setHeader("location", getLocalServerUri(path));
+            response.setStatusCode(code);
         };
     }
 
@@ -122,33 +118,27 @@ public class CamelComponentVerifierTest extends BaseHttpTest {
 
     @Test
     public void testParameters() throws Exception {
-        HttpComponent component = context().getComponent("http", HttpComponent.class);
-        ComponentVerifierExtension verifier = component.getVerifier();
-
         Map<String, Object> parameters = new HashMap<>();
         parameters.put("httpUri", getLocalServerUri("/basic"));
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.PARAMETERS, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
+        assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
     }
 
     @Test
     public void testMissingMandatoryParameters() throws Exception {
-        HttpComponent component = context().getComponent("http", HttpComponent.class);
-        ComponentVerifierExtension verifier = component.getVerifier();
-
         Map<String, Object> parameters = new HashMap<>();
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.PARAMETERS, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
-        Assert.assertEquals(1, result.getErrors().size());
+        assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
+        assertEquals(1, result.getErrors().size());
 
         ComponentVerifierExtension.VerificationError error = result.getErrors().get(0);
 
-        Assert.assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.MISSING_PARAMETER, error.getCode());
-        Assert.assertTrue(error.getParameterKeys().contains("httpUri"));
+        assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.MISSING_PARAMETER, error.getCode());
+        assertTrue(error.getParameterKeys().contains("httpUri"));
     }
 
     // *************************************************
@@ -157,41 +147,32 @@ public class CamelComponentVerifierTest extends BaseHttpTest {
 
     @Test
     public void testConnectivity() throws Exception {
-        HttpComponent component = context().getComponent("http", HttpComponent.class);
-        ComponentVerifierExtension verifier = component.getVerifier();
-
         Map<String, Object> parameters = new HashMap<>();
         parameters.put("httpUri", getLocalServerUri("/basic"));
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.CONNECTIVITY, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
+        assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
     }
 
     @Test
     public void testConnectivityWithWrongUri() throws Exception {
-        HttpComponent component = context().getComponent("http", HttpComponent.class);
-        ComponentVerifierExtension verifier = component.getVerifier();
-
         Map<String, Object> parameters = new HashMap<>();
         parameters.put("httpUri", "http://www.not-existing-uri.unknown");
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.CONNECTIVITY, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
-        Assert.assertEquals(1, result.getErrors().size());
+        assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
+        assertEquals(1, result.getErrors().size());
 
         ComponentVerifierExtension.VerificationError error = result.getErrors().get(0);
 
-        Assert.assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.EXCEPTION, error.getCode());
-        Assert.assertTrue(error.getParameterKeys().contains("httpUri"));
+        assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.EXCEPTION, error.getCode());
+        assertTrue(error.getParameterKeys().contains("httpUri"));
     }
 
     @Test
     public void testConnectivityWithAuthentication() throws Exception {
-        HttpComponent component = context().getComponent("http", HttpComponent.class);
-        ComponentVerifierExtension verifier = component.getVerifier();
-
         Map<String, Object> parameters = new HashMap<>();
         parameters.put("httpUri", getLocalServerUri("/auth"));
         parameters.put("authUsername", AUTH_USERNAME);
@@ -199,14 +180,11 @@ public class CamelComponentVerifierTest extends BaseHttpTest {
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.CONNECTIVITY, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
+        assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
     }
 
     @Test
     public void testConnectivityWithWrongAuthenticationData() throws Exception {
-        HttpComponent component = context().getComponent("http", HttpComponent.class);
-        ComponentVerifierExtension verifier = component.getVerifier();
-
         Map<String, Object> parameters = new HashMap<>();
         parameters.put("httpUri", getLocalServerUri("/auth"));
         parameters.put("authUsername", "unknown");
@@ -214,48 +192,42 @@ public class CamelComponentVerifierTest extends BaseHttpTest {
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.CONNECTIVITY, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
-        Assert.assertEquals(1, result.getErrors().size());
+        assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
+        assertEquals(1, result.getErrors().size());
 
         ComponentVerifierExtension.VerificationError error = result.getErrors().get(0);
 
-        Assert.assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.AUTHENTICATION, error.getCode());
-        Assert.assertEquals(401, error.getDetails().get(ComponentVerifierExtension.VerificationError.HttpAttribute.HTTP_CODE));
-        Assert.assertTrue(error.getParameterKeys().contains("authUsername"));
-        Assert.assertTrue(error.getParameterKeys().contains("authPassword"));
+        assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.AUTHENTICATION, error.getCode());
+        assertEquals(401, error.getDetails().get(ComponentVerifierExtension.VerificationError.HttpAttribute.HTTP_CODE));
+        assertTrue(error.getParameterKeys().contains("authUsername"));
+        assertTrue(error.getParameterKeys().contains("authPassword"));
     }
 
     @Test
     public void testConnectivityWithRedirect() throws Exception {
-        HttpComponent component = context().getComponent("http", HttpComponent.class);
-        ComponentVerifierExtension verifier = component.getVerifier();
-
         Map<String, Object> parameters = new HashMap<>();
         parameters.put("httpUri", getLocalServerUri("/redirect"));
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.CONNECTIVITY, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
+        assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
     }
 
     @Test
     public void testConnectivityWithRedirectDisabled() throws Exception {
-        HttpComponent component = context().getComponent("http", HttpComponent.class);
-        ComponentVerifierExtension verifier = component.getVerifier();
-
         Map<String, Object> parameters = new HashMap<>();
         parameters.put("httpUri", getLocalServerUri("/redirect"));
         parameters.put("httpClient.redirectsEnabled", "false");
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.CONNECTIVITY, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
-        Assert.assertEquals(1, result.getErrors().size());
+        assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
+        assertEquals(1, result.getErrors().size());
 
         ComponentVerifierExtension.VerificationError error = result.getErrors().get(0);
 
-        Assert.assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.GENERIC, error.getCode());
-        Assert.assertEquals(getLocalServerUri("/redirected"), error.getDetails().get(ComponentVerifierExtension.VerificationError.HttpAttribute.HTTP_REDIRECT));
-        Assert.assertTrue(error.getParameterKeys().contains("httpUri"));
+        assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.GENERIC, error.getCode());
+        assertEquals(getLocalServerUri("/redirected"), error.getDetails().get(ComponentVerifierExtension.VerificationError.HttpAttribute.HTTP_REDIRECT));
+        assertTrue(error.getParameterKeys().contains("httpUri"));
     }
 }
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HeaderFilteringTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HeaderFilteringTest.java
index 0472982..0126843 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HeaderFilteringTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HeaderFilteringTest.java
@@ -38,6 +38,9 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+import static org.apache.http.HttpHeaders.HOST;
+import static org.apache.http.entity.ContentType.APPLICATION_JSON;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.fail;
 
@@ -54,12 +57,12 @@ public class HeaderFilteringTest {
         final HttpComponent http = new HttpComponent();
 
         final DefaultCamelContext context = new DefaultCamelContext();
-        final Producer producer = http.createProducer(context, "http://localhost:" + port, "GET", "/test", null, null,
-            "application/json", "application/json", new RestConfiguration(), Collections.emptyMap());
+        final Producer producer = http.createProducer(context, "http://localhost:" + port, GET.name(), "/test", null, null,
+                APPLICATION_JSON.getMimeType(), APPLICATION_JSON.getMimeType(), new RestConfiguration(), Collections.emptyMap());
 
         final DefaultExchange exchange = new DefaultExchange(context);
         final DefaultMessage in = new DefaultMessage(context);
-        in.setHeader("Host", "www.not-localhost.io");
+        in.setHeader(HOST, "www.not-localhost.io");
         in.setBody(BODY);
         exchange.setIn(in);
 
@@ -84,12 +87,12 @@ public class HeaderFilteringTest {
         server.stop(0);
     }
 
-    void handleTest(final HttpExchange exchange) throws IOException {
+    private void handleTest(final HttpExchange exchange) throws IOException {
         try (final OutputStream responseBody = exchange.getResponseBody()) {
             try {
                 assertThat(exchange.getRequestBody())
                     .hasSameContentAs(new ByteArrayInputStream(BODY.getBytes(StandardCharsets.UTF_8)));
-                assertThat(exchange.getRequestHeaders()).containsEntry("Host",
+                assertThat(exchange.getRequestHeaders()).containsEntry(HOST,
                     Collections.singletonList("localhost:" + port));
 
                 exchange.sendResponseHeaders(200, 0);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpAuthenticationTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpAuthenticationTest.java
index e372d81..b1effcb 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpAuthenticationTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpAuthenticationTest.java
@@ -22,7 +22,6 @@ import java.util.Map;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.Message;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.AuthenticationValidationHandler;
 import org.apache.http.HttpRequestInterceptor;
 import org.apache.http.HttpResponseInterceptor;
@@ -38,6 +37,9 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+import static org.apache.http.HttpHeaders.CONTENT_TYPE;
+
 public class HttpAuthenticationTest extends BaseHttpTest {
 
     private HttpServer localServer;
@@ -54,7 +56,7 @@ public class HttpAuthenticationTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/search", new AuthenticationValidationHandler("GET", null, null, getExpectedContent(), user, password)).create();
+                registerHandler("/search", new AuthenticationValidationHandler(GET.name(), null, null, getExpectedContent(), user, password)).create();
         localServer.start();
 
         super.setUp();
@@ -73,10 +75,9 @@ public class HttpAuthenticationTest extends BaseHttpTest {
     @Test
     public void basicAuthenticationShouldSuccess() throws Exception {
         Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/search?authUsername=" + user + "&authPassword="
-            + password, new Processor() {
-                public void process(Exchange exchange) throws Exception {
-                }
+            + password, exchange1 -> {
             });
+
         assertExchange(exchange);
     }
 
@@ -84,9 +85,7 @@ public class HttpAuthenticationTest extends BaseHttpTest {
     @Test
     public void basicAuthenticationPreemptiveShouldSuccess() throws Exception {
         Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/search?authUsername=" + user + "&authPassword="
-            + password + "&authenticationPreemptive=true", new Processor() {
-                public void process(Exchange exchange) throws Exception {
-                }
+            + password + "&authenticationPreemptive=true", exchange1 -> {
             });
 
         assertExchange(exchange);
@@ -94,9 +93,7 @@ public class HttpAuthenticationTest extends BaseHttpTest {
 
     @Test
     public void basicAuthenticationShouldFailWithoutCreds() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/search?throwExceptionOnFailure=false", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/search?throwExceptionOnFailure=false", exchange1 -> {
         });
 
         assertExchangeFailed(exchange);
@@ -105,9 +102,7 @@ public class HttpAuthenticationTest extends BaseHttpTest {
     @Test
     public void basicAuthenticationShouldFailWithWrongCreds() throws Exception {
         Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort()
-            + "/search?throwExceptionOnFailure=false&authUsername=camel&authPassword=wrong", new Processor() {
-                public void process(Exchange exchange) throws Exception {
-                }
+            + "/search?throwExceptionOnFailure=false&authUsername=camel&authPassword=wrong", exchange1 -> {
             });
 
         assertExchangeFailed(exchange);
@@ -120,8 +115,8 @@ public class HttpAuthenticationTest extends BaseHttpTest {
         List<HttpResponseInterceptor> responseInterceptors = new ArrayList<>();
         responseInterceptors.add(new ResponseContent());
         responseInterceptors.add(new ResponseBasicUnauthorized());
-        ImmutableHttpProcessor httpproc = new ImmutableHttpProcessor(requestInterceptors, responseInterceptors);
-        return httpproc;
+
+        return new ImmutableHttpProcessor(requestInterceptors, responseInterceptors);
     }
 
     protected void assertExchangeFailed(Exchange exchange) {
@@ -133,7 +128,7 @@ public class HttpAuthenticationTest extends BaseHttpTest {
         Map<String, Object> headers = out.getHeaders();
         assertEquals(HttpStatus.SC_UNAUTHORIZED, headers.get(Exchange.HTTP_RESPONSE_CODE));
         assertEquals("0", headers.get("Content-Length"));
-        assertNull(headers.get("Content-Type"));
+        assertNull(headers.get(CONTENT_TYPE));
 
         assertEquals("", out.getBody(String.class));
     }
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpBodyTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpBodyTest.java
index 7d025dd..f8fae1c 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpBodyTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpBodyTest.java
@@ -22,7 +22,6 @@ import java.util.HashMap;
 import java.util.Map;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.BasicValidationHandler;
 import org.apache.camel.component.http.handler.HeaderValidationHandler;
 import org.apache.http.impl.bootstrap.HttpServer;
@@ -31,17 +30,22 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.POST;
+import static org.apache.http.HttpHeaders.CONTENT_TYPE;
+import static org.apache.http.entity.ContentType.IMAGE_JPEG;
+
 public class HttpBodyTest extends BaseHttpTest {
     private String protocolString = "http://";
     // default content encoding of the local test server
     private String charset = "ISO-8859-1";
     private HttpServer localServer;
+    private String endpointUrl;
 
     @Before
     @Override
     public void setUp() throws Exception {
         Map<String, String> expectedHeaders = new HashMap<>();
-        expectedHeaders.put("Content-Type", "image/jpeg");
+        expectedHeaders.put(CONTENT_TYPE, IMAGE_JPEG.getMimeType());
 
         localServer = ServerBootstrap.bootstrap().
                 setHttpProcessor(getBasicHttpProcessor()).
@@ -49,11 +53,13 @@ public class HttpBodyTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/post", new BasicValidationHandler("POST", null, getBody(), getExpectedContent())).
-                registerHandler("/post1", new HeaderValidationHandler("POST", null, null, getExpectedContent(), expectedHeaders)).
+                registerHandler("/post", new BasicValidationHandler(POST.name(), null, getBody(), getExpectedContent())).
+                registerHandler("/post1", new HeaderValidationHandler(POST.name(), null, null, getExpectedContent(), expectedHeaders)).
                 create();
         localServer.start();
 
+        endpointUrl = getProtocolString() + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort();
+
         super.setUp();
     }
 
@@ -77,13 +83,11 @@ public class HttpBodyTest extends BaseHttpTest {
 
     @Test
     public void httpPostWithStringBody() throws Exception {
-        Exchange exchange = template.request(getProtocolString() + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/post", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                // without this property, camel use the os default encoding
-                // to create the byte array for the StringRequestEntity
-                exchange.setProperty(Exchange.CHARSET_NAME, charset);
-                exchange.getIn().setBody(getBody());
-            }
+        Exchange exchange = template.request(endpointUrl + "/post", exchange1 -> {
+            // without this property, camel use the os default encoding
+            // to create the byte array for the StringRequestEntity
+            exchange1.setProperty(Exchange.CHARSET_NAME, charset);
+            exchange1.getIn().setBody(getBody());
         });
 
         assertExchange(exchange);
@@ -91,22 +95,14 @@ public class HttpBodyTest extends BaseHttpTest {
 
     @Test
     public void httpPostWithByteArrayBody() throws Exception {
-        Exchange exchange = template.request(getProtocolString() + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/post", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setBody(getBody().getBytes(charset));
-            }
-        });
+        Exchange exchange = template.request(endpointUrl + "/post", exchange1 -> exchange1.getIn().setBody(getBody().getBytes(charset)));
 
         assertExchange(exchange);
     }
 
     @Test
     public void httpPostWithInputStreamBody() throws Exception {
-        Exchange exchange = template.request(getProtocolString() + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/post", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setBody(new ByteArrayInputStream(getBody().getBytes(charset)));
-            }
-        });
+        Exchange exchange = template.request(endpointUrl + "/post", exchange1 -> exchange1.getIn().setBody(new ByteArrayInputStream(getBody().getBytes(charset))));
 
         assertExchange(exchange);
     }
@@ -114,11 +110,9 @@ public class HttpBodyTest extends BaseHttpTest {
     @Test
     public void httpPostWithImage() throws Exception {
 
-        Exchange exchange = template.send(getProtocolString() + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/post1", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setBody(new File("src/test/data/logo.jpeg"));
-                exchange.getIn().setHeader("Content-Type", "image/jpeg");
-            }
+        Exchange exchange = template.send(endpointUrl + "/post1", exchange1 -> {
+            exchange1.getIn().setBody(new File("src/test/data/logo.jpeg"));
+            exchange1.getIn().setHeader(CONTENT_TYPE, IMAGE_JPEG.getMimeType());
         });
 
         assertExchange(exchange);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpBridgeEndpointTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpBridgeEndpointTest.java
index 7db63c9..b57c773 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpBridgeEndpointTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpBridgeEndpointTest.java
@@ -17,7 +17,6 @@
 package org.apache.camel.component.http;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.BasicRawQueryValidationHandler;
 import org.apache.camel.component.http.handler.BasicValidationHandler;
 import org.apache.http.impl.bootstrap.HttpServer;
@@ -26,9 +25,13 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.Exchange.*;
+import static org.apache.camel.http.common.HttpMethods.GET;
+
 public class HttpBridgeEndpointTest extends BaseHttpTest {
 
     private HttpServer localServer;
+    private String url;
 
     @Before
     @Override
@@ -39,10 +42,12 @@ public class HttpBridgeEndpointTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/", new BasicValidationHandler("GET", null, null, getExpectedContent())).
-                registerHandler("/query", new BasicRawQueryValidationHandler("GET", "x=%3B", null, getExpectedContent())).create();
+                registerHandler("/", new BasicValidationHandler(GET.name(), null, null, getExpectedContent())).
+                registerHandler("/query", new BasicRawQueryValidationHandler(GET.name(), "x=%3B", null, getExpectedContent())).create();
         localServer.start();
 
+        url = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort();
+
         super.setUp();
     }
 
@@ -58,33 +63,23 @@ public class HttpBridgeEndpointTest extends BaseHttpTest {
 
     @Test
     public void notBridgeEndpoint() throws Exception {
-        Exchange exchange = template.request("http://host/?bridgeEndpoint=false", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_URI, "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/");
-            }
-        });
+        Exchange exchange = template.request("http://host/?bridgeEndpoint=false", exchange1 -> exchange1.getIn().setHeader(HTTP_URI, url + "/"));
 
         assertExchange(exchange);
     }
 
     @Test
     public void bridgeEndpoint() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/?bridgeEndpoint=true", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_URI, "http://host:8080/");
-            }
-        });
+        Exchange exchange = template.request(url + "/?bridgeEndpoint=true", exchange1 -> exchange1.getIn().setHeader(HTTP_URI, "http://host:8080/"));
 
         assertExchange(exchange);
     }
 
     @Test
     public void bridgeEndpointWithQuery() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/query?bridgeEndpoint=true", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_URI, "http://host:8080/");
-                exchange.getIn().setHeader(Exchange.HTTP_QUERY, "x=%3B");
-            }
+        Exchange exchange = template.request(url + "/query?bridgeEndpoint=true", exchange1 -> {
+            exchange1.getIn().setHeader(HTTP_URI, "http://host:8080/");
+            exchange1.getIn().setHeader(HTTP_QUERY, "x=%3B");
         });
 
         assertExchange(exchange);
@@ -92,12 +87,10 @@ public class HttpBridgeEndpointTest extends BaseHttpTest {
 
     @Test
     public void bridgeEndpointWithRawQueryAndQuery() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/query?bridgeEndpoint=true", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_URI, "http://host:8080/");
-                exchange.getIn().setHeader(Exchange.HTTP_RAW_QUERY, "x=%3B");
-                exchange.getIn().setHeader(Exchange.HTTP_QUERY, "x=;");
-            }
+        Exchange exchange = template.request(url + "/query?bridgeEndpoint=true", exchange1 -> {
+            exchange1.getIn().setHeader(HTTP_URI, "http://host:8080/");
+            exchange1.getIn().setHeader(HTTP_RAW_QUERY, "x=%3B");
+            exchange1.getIn().setHeader(HTTP_QUERY, "x=;");
         });
 
         assertExchange(exchange);
@@ -105,12 +98,7 @@ public class HttpBridgeEndpointTest extends BaseHttpTest {
 
     @Test
     public void unsafeCharsInHttpURIHeader() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/?bridgeEndpoint=true", new Processor() {
-            @Override
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_URI, "/<>{}");
-            }
-        });
+        Exchange exchange = template.request(url + "/?bridgeEndpoint=true", exchange1 -> exchange1.getIn().setHeader(HTTP_URI, "/<>{}"));
 
         assertNull(exchange.getException());
         assertExchange(exchange);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpCamelHeadersTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpCamelHeadersTest.java
index 781c8e8..001fb16 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpCamelHeadersTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpCamelHeadersTest.java
@@ -21,7 +21,6 @@ import java.util.HashMap;
 import java.util.Map;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.HeaderValidationHandler;
 import org.apache.http.HttpException;
 import org.apache.http.HttpRequest;
@@ -34,6 +33,9 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+import static org.apache.http.HttpHeaders.ACCEPT_LANGUAGE;
+
 public class HttpCamelHeadersTest extends BaseHttpTest {
 
     protected HttpServer localServer;
@@ -43,7 +45,7 @@ public class HttpCamelHeadersTest extends BaseHttpTest {
     public void setUp() throws Exception {
         Map<String, String> expectedHeaders = new HashMap<>();
         expectedHeaders.put("TestHeader", "test");
-        expectedHeaders.put("Accept-Language", "pl");
+        expectedHeaders.put(ACCEPT_LANGUAGE, "pl");
 
         localServer = ServerBootstrap.bootstrap().
                 setHttpProcessor(getBasicHttpProcessor()).
@@ -51,7 +53,7 @@ public class HttpCamelHeadersTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/", new MyHeaderValidationHandler("GET", "HTTP/1.0", getExpectedContent(), expectedHeaders)).create();
+                registerHandler("/", new MyHeaderValidationHandler(GET.name(), "HTTP/1.0", getExpectedContent(), expectedHeaders)).create();
         localServer.start();
 
         super.setUp();
@@ -77,7 +79,7 @@ public class HttpCamelHeadersTest extends BaseHttpTest {
         super.assertHeaders(headers);
 
         assertEquals("test", headers.get("TestHeader"));
-        assertEquals("pl", headers.get("Accept-Language"));
+        assertEquals("pl", headers.get(ACCEPT_LANGUAGE));
     }
 
     private Exchange doExchange() {
@@ -87,14 +89,11 @@ public class HttpCamelHeadersTest extends BaseHttpTest {
                         + ":"
                         + localServer.getLocalPort()
                         + "/"
-                        + setupEndpointParams(),
-                new Processor() {
-                    public void process(Exchange exchange) throws Exception {
-                        exchange.getIn().setHeader("TestHeader", "test");
-                        exchange.getIn().setHeader("Accept-Language", "pl");
-                        exchange.getIn().setHeader(Exchange.HTTP_PROTOCOL_VERSION, "HTTP/1.0");
-                    }
-                }
+                        + setupEndpointParams(), exchange -> {
+                exchange.getIn().setHeader("TestHeader", "test");
+                exchange.getIn().setHeader(ACCEPT_LANGUAGE, "pl");
+                exchange.getIn().setHeader(Exchange.HTTP_PROTOCOL_VERSION, "HTTP/1.0");
+        }
         );
     }
 
@@ -106,7 +105,7 @@ public class HttpCamelHeadersTest extends BaseHttpTest {
         private String expectProtocolVersion;
 
         MyHeaderValidationHandler(String expectedMethod, String protocolVersion,
-                                         String responseContent, Map<String, String> expectedHeaders) {
+                                  String responseContent, Map<String, String> expectedHeaders) {
             super(expectedMethod, null, null, responseContent, expectedHeaders);
             expectProtocolVersion = protocolVersion;
         }
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpCharsetTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpCharsetTest.java
index af17a40..371412d 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpCharsetTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpCharsetTest.java
@@ -19,7 +19,6 @@ package org.apache.camel.component.http;
 import java.io.ByteArrayInputStream;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.BasicValidationHandler;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
@@ -27,6 +26,8 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.POST;
+
 public class HttpCharsetTest extends BaseHttpTest {
 
     // default content encoding of the local test server
@@ -43,7 +44,7 @@ public class HttpCharsetTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/", new BasicValidationHandler("POST", null, getBody(), getExpectedContent())).create();
+                registerHandler("/", new BasicValidationHandler(POST.name(), null, getBody(), getExpectedContent())).create();
         localServer.start();
 
         super.setUp();
@@ -61,11 +62,9 @@ public class HttpCharsetTest extends BaseHttpTest {
 
     @Test
     public void sendCharsetInExchangeProperty() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.setProperty(Exchange.CHARSET_NAME, charset);
-                exchange.getIn().setBody(getBody());
-            }
+        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/", exchange1 -> {
+            exchange1.setProperty(Exchange.CHARSET_NAME, charset);
+            exchange1.getIn().setBody(getBody());
         });
 
         assertExchange(exchange);
@@ -73,11 +72,9 @@ public class HttpCharsetTest extends BaseHttpTest {
 
     @Test
     public void sendByteArrayCharsetInExchangeProperty() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.setProperty(Exchange.CHARSET_NAME, charset);
-                exchange.getIn().setBody(getBody().getBytes(charset));
-            }
+        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/", exchange1 -> {
+            exchange1.setProperty(Exchange.CHARSET_NAME, charset);
+            exchange1.getIn().setBody(getBody().getBytes(charset));
         });
 
         assertExchange(exchange);
@@ -85,26 +82,24 @@ public class HttpCharsetTest extends BaseHttpTest {
 
     @Test
     public void sendInputStreamCharsetInExchangeProperty() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.setProperty(Exchange.CHARSET_NAME, charset);
-                exchange.getIn().setBody(new ByteArrayInputStream(getBody().getBytes(charset)));
-            }
+        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/", exchange1 -> {
+            exchange1.setProperty(Exchange.CHARSET_NAME, charset);
+            exchange1.getIn().setBody(new ByteArrayInputStream(getBody().getBytes(charset)));
         });
 
         assertExchange(exchange);
     }
 
     protected String getBody() {
-        char lattinSmallLetterAWithDiaeresis = 0x00E4;
-        char lattinSmallLetterOWithDiaeresis = 0x00F6;
-        char lattinSmallLetterUWithDiaeresis = 0x00FC;
-        char lattinSmallLetterSharpS = 0x00DF;
+        char latinSmallLetterAWithDiaeresis = 0x00E4;
+        char latinSmallLetterOWithDiaeresis = 0x00F6;
+        char latinSmallLetterUWithDiaeresis = 0x00FC;
+        char latinSmallLetterSharpS = 0x00DF;
 
         return "hl=de&q=camel+"
-                + lattinSmallLetterAWithDiaeresis
-                + lattinSmallLetterOWithDiaeresis
-                + lattinSmallLetterUWithDiaeresis
-                + lattinSmallLetterSharpS;
+                + latinSmallLetterAWithDiaeresis
+                + latinSmallLetterOWithDiaeresis
+                + latinSmallLetterUWithDiaeresis
+                + latinSmallLetterSharpS;
     }
 }
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpCompressionTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpCompressionTest.java
index 4f7edbc..d95f740 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpCompressionTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpCompressionTest.java
@@ -28,7 +28,6 @@ import java.util.zip.GZIPOutputStream;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.Message;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.HeaderValidationHandler;
 import org.apache.http.Header;
 import org.apache.http.HttpEntity;
@@ -52,6 +51,11 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.http.common.HttpMethods.POST;
+import static org.apache.http.HttpHeaders.CONTENT_ENCODING;
+import static org.apache.http.HttpHeaders.CONTENT_TYPE;
+import static org.apache.http.entity.ContentType.*;
+
 public class HttpCompressionTest extends BaseHttpTest {
 
     private HttpServer localServer;
@@ -60,8 +64,8 @@ public class HttpCompressionTest extends BaseHttpTest {
     @Override
     public void setUp() throws Exception {
         Map<String, String> expectedHeaders = new HashMap<>();
-        expectedHeaders.put("Content-Type", "text/plain");
-        expectedHeaders.put("Content-Encoding", "gzip");
+        expectedHeaders.put(CONTENT_TYPE, TEXT_PLAIN.getMimeType());
+        expectedHeaders.put(CONTENT_ENCODING, "gzip");
 
         localServer = ServerBootstrap.bootstrap().
                 setHttpProcessor(getBasicHttpProcessor()).
@@ -69,7 +73,7 @@ public class HttpCompressionTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/", new HeaderValidationHandler("POST", null, getBody(), getExpectedContent(), expectedHeaders)).create();
+                registerHandler("/", new HeaderValidationHandler(POST.name(), null, getBody(), getExpectedContent(), expectedHeaders)).create();
         localServer.start();
 
         super.setUp();
@@ -86,13 +90,11 @@ public class HttpCompressionTest extends BaseHttpTest {
     }
 
     @Test
-    public void compressedHttpPost() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.CONTENT_TYPE, "text/plain");
-                exchange.getIn().setHeader(Exchange.CONTENT_ENCODING, "gzip");
-                exchange.getIn().setBody(getBody());
-            }
+    public void compressedHttpPost() {
+        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/", exchange1 -> {
+            exchange1.getIn().setHeader(Exchange.CONTENT_TYPE, "text/plain");
+            exchange1.getIn().setHeader(Exchange.CONTENT_ENCODING, "gzip");
+            exchange1.getIn().setBody(getBody());
         });
 
         assertNotNull(exchange);
@@ -113,8 +115,8 @@ public class HttpCompressionTest extends BaseHttpTest {
         List<HttpResponseInterceptor> responseInterceptors = new ArrayList<>();
         responseInterceptors.add(new ResponseCompressingInterceptor());
         responseInterceptors.add(new ResponseBasicUnauthorized());
-        ImmutableHttpProcessor httpproc = new ImmutableHttpProcessor(requestInterceptors, responseInterceptors);
-        return httpproc;
+
+        return new ImmutableHttpProcessor(requestInterceptors, responseInterceptors);
     }
 
     protected String getBody() {
@@ -125,7 +127,7 @@ public class HttpCompressionTest extends BaseHttpTest {
 
         @Override
         public void process(HttpRequest request, HttpContext context) throws HttpException, IOException {
-            Header contentEncoding = request.getFirstHeader("Content-Encoding");
+            Header contentEncoding = request.getFirstHeader(CONTENT_ENCODING);
 
             if (contentEncoding != null
                     && contentEncoding.getValue().equalsIgnoreCase("gzip")) {
@@ -145,8 +147,8 @@ public class HttpCompressionTest extends BaseHttpTest {
             @Override
             public InputStream getContent() throws IOException,
                     IllegalStateException {
-                InputStream wrappedin = wrappedEntity.getContent();
-                return new GZIPInputStream(wrappedin);
+                InputStream wrappedIn = wrappedEntity.getContent();
+                return new GZIPInputStream(wrappedIn);
             }
 
             @Override
@@ -165,7 +167,7 @@ public class HttpCompressionTest extends BaseHttpTest {
 
         @Override
         public void process(HttpResponse response, HttpContext context) throws HttpException, IOException {
-            response.setHeader("Content-Encoding", "gzip");
+            response.setHeader(CONTENT_ENCODING, "gzip");
             HttpEntity entity = response.getEntity();
             response.setEntity(new GzipCompressingEntity(entity));
         }
@@ -178,12 +180,12 @@ public class HttpCompressionTest extends BaseHttpTest {
 
             @Override
             public Header getContentEncoding() {
-                return new BasicHeader("Content-Encoding", "gzip");
+                return new BasicHeader(CONTENT_ENCODING, "gzip");
             }
 
             @Override
-            public void writeTo(OutputStream outstream) throws IOException {
-                GZIPOutputStream gzip = new GZIPOutputStream(outstream);
+            public void writeTo(OutputStream outStream) throws IOException {
+                GZIPOutputStream gzip = new GZIPOutputStream(outStream);
                 gzip.write(EntityUtils.toByteArray(wrappedEntity));
                 gzip.close();
             }
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpConcurrentTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpConcurrentTest.java
index df92580..50ab269 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpConcurrentTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpConcurrentTest.java
@@ -16,26 +16,19 @@
  */
 package org.apache.camel.component.http;
 
-import java.io.IOException;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Map;
 import java.util.Set;
-import java.util.concurrent.Callable;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import java.util.concurrent.Future;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import org.apache.http.HttpException;
-import org.apache.http.HttpRequest;
-import org.apache.http.HttpResponse;
 import org.apache.http.HttpStatus;
 import org.apache.http.entity.StringEntity;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
-import org.apache.http.protocol.HttpContext;
-import org.apache.http.protocol.HttpRequestHandler;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -56,16 +49,14 @@ public class HttpConcurrentTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/", new HttpRequestHandler() {
-                    public void handle(HttpRequest request, HttpResponse response, HttpContext context) throws HttpException, IOException {
-                        try {
-                            Thread.sleep(1000);
-                        } catch (InterruptedException e) {
-                            // ignore
-                        }
-                        response.setStatusCode(HttpStatus.SC_OK);
-                        response.setEntity(new StringEntity("" + counter.incrementAndGet()));
+                registerHandler("/", (request, response, context) -> {
+                    try {
+                        Thread.sleep(1000);
+                    } catch (InterruptedException e) {
+                        // ignore
                     }
+                    response.setStatusCode(HttpStatus.SC_OK);
+                    response.setEntity(new StringEntity("" + counter.incrementAndGet()));
                 }).create();
         localServer.start();
 
@@ -98,13 +89,8 @@ public class HttpConcurrentTest extends BaseHttpTest {
         // so no need for a thread-safe Map implementation
         Map<Integer, Future<String>> responses = new HashMap<>();
         for (int i = 0; i < files; i++) {
-            final int index = i;
-            Future<String> out = executor.submit(new Callable<String>() {
-                public String call() throws Exception {
-                    return template.requestBody("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort(), null, String.class);
-                }
-            });
-            responses.put(index, out);
+            Future<String> out = executor.submit(() -> template.requestBody("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort(), null, String.class));
+            responses.put(i, out);
         }
 
         assertEquals(files, responses.size());
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpDefaultPortNumberTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpDefaultPortNumberTest.java
index 0579e6d..06539dd 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpDefaultPortNumberTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpDefaultPortNumberTest.java
@@ -29,6 +29,8 @@ import org.junit.Before;
 import org.junit.Ignore;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
 @Ignore("We cannot run this test as default port 80 is not allows on most boxes")
 public class HttpDefaultPortNumberTest extends BaseHttpTest {
 
@@ -43,7 +45,7 @@ public class HttpDefaultPortNumberTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/search", new BasicValidationHandler("GET", null, null, getExpectedContent())).create();
+                registerHandler("/search", new BasicValidationHandler(GET.name(), null, null, getExpectedContent())).create();
         localServer.start();
 
         super.setUp();
@@ -63,7 +65,7 @@ public class HttpDefaultPortNumberTest extends BaseHttpTest {
     public void testHttpConnectionWithTwoRoutesAndOneWithDefaultPort() throws Exception {
         context.addRoutes(new RouteBuilder() {
             @Override
-            public void configure() throws Exception {
+            public void configure() {
                 from("direct:start")
                         .to("http://" + localServer.getInetAddress().getHostName() + "/search");
                 from("direct:dummy")
@@ -82,7 +84,7 @@ public class HttpDefaultPortNumberTest extends BaseHttpTest {
     public void testHttpConnectionWithTwoRoutesAndAllPortsSpecified() throws Exception {
         context.addRoutes(new RouteBuilder() {
             @Override
-            public void configure() throws Exception {
+            public void configure() {
                 from("direct:start")
                         .to("http://" + localServer.getInetAddress().getHostName() + ":80/search");
                 from("direct:dummy")
@@ -101,7 +103,7 @@ public class HttpDefaultPortNumberTest extends BaseHttpTest {
     public void testHttpConnectionRefusedStoppedServer() throws Exception {
         context.addRoutes(new RouteBuilder() {
             @Override
-            public void configure() throws Exception {
+            public void configure() {
                 from("direct:start")
                         .to("http://" + localServer.getInetAddress().getHostName() + "/search");
                 from("direct:dummy")
@@ -121,7 +123,7 @@ public class HttpDefaultPortNumberTest extends BaseHttpTest {
     public void testHttpConnectionRefusedRunningServer() throws Exception {
         context.addRoutes(new RouteBuilder() {
             @Override
-            public void configure() throws Exception {
+            public void configure() {
                 from("direct:start")
                         .to("http://" + localServer.getInetAddress().getHostName() + "/search");
             }
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpDisableStreamCacheTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpDisableStreamCacheTest.java
index d710be7..4236d0a 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpDisableStreamCacheTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpDisableStreamCacheTest.java
@@ -19,7 +19,6 @@ package org.apache.camel.component.http;
 import java.io.InputStream;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.TypeConversionException;
 import org.apache.camel.component.http.handler.BasicValidationHandler;
 import org.apache.http.impl.bootstrap.HttpServer;
@@ -28,6 +27,8 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.http.common.HttpMethods.GET;
+
 public class HttpDisableStreamCacheTest extends BaseHttpTest {
 
     private HttpServer localServer;
@@ -41,7 +42,7 @@ public class HttpDisableStreamCacheTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/test/", new BasicValidationHandler("GET", null, null, getExpectedContent())).
+                registerHandler("/test/", new BasicValidationHandler(GET.name(), null, null, getExpectedContent())).
                 create();
         localServer.start();
 
@@ -60,9 +61,7 @@ public class HttpDisableStreamCacheTest extends BaseHttpTest {
 
     @Test
     public void httpDisableStreamCache() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/test/?disableStreamCache=true", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/test/?disableStreamCache=true", exchange1 -> {
         });
 
         InputStream is = assertIsInstanceOf(InputStream.class, exchange.getOut().getBody());
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpEndpointURLTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpEndpointURLTest.java
index 6fcffe9..74f8bb9 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpEndpointURLTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpEndpointURLTest.java
@@ -26,7 +26,7 @@ import org.junit.Test;
 public class HttpEndpointURLTest extends CamelTestSupport {
 
     @Test
-    public void testHttpEndpointURLWithIPv6() {
+    public void testHttpEndpointURLWithIPv6() throws Exception {
         HttpEndpoint endpoint = (HttpEndpoint)context.getEndpoint("http://[2a00:8a00:6000:40::1413]:30300/test?test=true");
         assertEquals("http://[2a00:8a00:6000:40::1413]:30300/test?test=true", endpoint.getHttpUri().toString());
     }
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpInvalidHttpClientConfigurationTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpInvalidHttpClientConfigurationTest.java
index 9c2f065..595c000 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpInvalidHttpClientConfigurationTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpInvalidHttpClientConfigurationTest.java
@@ -44,7 +44,7 @@ public class HttpInvalidHttpClientConfigurationTest extends CamelTestSupport {
     }
 
     @Test
-    public void testInvalidHostConfiguration() {
+    public void testInvalidHostConfiguration() throws Exception {
         // dummy
     }
 
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpMethodsTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpMethodsTest.java
index e7782d1..24fb3f1 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpMethodsTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpMethodsTest.java
@@ -20,7 +20,6 @@ import java.util.Map;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.Message;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.BasicValidationHandler;
 import org.apache.http.HttpStatus;
 import org.apache.http.impl.bootstrap.HttpServer;
@@ -29,10 +28,14 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.*;
+
 public class HttpMethodsTest extends BaseHttpTest {
 
     private HttpServer localServer;
 
+    private String baseUrl;
+
     @Before
     @Override
     public void setUp() throws Exception {
@@ -42,19 +45,21 @@ public class HttpMethodsTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/get", new BasicValidationHandler("GET", null, null, getExpectedContent())).
-                registerHandler("/patch", new BasicValidationHandler("PATCH", null, null, getExpectedContent())).
-                registerHandler("/patch1", new BasicValidationHandler("PATCH", null, "rocks camel?", getExpectedContent())).
-                registerHandler("/post", new BasicValidationHandler("POST", null, null, getExpectedContent())).
-                registerHandler("/post1", new BasicValidationHandler("POST", null, "rocks camel?", getExpectedContent())).
-                registerHandler("/put", new BasicValidationHandler("PUT", null, null, getExpectedContent())).
-                registerHandler("/trace", new BasicValidationHandler("TRACE", null, null, getExpectedContent())).
-                registerHandler("/options", new BasicValidationHandler("OPTIONS", null, null, getExpectedContent())).
-                registerHandler("/delete", new BasicValidationHandler("DELETE", null, null, getExpectedContent())).
-                registerHandler("/delete1", new BasicValidationHandler("DELETE", null, null, getExpectedContent())).
-                registerHandler("/head", new BasicValidationHandler("HEAD", null, null, getExpectedContent())).create();
+                registerHandler("/get", new BasicValidationHandler(GET.name(), null, null, getExpectedContent())).
+                registerHandler("/patch", new BasicValidationHandler(PATCH.name(), null, null, getExpectedContent())).
+                registerHandler("/patch1", new BasicValidationHandler(PATCH.name(), null, "rocks camel?", getExpectedContent())).
+                registerHandler("/post", new BasicValidationHandler(POST.name(), null, null, getExpectedContent())).
+                registerHandler("/post1", new BasicValidationHandler(POST.name(), null, "rocks camel?", getExpectedContent())).
+                registerHandler("/put", new BasicValidationHandler(PUT.name(), null, null, getExpectedContent())).
+                registerHandler("/trace", new BasicValidationHandler(TRACE.name(), null, null, getExpectedContent())).
+                registerHandler("/options", new BasicValidationHandler(OPTIONS.name(), null, null, getExpectedContent())).
+                registerHandler("/delete", new BasicValidationHandler(DELETE.name(), null, null, getExpectedContent())).
+                registerHandler("/delete1", new BasicValidationHandler(DELETE.name(), null, null, getExpectedContent())).
+                registerHandler("/head", new BasicValidationHandler(HEAD.name(), null, null, getExpectedContent())).create();
         localServer.start();
 
+        baseUrl = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort();
+
         super.setUp();
     }
 
@@ -71,9 +76,7 @@ public class HttpMethodsTest extends BaseHttpTest {
     @Test
     public void httpGet() throws Exception {
 
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/get", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        Exchange exchange = template.request(baseUrl + "/get", exchange1 -> {
         });
 
         assertExchange(exchange);
@@ -82,11 +85,7 @@ public class HttpMethodsTest extends BaseHttpTest {
     @Test
     public void httpGetWithUriParam() throws Exception {
 
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/get?httpMethod=GET", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_METHOD, "POST");
-            }
-        });
+        Exchange exchange = template.request(baseUrl + "/get?httpMethod=GET", exchange1 -> exchange1.getIn().setHeader(Exchange.HTTP_METHOD, "POST"));
 
         assertExchange(exchange);
     }
@@ -94,11 +93,7 @@ public class HttpMethodsTest extends BaseHttpTest {
     @Test
     public void httpPatch() throws Exception {
 
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/patch?throwExceptionOnFailure=false", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_METHOD, "PATCH");
-            }
-        });
+        Exchange exchange = template.request(baseUrl + "/patch?throwExceptionOnFailure=false", exchange1 -> exchange1.getIn().setHeader(Exchange.HTTP_METHOD, "PATCH"));
 
         assertNotNull(exchange);
         assertTrue(exchange.hasOut());
@@ -115,11 +110,7 @@ public class HttpMethodsTest extends BaseHttpTest {
     @Test
     public void httpPatchWithBody() throws Exception {
 
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/patch1?throwExceptionOnFailure=false", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setBody("rocks camel?");
-            }
-        });
+        Exchange exchange = template.request(baseUrl + "/patch1?throwExceptionOnFailure=false", exchange1 -> exchange1.getIn().setBody("rocks camel?"));
 
         assertNotNull(exchange);
         assertTrue(exchange.hasOut());
@@ -134,11 +125,7 @@ public class HttpMethodsTest extends BaseHttpTest {
     @Test
     public void httpPost() throws Exception {
 
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/post", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_METHOD, "POST");
-            }
-        });
+        Exchange exchange = template.request(baseUrl + "/post", exchange1 -> exchange1.getIn().setHeader(Exchange.HTTP_METHOD, "POST"));
 
         assertExchange(exchange);
     }
@@ -146,11 +133,7 @@ public class HttpMethodsTest extends BaseHttpTest {
     @Test
     public void httpPostWithBody() throws Exception {
 
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/post1", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setBody("rocks camel?");
-            }
-        });
+        Exchange exchange = template.request(baseUrl + "/post1", exchange1 -> exchange1.getIn().setBody("rocks camel?"));
 
         assertExchange(exchange);
     }
@@ -158,11 +141,7 @@ public class HttpMethodsTest extends BaseHttpTest {
     @Test
     public void httpPut() throws Exception {
 
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/put", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_METHOD, "PUT");
-            }
-        });
+        Exchange exchange = template.request(baseUrl + "/put", exchange1 -> exchange1.getIn().setHeader(Exchange.HTTP_METHOD, "PUT"));
 
         assertExchange(exchange);
     }
@@ -170,11 +149,7 @@ public class HttpMethodsTest extends BaseHttpTest {
     @Test
     public void httpTrace() throws Exception {
 
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/trace", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_METHOD, "TRACE");
-            }
-        });
+        Exchange exchange = template.request(baseUrl + "/trace", exchange1 -> exchange1.getIn().setHeader(Exchange.HTTP_METHOD, "TRACE"));
 
         assertExchange(exchange);
     }
@@ -182,11 +157,7 @@ public class HttpMethodsTest extends BaseHttpTest {
     @Test
     public void httpOptions() throws Exception {
 
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/options", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_METHOD, "OPTIONS");
-            }
-        });
+        Exchange exchange = template.request(baseUrl + "/options", exchange1 -> exchange1.getIn().setHeader(Exchange.HTTP_METHOD, "OPTIONS"));
 
         assertExchange(exchange);
     }
@@ -194,11 +165,7 @@ public class HttpMethodsTest extends BaseHttpTest {
     @Test
     public void httpDelete() throws Exception {
 
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/delete", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_METHOD, "DELETE");
-            }
-        });
+        Exchange exchange = template.request(baseUrl + "/delete", exchange1 -> exchange1.getIn().setHeader(Exchange.HTTP_METHOD, "DELETE"));
 
         assertExchange(exchange);
     }
@@ -206,11 +173,9 @@ public class HttpMethodsTest extends BaseHttpTest {
     @Test
     public void httpDeleteWithBody() throws Exception {
 
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/delete1?deleteWithBody=true", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_METHOD, "DELETE");
-                exchange.getIn().setBody("rocks camel?");
-            }
+        Exchange exchange = template.request(baseUrl + "/delete1?deleteWithBody=true", exchange1 -> {
+            exchange1.getIn().setHeader(Exchange.HTTP_METHOD, "DELETE");
+            exchange1.getIn().setBody("rocks camel?");
         });
 
         assertExchange(exchange);
@@ -221,11 +186,9 @@ public class HttpMethodsTest extends BaseHttpTest {
     @Test
     public void httpGetWithBody() throws Exception {
 
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/get?getWithBody=true", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_METHOD, "GET");
-                exchange.getIn().setBody("rocks camel?");
-            }
+        Exchange exchange = template.request(baseUrl + "/get?getWithBody=true", exchange1 -> {
+            exchange1.getIn().setHeader(Exchange.HTTP_METHOD, "GET");
+            exchange1.getIn().setBody("rocks camel?");
         });
 
         assertExchange(exchange);
@@ -236,11 +199,7 @@ public class HttpMethodsTest extends BaseHttpTest {
     @Test
     public void httpHead() throws Exception {
 
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/head", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_METHOD, "HEAD");
-            }
-        });
+        Exchange exchange = template.request(baseUrl + "/head", exchange1 -> exchange1.getIn().setHeader(Exchange.HTTP_METHOD, "HEAD"));
 
         assertNotNull(exchange);
 
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpNoCamelHeaderTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpNoCamelHeaderTest.java
index 0a71203..50cacac 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpNoCamelHeaderTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpNoCamelHeaderTest.java
@@ -16,19 +16,11 @@
  */
 package org.apache.camel.component.http;
 
-import java.io.IOException;
-
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.http.Header;
-import org.apache.http.HttpException;
-import org.apache.http.HttpRequest;
-import org.apache.http.HttpResponse;
 import org.apache.http.HttpStatus;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
-import org.apache.http.protocol.HttpContext;
-import org.apache.http.protocol.HttpRequestHandler;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -46,23 +38,20 @@ public class HttpNoCamelHeaderTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/hello", new HttpRequestHandler() {
-                    @Override
-                    public void handle(HttpRequest request, HttpResponse response, HttpContext context) throws HttpException, IOException {
-                        response.setStatusCode(HttpStatus.SC_OK);
-                        Object header = request.getFirstHeader(Exchange.FILE_NAME);
-                        assertNull("There should be no Camel header", header);
+                registerHandler("/hello", (request, response, context) -> {
+                    response.setStatusCode(HttpStatus.SC_OK);
+                    Object header = request.getFirstHeader(Exchange.FILE_NAME);
+                    assertNull("There should be no Camel header", header);
 
-                        for (Header h : request.getAllHeaders()) {
-                            if (h.getName().startsWith("Camel") || h.getName().startsWith("org.apache.camel")) {
-                                assertNull("There should be no Camel header", h);
-                            }
+                    for (Header h : request.getAllHeaders()) {
+                        if (h.getName().startsWith("Camel") || h.getName().startsWith("org.apache.camel")) {
+                            assertNull("There should be no Camel header", h);
                         }
-
-                        // set ar regular and Camel header
-                        response.setHeader("MyApp", "dude");
-                        response.setHeader(Exchange.TO_ENDPOINT, "foo");
                     }
+
+                    // set ar regular and Camel header
+                    response.setHeader("MyApp", "dude");
+                    response.setHeader(Exchange.TO_ENDPOINT, "foo");
                 }).create();
         localServer.start();
 
@@ -81,15 +70,10 @@ public class HttpNoCamelHeaderTest extends BaseHttpTest {
 
     @Test
     public void testNoCamelHeader() throws Exception {
-        Exchange out = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/hello", new Processor() {
-
-            @Override
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.CONTENT_TYPE, "text/plain");
-                exchange.getIn().setHeader(Exchange.FILE_NAME, "hello.txt");
-                exchange.getIn().setBody("This is content");
-            }
-
+        Exchange out = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/hello", exchange -> {
+            exchange.getIn().setHeader(Exchange.CONTENT_TYPE, "text/plain");
+            exchange.getIn().setHeader(Exchange.FILE_NAME, "hello.txt");
+            exchange.getIn().setBody("This is content");
         });
 
         assertNotNull(out);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpNoConnectionRedeliveryTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpNoConnectionRedeliveryTest.java
index 12efc3a..3e6df8c 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpNoConnectionRedeliveryTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpNoConnectionRedeliveryTest.java
@@ -28,6 +28,8 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.http.common.HttpMethods.GET;
+
 public class HttpNoConnectionRedeliveryTest extends BaseHttpTest {
 
     private HttpServer localServer;
@@ -41,7 +43,7 @@ public class HttpNoConnectionRedeliveryTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/search", new BasicValidationHandler("GET", null, null, getExpectedContent())).create();
+                registerHandler("/search", new BasicValidationHandler(GET.name(), null, null, getExpectedContent())).create();
         localServer.start();
 
         super.setUp();
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpNoConnectionTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpNoConnectionTest.java
index ee5721a..2e24cdc 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpNoConnectionTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpNoConnectionTest.java
@@ -20,7 +20,6 @@ import java.net.ConnectException;
 import java.util.concurrent.TimeUnit;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.BasicValidationHandler;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
@@ -28,10 +27,14 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.http.common.HttpMethods.GET;
+
 public class HttpNoConnectionTest extends BaseHttpTest {
 
     private HttpServer localServer;
 
+    private String endpointUrl;
+
     @Before
     @Override
     public void setUp() throws Exception {
@@ -41,9 +44,11 @@ public class HttpNoConnectionTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/search", new BasicValidationHandler("GET", null, null, getExpectedContent())).create();
+                registerHandler("/search", new BasicValidationHandler(GET.name(), null, null, getExpectedContent())).create();
         localServer.start();
 
+        endpointUrl = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort();
+
         super.setUp();
     }
 
@@ -59,9 +64,7 @@ public class HttpNoConnectionTest extends BaseHttpTest {
 
     @Test
     public void httpConnectionOk() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/search", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        Exchange exchange = template.request(endpointUrl + "/search", exchange1 -> {
         });
 
         assertExchange(exchange);
@@ -69,7 +72,7 @@ public class HttpNoConnectionTest extends BaseHttpTest {
 
     @Test
     public void httpConnectionNotOk() throws Exception {
-        String url = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/search";
+        String url = endpointUrl + "/search";
         // stop server so there are no connection
         localServer.stop();
         localServer.awaitTermination(1000, TimeUnit.MILLISECONDS);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpPathTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpPathTest.java
index d4e4e11..39017ec 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpPathTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpPathTest.java
@@ -17,7 +17,6 @@
 package org.apache.camel.component.http;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.BasicValidationHandler;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
@@ -25,10 +24,14 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
 public class HttpPathTest extends BaseHttpTest {
 
     private HttpServer localServer;
 
+    private String endpointUrl;
+
     @Before
     @Override
     public void setUp() throws Exception {
@@ -38,12 +41,14 @@ public class HttpPathTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/search", new BasicValidationHandler("GET", null, null, getExpectedContent())).
-                registerHandler("/test%20/path", new BasicValidationHandler("GET", null, null, getExpectedContent())).
-                registerHandler("/testWithQueryParams", new BasicValidationHandler("GET", "abc=123", null, getExpectedContent())).
+                registerHandler("/search", new BasicValidationHandler(GET.name(), null, null, getExpectedContent())).
+                registerHandler("/test%20/path", new BasicValidationHandler(GET.name(), null, null, getExpectedContent())).
+                registerHandler("/testWithQueryParams", new BasicValidationHandler(GET.name(), "abc=123", null, getExpectedContent())).
                 create();
         localServer.start();
 
+        endpointUrl = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort();
+
         super.setUp();
     }
 
@@ -59,9 +64,7 @@ public class HttpPathTest extends BaseHttpTest {
 
     @Test
     public void httpPath() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/search", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        Exchange exchange = template.request(endpointUrl + "/search", exchange1 -> {
         });
 
         assertExchange(exchange);
@@ -69,22 +72,16 @@ public class HttpPathTest extends BaseHttpTest {
 
     @Test
     public void httpPathHeader() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_PATH, "search");
-            }
-        });
+        Exchange exchange = template.request(endpointUrl + "/", exchange1 ->
+                exchange1.getIn().setHeader(Exchange.HTTP_PATH, "search"));
 
         assertExchange(exchange);
     }
 
     @Test
     public void httpPathHeaderWithStaticQueryParams() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "?abc=123", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_PATH, "testWithQueryParams");
-            }
-        });
+        Exchange exchange = template.request(endpointUrl + "?abc=123", exchange1 ->
+                exchange1.getIn().setHeader(Exchange.HTTP_PATH, "testWithQueryParams"));
 
         assertExchange(exchange);
     }
@@ -92,20 +89,15 @@ public class HttpPathTest extends BaseHttpTest {
 
     @Test
     public void httpPathHeaderWithBaseSlashesAndWithStaticQueryParams() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/" + "?abc=123", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_PATH, "/testWithQueryParams");
-            }
-        });
+        Exchange exchange = template.request(endpointUrl + "/" + "?abc=123", exchange1 ->
+                exchange1.getIn().setHeader(Exchange.HTTP_PATH, "/testWithQueryParams"));
 
         assertExchange(exchange);
     }
 
     @Test
     public void httpEscapedCharacters() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/test%20/path", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        Exchange exchange = template.request(endpointUrl + "/test%20/path", exchange1 -> {
         });
 
         assertExchange(exchange);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpPollingConsumerTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpPollingConsumerTest.java
index 48131e7..24e3a58 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpPollingConsumerTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpPollingConsumerTest.java
@@ -26,25 +26,30 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
 public class HttpPollingConsumerTest extends BaseHttpTest {
 
     private HttpServer localServer;
     private String user = "camel";
     private String password = "password";
+    private String endpointUrl;
 
     @Before
     @Override
     public void setUp() throws Exception {
+        super.setUp();
+
         localServer = ServerBootstrap.bootstrap().
                 setHttpProcessor(getBasicHttpProcessor()).
                 setConnectionReuseStrategy(getConnectionReuseStrategy()).
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/", new DelayValidationHandler("GET", null, null, getExpectedContent(), 1000)).create();
+                registerHandler("/", new DelayValidationHandler(GET.name(), null, null, getExpectedContent(), 1000)).create();
         localServer.start();
 
-        super.setUp();
+        endpointUrl = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort();
     }
 
     @After
@@ -59,7 +64,7 @@ public class HttpPollingConsumerTest extends BaseHttpTest {
 
     @Test
     public void basicAuthenticationShouldSuccess() throws Exception {
-        String body = consumer.receiveBody("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/?authUsername=" + user + "&authPassword="
+        String body = consumer.receiveBody(endpointUrl + "/?authUsername=" + user + "&authPassword="
             + password, String.class);
         assertEquals(getExpectedContent(), body);
 
@@ -68,27 +73,27 @@ public class HttpPollingConsumerTest extends BaseHttpTest {
     @Test
     public void basicAuthenticationPreemptiveShouldSuccess() throws Exception {
 
-        String body = consumer.receiveBody("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/?authUsername=" + user + "&authPassword="
+        String body = consumer.receiveBody(endpointUrl + "/?authUsername=" + user + "&authPassword="
                 + password + "&authenticationPreemptive=true", String.class);
         assertEquals(getExpectedContent(), body);
     }
 
     @Test
     public void testReceive() throws Exception {
-        String body = consumer.receiveBody("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/", String.class);
+        String body = consumer.receiveBody(endpointUrl + "/", String.class);
         assertEquals(getExpectedContent(), body);
     }
 
     @Test
     public void testReceiveTimeout() throws Exception {
-        String body = consumer.receiveBody("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/", 5000, String.class);
+        String body = consumer.receiveBody(endpointUrl + "/", 5000, String.class);
         assertEquals(getExpectedContent(), body);
     }
 
     @Test
     public void testReceiveTimeoutTriggered() throws Exception {
         try {
-            consumer.receiveBody("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/", 250, String.class);
+            consumer.receiveBody(endpointUrl + "/", 250, String.class);
             fail("Should have thrown an exception");
         } catch (RuntimeCamelException e) {
             assertIsInstanceOf(SocketTimeoutException.class, e.getCause());
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerConnectionCloseTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerConnectionCloseTest.java
index 6db6cea..fb55d48 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerConnectionCloseTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerConnectionCloseTest.java
@@ -29,6 +29,8 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
 /**
  * Unit test that show custom header filter useful to send Connection Close header
  */
@@ -48,7 +50,7 @@ public class HttpProducerConnectionCloseTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/myget", new BasicValidationHandler("GET", null, null, getExpectedContent())).
+                registerHandler("/myget", new BasicValidationHandler(GET.name(), null, null, getExpectedContent())).
                 create();
         localServer.start();
 
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerContentLengthTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerContentLengthTest.java
index 7d6dd88..1429150 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerContentLengthTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerContentLengthTest.java
@@ -17,20 +17,13 @@
 package org.apache.camel.component.http;
 
 import java.io.ByteArrayInputStream;
-import java.io.IOException;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.converter.stream.ByteArrayInputStreamCache;
 import org.apache.http.Header;
-import org.apache.http.HttpException;
-import org.apache.http.HttpRequest;
-import org.apache.http.HttpResponse;
 import org.apache.http.HttpStatus;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
-import org.apache.http.protocol.HttpContext;
-import org.apache.http.protocol.HttpRequestHandler;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -41,48 +34,47 @@ public class HttpProducerContentLengthTest extends BaseHttpTest {
 
     private final String bodyContent = "{ \n \"content\"=\"This is content\" \n }";
 
+    private String endpointUrl;
 
     @Before
     @Override
     public void setUp() throws Exception {
+        super.setUp();
+
         localServer = ServerBootstrap.bootstrap().
                 setHttpProcessor(getBasicHttpProcessor()).
                 setConnectionReuseStrategy(getConnectionReuseStrategy()).
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/content-streamed", new HttpRequestHandler() {
-                    @Override
-                    public void handle(HttpRequest request, HttpResponse response, HttpContext context) throws HttpException, IOException {
-                        Header contentLengthHeader = request.getFirstHeader(Exchange.CONTENT_LENGTH);
-                        String contentLength = contentLengthHeader != null ? contentLengthHeader.getValue() : "";
-                        Header transferEncodingHeader = request.getFirstHeader(Exchange.TRANSFER_ENCODING);
-                        String transferEncoding = transferEncodingHeader != null ? transferEncodingHeader.getValue() : "";
-
-                        //Request Body Chunked if no Content-Length set.
-                        assertEquals("", contentLength);
-                        assertEquals("chunked", transferEncoding);
-                        response.setStatusCode(HttpStatus.SC_OK);
-                    }
-                }).registerHandler("/content-not-streamed", new HttpRequestHandler() {
-                    @Override
-                    public void handle(HttpRequest request, HttpResponse response, HttpContext context) throws HttpException, IOException {
-                        Header contentLengthHeader = request.getFirstHeader(Exchange.CONTENT_LENGTH);
-                        String contentLength = contentLengthHeader != null ? contentLengthHeader.getValue() : "";
-                        Header transferEncodingHeader = request.getFirstHeader(Exchange.TRANSFER_ENCODING);
-                        String transferEncoding = transferEncodingHeader != null ? transferEncodingHeader.getValue() : "";
-
-                        //Content-Length should match byte array
-                        assertEquals("35", contentLength);
-                        assertEquals("", transferEncoding);
-                        response.setStatusCode(HttpStatus.SC_OK);
-                    }
+                registerHandler("/content-streamed", (request, response, context) -> {
+                    Header contentLengthHeader = request.getFirstHeader(Exchange.CONTENT_LENGTH);
+                    String contentLength = contentLengthHeader != null ? contentLengthHeader.getValue() : "";
+                    Header transferEncodingHeader = request.getFirstHeader(Exchange.TRANSFER_ENCODING);
+                    String transferEncoding = transferEncodingHeader != null ? transferEncodingHeader.getValue() : "";
+
+                    //Request Body Chunked if no Content-Length set.
+                    assertEquals("", contentLength);
+                    assertEquals("chunked", transferEncoding);
+                    response.setStatusCode(HttpStatus.SC_OK);
+                })
+                .registerHandler("/content-not-streamed", (request, response, context) -> {
+                    Header contentLengthHeader = request.getFirstHeader(Exchange.CONTENT_LENGTH);
+                    String contentLength = contentLengthHeader != null ? contentLengthHeader.getValue() : "";
+                    Header transferEncodingHeader = request.getFirstHeader(Exchange.TRANSFER_ENCODING);
+                    String transferEncoding = transferEncodingHeader != null ? transferEncodingHeader.getValue() : "";
+
+                    //Content-Length should match byte array
+                    assertEquals("35", contentLength);
+                    assertEquals("", transferEncoding);
+                    response.setStatusCode(HttpStatus.SC_OK);
                 })
                 .create();
 
         localServer.start();
 
-        super.setUp();
+        endpointUrl = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort();
+
     }
 
     @After
@@ -97,15 +89,10 @@ public class HttpProducerContentLengthTest extends BaseHttpTest {
 
     @Test
     public void testContentLengthStream() throws Exception {
-        Exchange out = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/content-streamed?bridgeEndpoint=true", new Processor() {
-
-            @Override
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.CONTENT_LENGTH, "1000");
-                exchange.getIn().setHeader(Exchange.CONTENT_TYPE, "application/json");
-                exchange.getIn().setBody(new ByteArrayInputStreamCache(new ByteArrayInputStream(bodyContent.getBytes())));
-            }
-
+        Exchange out = template.request(endpointUrl + "/content-streamed?bridgeEndpoint=true", exchange -> {
+            exchange.getIn().setHeader(Exchange.CONTENT_LENGTH, "1000");
+            exchange.getIn().setHeader(Exchange.CONTENT_TYPE, "application/json");
+            exchange.getIn().setBody(new ByteArrayInputStreamCache(new ByteArrayInputStream(bodyContent.getBytes())));
         });
 
         assertNotNull(out);
@@ -115,15 +102,10 @@ public class HttpProducerContentLengthTest extends BaseHttpTest {
 
     @Test
     public void testContentLengthNotStreamed() throws Exception {
-        Exchange out = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/content-not-streamed?bridgeEndpoint=true", new Processor() {
-
-            @Override
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.CONTENT_LENGTH, "1000");
-                exchange.getIn().setHeader(Exchange.CONTENT_TYPE, "application/json");
-                exchange.getIn().setBody(bodyContent.getBytes());
-            }
-
+        Exchange out = template.request(endpointUrl + "/content-not-streamed?bridgeEndpoint=true", exchange -> {
+            exchange.getIn().setHeader(Exchange.CONTENT_LENGTH, "1000");
+            exchange.getIn().setHeader(Exchange.CONTENT_TYPE, "application/json");
+            exchange.getIn().setBody(bodyContent.getBytes());
         });
 
         assertNotNull(out);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerContentTypeTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerContentTypeTest.java
index 99bc957..50c6f3b 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerContentTypeTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerContentTypeTest.java
@@ -17,7 +17,6 @@
 package org.apache.camel.component.http;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.http.HttpStatus;
 import org.apache.http.entity.StringEntity;
 import org.apache.http.impl.bootstrap.HttpServer;
@@ -32,9 +31,13 @@ public class HttpProducerContentTypeTest extends BaseHttpTest {
 
     private HttpServer localServer;
 
+    private String endpointUrl;
+
     @Before
     @Override
     public void setUp() throws Exception {
+        super.setUp();
+
         localServer = ServerBootstrap.bootstrap().
                 setHttpProcessor(getBasicHttpProcessor()).
                 setConnectionReuseStrategy(getConnectionReuseStrategy()).
@@ -51,7 +54,7 @@ public class HttpProducerContentTypeTest extends BaseHttpTest {
                 }).create();
         localServer.start();
 
-        super.setUp();
+        endpointUrl = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort();
     }
 
     @After
@@ -65,15 +68,10 @@ public class HttpProducerContentTypeTest extends BaseHttpTest {
     }
 
     @Test
-    public void testContentTypeWithBoundary() {
-        Exchange out = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/content", new Processor() {
-
-            @Override
-            public void process(Exchange exchange) {
-                exchange.getIn().setHeader(Exchange.CONTENT_TYPE, CONTENT_TYPE);
-                exchange.getIn().setBody("This is content");
-            }
-
+    public void testContentTypeWithBoundary() throws Exception {
+        Exchange out = template.request(endpointUrl + "/content", exchange -> {
+            exchange.getIn().setHeader(Exchange.CONTENT_TYPE, CONTENT_TYPE);
+            exchange.getIn().setBody("This is content");
         });
 
         assertNotNull(out);
@@ -83,15 +81,10 @@ public class HttpProducerContentTypeTest extends BaseHttpTest {
     }
 
     @Test
-    public void testContentTypeWithBoundaryWithIgnoreResponseBody() {
-        Exchange out = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/content?ignoreResponseBody=true", new Processor() {
-
-            @Override
-            public void process(Exchange exchange) {
-                exchange.getIn().setHeader(Exchange.CONTENT_TYPE, CONTENT_TYPE);
-                exchange.getIn().setBody("This is content");
-            }
-
+    public void testContentTypeWithBoundaryWithIgnoreResponseBody() throws Exception {
+        Exchange out = template.request(endpointUrl + "/content?ignoreResponseBody=true", exchange -> {
+            exchange.getIn().setHeader(Exchange.CONTENT_TYPE, CONTENT_TYPE);
+            exchange.getIn().setBody("This is content");
         });
 
         assertNotNull(out);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerContentTypeWithSemiColomnTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerContentTypeWithSemiColonTest.java
similarity index 58%
rename from components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerContentTypeWithSemiColomnTest.java
rename to components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerContentTypeWithSemiColonTest.java
index 27ce43a..3b1d775 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerContentTypeWithSemiColomnTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerContentTypeWithSemiColonTest.java
@@ -16,52 +16,45 @@
  */
 package org.apache.camel.component.http;
 
-import java.io.IOException;
-
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
-import org.apache.http.HttpException;
-import org.apache.http.HttpRequest;
-import org.apache.http.HttpResponse;
 import org.apache.http.HttpStatus;
 import org.apache.http.entity.StringEntity;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
-import org.apache.http.protocol.HttpContext;
-import org.apache.http.protocol.HttpRequestHandler;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
-public class HttpProducerContentTypeWithSemiColomnTest extends BaseHttpTest {
+public class HttpProducerContentTypeWithSemiColonTest extends BaseHttpTest {
 
     private static final String CONTENT_TYPE = "multipart/form-data;boundary=---------------------------j2radvtrk";
 
     private HttpServer localServer;
 
+    private String endpointUrl;
+
     @Before
     @Override
     public void setUp() throws Exception {
+        super.setUp();
+
         localServer = ServerBootstrap.bootstrap().
                 setHttpProcessor(getBasicHttpProcessor()).
                 setConnectionReuseStrategy(getConnectionReuseStrategy()).
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/content", new HttpRequestHandler() {
-                    @Override
-                    public void handle(HttpRequest request, HttpResponse response, HttpContext context) throws HttpException, IOException {
-                        String contentType = request.getFirstHeader(Exchange.CONTENT_TYPE).getValue();
+                registerHandler("/content", (request, response, context) -> {
+                    String contentType = request.getFirstHeader(Exchange.CONTENT_TYPE).getValue();
 
-                        assertEquals(CONTENT_TYPE.replace(";", "; "), contentType);
+                    assertEquals(CONTENT_TYPE.replace(";", "; "), contentType);
 
-                        response.setEntity(new StringEntity(contentType, "ASCII"));
-                        response.setStatusCode(HttpStatus.SC_OK);
-                    }
+                    response.setEntity(new StringEntity(contentType, "ASCII"));
+                    response.setStatusCode(HttpStatus.SC_OK);
                 }).create();
         localServer.start();
 
-        super.setUp();
+        endpointUrl = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort();
     }
 
     @After
@@ -76,14 +69,9 @@ public class HttpProducerContentTypeWithSemiColomnTest extends BaseHttpTest {
 
     @Test
     public void testContentTypeWithBoundary() throws Exception {
-        Exchange out = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/content", new Processor() {
-
-            @Override
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.CONTENT_TYPE, CONTENT_TYPE);
-                exchange.getIn().setBody("This is content");
-            }
-
+        Exchange out = template.request(endpointUrl + "/content", exchange -> {
+            exchange.getIn().setHeader(Exchange.CONTENT_TYPE, CONTENT_TYPE);
+            exchange.getIn().setBody("This is content");
         });
 
         assertNotNull(out);
@@ -94,14 +82,9 @@ public class HttpProducerContentTypeWithSemiColomnTest extends BaseHttpTest {
 
     @Test
     public void testContentTypeWithBoundaryWithIgnoreResponseBody() throws Exception {
-        Exchange out = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/content?ignoreResponseBody=true", new Processor() {
-
-            @Override
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.CONTENT_TYPE, CONTENT_TYPE);
-                exchange.getIn().setBody("This is content");
-            }
-
+        Exchange out = template.request(endpointUrl + "/content?ignoreResponseBody=true", exchange -> {
+            exchange.getIn().setHeader(Exchange.CONTENT_TYPE, CONTENT_TYPE);
+            exchange.getIn().setBody("This is content");
         });
 
         assertNotNull(out);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerExplicitConnectionCloseTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerExplicitConnectionCloseTest.java
index e536fa5..35cc3c0 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerExplicitConnectionCloseTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerExplicitConnectionCloseTest.java
@@ -27,6 +27,9 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
+
 /**
  * Unit test that show custom header filter useful to send Connection Close header
  */
@@ -46,7 +49,7 @@ public class HttpProducerExplicitConnectionCloseTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/myget", new BasicValidationHandler("GET", null, null, getExpectedContent())).
+                registerHandler("/myget", new BasicValidationHandler(GET.name(), null, null, getExpectedContent())).
                 create();
         localServer.start();
 
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerSelectMethodTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerSelectMethodTest.java
index 700de1b..badb454 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerSelectMethodTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerSelectMethodTest.java
@@ -34,22 +34,29 @@ public class HttpProducerSelectMethodTest extends BaseHttpTest {
 
     private HttpServer localServer;
 
+    private String baseUrl;
+
+    private Exchange exchange;
+
     @Before
     @Override
     public void setUp() throws Exception {
+        super.setUp();
+
         localServer = ServerBootstrap.bootstrap().
                 setHttpProcessor(getBasicHttpProcessor()).
                 setConnectionReuseStrategy(getConnectionReuseStrategy()).
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/myget", new BasicValidationHandler("GET", null, null, getExpectedContent())).
-                registerHandler("/mypost", new BasicValidationHandler("POST", null, null, getExpectedContent())).
-                registerHandler("/myget2", new BasicValidationHandler("GET", "q=Camel", null, getExpectedContent())).
+                registerHandler("/myget", new BasicValidationHandler(GET.name(), null, null, getExpectedContent())).
+                registerHandler("/mypost", new BasicValidationHandler(POST.name(), null, null, getExpectedContent())).
+                registerHandler("/myget2", new BasicValidationHandler(GET.name(), "q=Camel", null, getExpectedContent())).
                 create();
         localServer.start();
 
-        super.setUp();
+        baseUrl = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort();
+
     }
 
     @After
@@ -66,9 +73,9 @@ public class HttpProducerSelectMethodTest extends BaseHttpTest {
     public void noDataDefaultIsGet() throws Exception {
         HttpComponent component = context.getComponent("http", HttpComponent.class);
 
-        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/myget");
+        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint(baseUrl + "/myget");
         HttpProducer producer = new HttpProducer(endpoint);
-        Exchange exchange = producer.createExchange();
+        exchange = producer.createExchange();
         exchange.getIn().setBody(null);
         producer.start();
         producer.process(exchange);
@@ -81,10 +88,10 @@ public class HttpProducerSelectMethodTest extends BaseHttpTest {
     public void dataDefaultIsPost() throws Exception {
         HttpComponent component = context.getComponent("http", HttpComponent.class);
 
-        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/mypost");
+        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint(baseUrl + "/mypost");
         HttpProducer producer = new HttpProducer(endpoint);
 
-        Exchange exchange = producer.createExchange();
+        exchange = producer.createExchange();
         exchange.getIn().setBody("This is some data to post");
         producer.start();
         producer.process(exchange);
@@ -97,10 +104,10 @@ public class HttpProducerSelectMethodTest extends BaseHttpTest {
     public void withMethodPostInHeader() throws Exception {
         HttpComponent component = context.getComponent("http", HttpComponent.class);
 
-        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/mypost");
+        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint(baseUrl + "/mypost");
         HttpProducer producer = new HttpProducer(endpoint);
 
-        Exchange exchange = producer.createExchange();
+        exchange = producer.createExchange();
         exchange.getIn().setBody("");
         exchange.getIn().setHeader(Exchange.HTTP_METHOD, POST);
         producer.start();
@@ -112,10 +119,10 @@ public class HttpProducerSelectMethodTest extends BaseHttpTest {
     public void withMethodGetInHeader() throws Exception {
         HttpComponent component = context.getComponent("http", HttpComponent.class);
 
-        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/myget");
+        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint(baseUrl + "/myget");
         HttpProducer producer = new HttpProducer(endpoint);
 
-        Exchange exchange = producer.createExchange();
+        exchange = producer.createExchange();
         exchange.getIn().setBody("");
         exchange.getIn().setHeader(Exchange.HTTP_METHOD, GET);
         producer.start();
@@ -127,10 +134,10 @@ public class HttpProducerSelectMethodTest extends BaseHttpTest {
     public void withMethodCommonHttpGetInHeader() throws Exception {
         HttpComponent component = context.getComponent("http", HttpComponent.class);
 
-        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/myget");
+        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint(baseUrl + "/myget");
         HttpProducer producer = new HttpProducer(endpoint);
 
-        Exchange exchange = producer.createExchange();
+        exchange = producer.createExchange();
         exchange.getIn().setBody("");
         exchange.getIn().setHeader(Exchange.HTTP_METHOD, org.apache.camel.http.common.HttpMethods.GET);
         producer.start();
@@ -142,10 +149,10 @@ public class HttpProducerSelectMethodTest extends BaseHttpTest {
     public void withEndpointQuery() throws Exception {
         HttpComponent component = context.getComponent("http", HttpComponent.class);
 
-        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/myget2?q=Camel");
+        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint(baseUrl + "/myget2?q=Camel");
         HttpProducer producer = new HttpProducer(endpoint);
 
-        Exchange exchange = producer.createExchange();
+        exchange = producer.createExchange();
         exchange.getIn().setBody("");
         producer.start();
         producer.process(exchange);
@@ -156,10 +163,10 @@ public class HttpProducerSelectMethodTest extends BaseHttpTest {
     public void withQueryInHeader() throws Exception {
         HttpComponent component = context.getComponent("http", HttpComponent.class);
 
-        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/myget2");
+        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint(baseUrl + "/myget2");
         HttpProducer producer = new HttpProducer(endpoint);
 
-        Exchange exchange = producer.createExchange();
+        exchange = producer.createExchange();
         exchange.getIn().setBody("");
         exchange.getIn().setHeader(Exchange.HTTP_QUERY, "q=Camel");
         producer.start();
@@ -171,12 +178,12 @@ public class HttpProducerSelectMethodTest extends BaseHttpTest {
     public void withHttpURIInHeader() throws Exception {
         HttpComponent component = context.getComponent("http", HttpComponent.class);
 
-        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/myget2");
+        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint(baseUrl + "/myget2");
         HttpProducer producer = new HttpProducer(endpoint);
 
-        Exchange exchange = producer.createExchange();
+        exchange = producer.createExchange();
         exchange.getIn().setBody("");
-        exchange.getIn().setHeader(Exchange.HTTP_URI, "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/myget2?q=Camel");
+        exchange.getIn().setHeader(Exchange.HTTP_URI, baseUrl + "/myget2?q=Camel");
         producer.start();
         producer.process(exchange);
         producer.stop();
@@ -186,10 +193,10 @@ public class HttpProducerSelectMethodTest extends BaseHttpTest {
     public void withQueryInHeaderOverrideEndpoint() throws Exception {
         HttpComponent component = context.getComponent("http", HttpComponent.class);
 
-        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/myget2?q=Donkey");
+        HttpEndpoint endpoint = (HttpEndpoint) component.createEndpoint(baseUrl + "/myget2?q=Donkey");
         HttpProducer producer = new HttpProducer(endpoint);
 
-        Exchange exchange = producer.createExchange();
+        exchange = producer.createExchange();
         exchange.getIn().setBody("");
         exchange.getIn().setHeader(Exchange.HTTP_QUERY, "q=Camel");
         producer.start();
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerTwoHeadersWithSameKeyTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerTwoHeadersWithSameKeyTest.java
index 59ea377..99e8ee2 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerTwoHeadersWithSameKeyTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerTwoHeadersWithSameKeyTest.java
@@ -16,22 +16,15 @@
  */
 package org.apache.camel.component.http;
 
-import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.http.Header;
-import org.apache.http.HttpException;
-import org.apache.http.HttpRequest;
-import org.apache.http.HttpResponse;
 import org.apache.http.HttpStatus;
 import org.apache.http.entity.StringEntity;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
-import org.apache.http.protocol.HttpContext;
-import org.apache.http.protocol.HttpRequestHandler;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -52,35 +45,29 @@ public class HttpProducerTwoHeadersWithSameKeyTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/myapp", new HttpRequestHandler() {
-                    @Override
-                    public void handle(HttpRequest request, HttpResponse response, HttpContext context) throws HttpException, IOException {
-                        Header[] from = request.getHeaders("from");
-                        assertEquals("me", from[0].getValue());
-                        Header[] to = request.getHeaders("to");
-                        assertEquals("[foo, bar]", to[0].getValue());
+                registerHandler("/myapp", (request, response, context) -> {
+                    Header[] from = request.getHeaders("from");
+                    assertEquals("me", from[0].getValue());
+                    Header[] to = request.getHeaders("to");
+                    assertEquals("[foo, bar]", to[0].getValue());
 
-                        response.setHeader("bar", "yes");
-                        response.addHeader("foo", "123");
-                        response.addHeader("foo", "456");
-                        response.setEntity(new StringEntity("OK", "ASCII"));
-                        response.setStatusCode(HttpStatus.SC_OK);
-                    }
+                    response.setHeader("bar", "yes");
+                    response.addHeader("foo", "123");
+                    response.addHeader("foo", "456");
+                    response.setEntity(new StringEntity("OK", "ASCII"));
+                    response.setStatusCode(HttpStatus.SC_OK);
                 }).
-                registerHandler("/myapp", new HttpRequestHandler() {
-                    @Override
-                    public void handle(HttpRequest request, HttpResponse response, HttpContext context) throws HttpException, IOException {
-                        Header[] from = request.getHeaders("from");
-                        assertEquals("me", from[0].getValue());
-                        Header[] to = request.getHeaders("to");
-                        assertEquals("[foo, bar]", to[0].getValue());
+                registerHandler("/myapp", (request, response, context) -> {
+                    Header[] from = request.getHeaders("from");
+                    assertEquals("me", from[0].getValue());
+                    Header[] to = request.getHeaders("to");
+                    assertEquals("[foo, bar]", to[0].getValue());
 
-                        response.setHeader("bar", "yes");
-                        response.addHeader("foo", "123");
-                        response.addHeader("foo", "456");
-                        response.setEntity(new StringEntity("OK", "ASCII"));
-                        response.setStatusCode(HttpStatus.SC_OK);
-                    }
+                    response.setHeader("bar", "yes");
+                    response.addHeader("foo", "123");
+                    response.addHeader("foo", "456");
+                    response.setEntity(new StringEntity("OK", "ASCII"));
+                    response.setStatusCode(HttpStatus.SC_OK);
                 }).create();
         localServer.start();
 
@@ -99,15 +86,15 @@ public class HttpProducerTwoHeadersWithSameKeyTest extends BaseHttpTest {
 
     @Test
     public void testTwoHeadersWithSameKeyHeader() throws Exception {
-        Exchange out = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/myapp", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setBody(null);
-                exchange.getIn().setHeader("from", "me");
-                List<String> list = new ArrayList<>();
-                list.add("foo");
-                list.add("bar");
-                exchange.getIn().setHeader("to", list);
-            }
+        String endpointUri = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/myapp";
+
+        Exchange out = template.request(endpointUri, exchange -> {
+            exchange.getIn().setBody(null);
+            exchange.getIn().setHeader("from", "me");
+            List<String> list = new ArrayList<>();
+            list.add("foo");
+            list.add("bar");
+            exchange.getIn().setHeader("to", list);
         });
 
         assertNotNull(out);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerTwoParametersWithSameKeyTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerTwoParametersWithSameKeyTest.java
index 8c1d94a..f8ee278 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerTwoParametersWithSameKeyTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerTwoParametersWithSameKeyTest.java
@@ -16,19 +16,13 @@
  */
 package org.apache.camel.component.http;
 
-import java.io.IOException;
 import java.util.List;
 
 import org.apache.camel.Exchange;
-import org.apache.http.HttpException;
-import org.apache.http.HttpRequest;
-import org.apache.http.HttpResponse;
 import org.apache.http.HttpStatus;
 import org.apache.http.entity.StringEntity;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
-import org.apache.http.protocol.HttpContext;
-import org.apache.http.protocol.HttpRequestHandler;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -49,18 +43,15 @@ public class HttpProducerTwoParametersWithSameKeyTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/myapp", new HttpRequestHandler() {
-                    @Override
-                    public void handle(HttpRequest request, HttpResponse response, HttpContext context) throws HttpException, IOException {
-                        String uri = request.getRequestLine().getUri();
-                        assertEquals("/myapp?from=me&to=foo&to=bar", uri);
+                registerHandler("/myapp", (request, response, context) -> {
+                    String uri = request.getRequestLine().getUri();
+                    assertEquals("/myapp?from=me&to=foo&to=bar", uri);
 
-                        response.setHeader("bar", "yes");
-                        response.addHeader("foo", "123");
-                        response.addHeader("foo", "456");
-                        response.setEntity(new StringEntity("OK", "ASCII"));
-                        response.setStatusCode(HttpStatus.SC_OK);
-                    }
+                    response.setHeader("bar", "yes");
+                    response.addHeader("foo", "123");
+                    response.addHeader("foo", "456");
+                    response.setEntity(new StringEntity("OK", "ASCII"));
+                    response.setStatusCode(HttpStatus.SC_OK);
                 }).create();
         localServer.start();
 
@@ -79,7 +70,9 @@ public class HttpProducerTwoParametersWithSameKeyTest extends BaseHttpTest {
 
     @Test
     public void testTwoParametersWithSameKey() throws Exception {
-        Exchange out = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/myapp?from=me&to=foo&to=bar", null);
+        String endpointUri = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/myapp?from=me&to=foo&to=bar";
+
+        Exchange out = template.request(endpointUri, null);
 
         assertNotNull(out);
         assertFalse("Should not fail", out.isFailed());
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerWithSystemPropertiesTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerWithSystemPropertiesTest.java
index baddf89..89f1312 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerWithSystemPropertiesTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerWithSystemPropertiesTest.java
@@ -20,7 +20,6 @@ import java.util.HashMap;
 import java.util.Map;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.HeaderValidationHandler;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
@@ -81,9 +80,8 @@ public class HttpProducerWithSystemPropertiesTest extends BaseHttpTest {
     @Test
     public void httpGetWithProxyFromSystemProperties() throws Exception {
 
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "?useSystemProperties=true", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        String endpointUri = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "?useSystemProperties=true";
+        Exchange exchange = template.request(endpointUri, exchange1 -> {
         });
 
         assertExchange(exchange);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProxyServerTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProxyServerTest.java
index 9bbf6f1..fc009d0 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProxyServerTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProxyServerTest.java
@@ -23,7 +23,6 @@ import java.util.List;
 import java.util.Map;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.HeaderValidationHandler;
 import org.apache.camel.util.URISupport;
 import org.apache.commons.codec.BinaryDecoder;
@@ -48,6 +47,8 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
 public class HttpProxyServerTest extends BaseHttpTest {
 
     private HttpServer proxy;
@@ -63,7 +64,7 @@ public class HttpProxyServerTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("*", new HeaderValidationHandler("GET", null, null, getExpectedContent(), expectedHeaders)).create();
+                registerHandler("*", new HeaderValidationHandler(GET.name(), null, null, getExpectedContent(), expectedHeaders)).create();
         proxy.start();
 
         super.setUp();
@@ -86,8 +87,7 @@ public class HttpProxyServerTest extends BaseHttpTest {
         List<HttpResponseInterceptor> responseInterceptors = new ArrayList<>();
         responseInterceptors.add(new ResponseContent());
         responseInterceptors.add(new ResponseProxyBasicUnauthorized());
-        ImmutableHttpProcessor httpproc = new ImmutableHttpProcessor(requestInterceptors, responseInterceptors);
-        return httpproc;
+        return new ImmutableHttpProcessor(requestInterceptors, responseInterceptors);
     }
 
     @Test
@@ -106,9 +106,7 @@ public class HttpProxyServerTest extends BaseHttpTest {
     @Test
     public void httpGetWithProxyAndWithoutUser() throws Exception {
 
-        Exchange exchange = template.request("http://" + getProxyHost() + ":" + getProxyPort() + "?proxyAuthHost=" + getProxyHost() + "&proxyAuthPort=" + getProxyPort(), new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        Exchange exchange = template.request("http://" + getProxyHost() + ":" + getProxyPort() + "?proxyAuthHost=" + getProxyHost() + "&proxyAuthPort=" + getProxyPort(), exchange1 -> {
         });
 
         assertExchange(exchange);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpQueryTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpQueryTest.java
index 932421b..a118feb 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpQueryTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpQueryTest.java
@@ -17,7 +17,6 @@
 package org.apache.camel.component.http;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.BasicValidationHandler;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
@@ -25,26 +24,32 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
 public class HttpQueryTest extends BaseHttpTest {
 
     private HttpServer localServer;
 
+    private String baseUrl;
+
     @Before
     @Override
     public void setUp() throws Exception {
+        super.setUp();
+
         localServer = ServerBootstrap.bootstrap().
                 setHttpProcessor(getBasicHttpProcessor()).
                 setConnectionReuseStrategy(getConnectionReuseStrategy()).
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/", new BasicValidationHandler("GET", "hl=en&q=camel", null, getExpectedContent())).
-                registerHandler("/test/", new BasicValidationHandler("GET", "my=@+camel", null, getExpectedContent())).
-                registerHandler("/user/pass", new BasicValidationHandler("GET", "password=baa&username=foo", null, getExpectedContent())).
+                registerHandler("/", new BasicValidationHandler(GET.name(), "hl=en&q=camel", null, getExpectedContent())).
+                registerHandler("/test/", new BasicValidationHandler(GET.name(), "my=@+camel", null, getExpectedContent())).
+                registerHandler("/user/pass", new BasicValidationHandler(GET.name(), "password=baa&username=foo", null, getExpectedContent())).
                 create();
         localServer.start();
 
-        super.setUp();
+        baseUrl = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort();
     }
 
     @After
@@ -59,9 +64,7 @@ public class HttpQueryTest extends BaseHttpTest {
 
     @Test
     public void httpQuery() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/?hl=en&q=camel", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        Exchange exchange = template.request(baseUrl + "/?hl=en&q=camel", exchange1 -> {
         });
 
         assertExchange(exchange);
@@ -69,20 +72,15 @@ public class HttpQueryTest extends BaseHttpTest {
 
     @Test
     public void httpQueryHeader() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_QUERY, "hl=en&q=camel");
-            }
-        });
+        Exchange exchange = template.request(baseUrl + "/", exchange1 ->
+                exchange1.getIn().setHeader(Exchange.HTTP_QUERY, "hl=en&q=camel"));
 
         assertExchange(exchange);
     }
 
     @Test
     public void httpQueryWithEscapedCharacter() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/test/?my=%40%20camel", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        Exchange exchange = template.request(baseUrl + "/test/?my=%40%20camel", exchange1 -> {
         });
 
         assertExchange(exchange);
@@ -90,9 +88,7 @@ public class HttpQueryTest extends BaseHttpTest {
 
     @Test
     public void httpQueryWithUsernamePassword() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/user/pass?password=baa&username=foo", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        Exchange exchange = template.request(baseUrl + "/user/pass?password=baa&username=foo", exchange1 -> {
         });
 
         assertExchange(exchange);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpRedirectTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpRedirectTest.java
index af7bae0..8fc82e7 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpRedirectTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpRedirectTest.java
@@ -19,7 +19,6 @@ package org.apache.camel.component.http;
 import java.io.IOException;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.BasicValidationHandler;
 import org.apache.camel.http.common.HttpOperationFailedException;
 import org.apache.http.HttpException;
@@ -34,6 +33,8 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
 /**
  *
  */
@@ -50,7 +51,7 @@ public class HttpRedirectTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/someplaceelse", new BasicValidationHandler("GET", null, null, "Bye World")).
+                registerHandler("/someplaceelse", new BasicValidationHandler(GET.name(), null, null, "Bye World")).
                 registerHandler("/test", new RedirectHandler(HttpStatus.SC_MOVED_PERMANENTLY)).
                 create();
         localServer.start();
@@ -74,10 +75,8 @@ public class HttpRedirectTest extends BaseHttpTest {
         String uri = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort()
                 + "/test?httpClient.redirectsEnabled=false&httpClient.socketTimeout=60000&httpClient.connectTimeout=60000"
                 + "&httpClient.staleConnectionCheckEnabled=false";
-        Exchange out = template.request(uri, new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                // no data
-            }
+        Exchange out = template.request(uri, exchange -> {
+            // no data
         });
 
         assertNotNull(out);
@@ -93,10 +92,8 @@ public class HttpRedirectTest extends BaseHttpTest {
         String uri = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort()
                 + "/test?httpClient.socketTimeout=60000&httpClient.connectTimeout=60000"
                 + "&httpClient.staleConnectionCheckEnabled=false";
-        Exchange out = template.request(uri, new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                // no data
-            }
+        Exchange out = template.request(uri, exchange -> {
+            // no data
         });
 
         assertNotNull(out);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpSNIHostNameTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpSNIHostNameTest.java
index 3a2182c..ced8041 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpSNIHostNameTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpSNIHostNameTest.java
@@ -57,8 +57,6 @@ public class HttpSNIHostNameTest extends CamelSpringTestSupport {
 
     @Override
     protected AbstractApplicationContext createApplicationContext() {
-        ClassPathXmlApplicationContext ctx =
-                new ClassPathXmlApplicationContext(new String[]{"org/apache/camel/component/http/CamelHttpContext.xml"});
-        return ctx;
+        return new ClassPathXmlApplicationContext(new String[]{"org/apache/camel/component/http/CamelHttpContext.xml"});
     }
 }
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpSOTimeoutTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpSOTimeoutTest.java
index ba7fd2a..e4c383f 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpSOTimeoutTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpSOTimeoutTest.java
@@ -17,7 +17,6 @@
 package org.apache.camel.component.http;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.DelayValidationHandler;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
@@ -25,6 +24,8 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
 public class HttpSOTimeoutTest extends BaseHttpTest {
 
     private HttpServer localServer;
@@ -38,7 +39,7 @@ public class HttpSOTimeoutTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/", new DelayValidationHandler("GET", null, null, getExpectedContent(), 2000)).create();
+                registerHandler("/", new DelayValidationHandler(GET.name(), null, null, getExpectedContent(), 2000)).create();
         localServer.start();
 
         super.setUp();
@@ -56,9 +57,7 @@ public class HttpSOTimeoutTest extends BaseHttpTest {
 
     @Test
     public void httpGet() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "?httpClient.SocketTimeout=5000", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "?httpClient.SocketTimeout=5000", exchange1 -> {
         });
 
         assertExchange(exchange);
@@ -66,9 +65,7 @@ public class HttpSOTimeoutTest extends BaseHttpTest {
 
     @Test
     public void httpGetShouldThrowASocketTimeoutException() throws Exception {
-        Exchange reply = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "?httpClient.SocketTimeout=1000", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        Exchange reply = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "?httpClient.SocketTimeout=1000", exchange -> {
         });
         Exception e = reply.getException();
         assertNotNull("Should have thrown an exception", e);
@@ -76,9 +73,7 @@ public class HttpSOTimeoutTest extends BaseHttpTest {
 
     @Test
     public void httpGetUriOption() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "?socketTimeout=5000", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "?socketTimeout=5000", exchange1 -> {
         });
 
         assertExchange(exchange);
@@ -86,9 +81,7 @@ public class HttpSOTimeoutTest extends BaseHttpTest {
 
     @Test
     public void httpGetUriOptionShouldThrowASocketTimeoutException() throws Exception {
-        Exchange reply = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "?socketTimeout=1000", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        Exchange reply = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "?socketTimeout=1000", exchange -> {
         });
         Exception e = reply.getException();
         assertNotNull("Should have thrown an exception", e);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpSendDynamicAwareTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpSendDynamicAwareTest.java
index 61077a3..aec3fd1 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpSendDynamicAwareTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpSendDynamicAwareTest.java
@@ -25,6 +25,8 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
 public class HttpSendDynamicAwareTest extends BaseHttpTest {
 
     private HttpServer localServer;
@@ -38,8 +40,8 @@ public class HttpSendDynamicAwareTest extends BaseHttpTest {
             setResponseFactory(getHttpResponseFactory()).
             setExpectationVerifier(getHttpExpectationVerifier()).
             setSslContext(getSSLContext()).
-            registerHandler("/moes", new DrinkValidationHandler("GET", null, null, "drink")).
-            registerHandler("/joes", new DrinkValidationHandler("GET", null, null, "drink")).
+            registerHandler("/moes", new DrinkValidationHandler(GET.name(), null, null, "drink")).
+            registerHandler("/joes", new DrinkValidationHandler(GET.name(), null, null, "drink")).
             create();
         localServer.start();
 
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpThrowExceptionOnFailureTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpThrowExceptionOnFailureTest.java
index cb829b8..ddcd92a 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpThrowExceptionOnFailureTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpThrowExceptionOnFailureTest.java
@@ -20,7 +20,6 @@ import java.util.Map;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.Message;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.BasicValidationHandler;
 import org.apache.camel.http.common.HttpOperationFailedException;
 import org.apache.http.HttpStatus;
@@ -30,10 +29,14 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
 public class HttpThrowExceptionOnFailureTest extends BaseHttpTest {
 
     private HttpServer localServer;
 
+    private String baseUrl;
+
     @Before
     @Override
     public void setUp() throws Exception {
@@ -43,9 +46,11 @@ public class HttpThrowExceptionOnFailureTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/", new BasicValidationHandler("GET", null, null, getExpectedContent())).create();
+                registerHandler("/", new BasicValidationHandler(GET.name(), null, null, getExpectedContent())).create();
         localServer.start();
 
+        baseUrl = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort();
+
         super.setUp();
     }
 
@@ -61,9 +66,7 @@ public class HttpThrowExceptionOnFailureTest extends BaseHttpTest {
 
     @Test
     public void httpGetWhichReturnsHttp501() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/XXX?throwExceptionOnFailure=false", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        Exchange exchange = template.request(baseUrl + "/XXX?throwExceptionOnFailure=false", exchange1 -> {
         });
 
         assertNotNull(exchange);
@@ -78,9 +81,7 @@ public class HttpThrowExceptionOnFailureTest extends BaseHttpTest {
 
     @Test
     public void httpGetWhichReturnsHttp501ShouldThrowAnException() throws Exception {
-        Exchange reply = template.request("http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/XXX?throwExceptionOnFailure=true", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
+        Exchange reply = template.request(baseUrl + "/XXX?throwExceptionOnFailure=true", exchange -> {
         });
 
         Exception e = reply.getException();
@@ -91,11 +92,7 @@ public class HttpThrowExceptionOnFailureTest extends BaseHttpTest {
 
     @Test
     public void httpGetWhichReturnsHttp501WithIgnoreResponseBody() throws Exception {
-        Exchange exchange = template.request("http://" + localServer.getInetAddress().getHostName() + ":"
-            + localServer.getLocalPort() + "/XXX?throwExceptionOnFailure=false&ignoreResponseBody=true", new Processor() {
-                public void process(Exchange exchange) throws Exception {
-                }
-            });
+        Exchange exchange = template.request(baseUrl + "/XXX?throwExceptionOnFailure=false&ignoreResponseBody=true", exchange1 -> { });
 
         assertNotNull(exchange);
 
@@ -110,11 +107,7 @@ public class HttpThrowExceptionOnFailureTest extends BaseHttpTest {
 
     @Test
     public void httpGetWhichReturnsHttp501ShouldThrowAnExceptionWithIgnoreResponseBody() throws Exception {
-        Exchange reply = template.request("http://" + localServer.getInetAddress().getHostName() + ":"
-            + localServer.getLocalPort() + "/XXX?throwExceptionOnFailure=true&ignoreResponseBody=true", new Processor() {
-                public void process(Exchange exchange) throws Exception {
-                }
-            });
+        Exchange reply = template.request(baseUrl + "/XXX?throwExceptionOnFailure=true&ignoreResponseBody=true", exchange -> { });
 
         Exception e = reply.getException();
         assertNotNull("Should have thrown an exception", e);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpWithHttpUriHeaderTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpWithHttpUriHeaderTest.java
index 1158c84..ec0e495 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpWithHttpUriHeaderTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpWithHttpUriHeaderTest.java
@@ -17,7 +17,6 @@
 package org.apache.camel.component.http;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.BasicValidationHandler;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
@@ -25,6 +24,8 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
 public class HttpWithHttpUriHeaderTest extends BaseHttpTest {
 
     private HttpServer localServer;
@@ -38,7 +39,7 @@ public class HttpWithHttpUriHeaderTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/", new BasicValidationHandler("GET", null, null, getExpectedContent())).create();
+                registerHandler("/", new BasicValidationHandler(GET.name(), null, null, getExpectedContent())).create();
         localServer.start();
 
         super.setUp();
@@ -57,11 +58,7 @@ public class HttpWithHttpUriHeaderTest extends BaseHttpTest {
     @Test
     public void notBridgeEndpointWithDefault() throws Exception {
 
-        Exchange exchange = template.request("http://host/", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_URI, "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/");
-            }
-        });
+        Exchange exchange = template.request("http://host/", exchange1 -> exchange1.getIn().setHeader(Exchange.HTTP_URI, "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/"));
         assertExchange(exchange);
     }
 }
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpsAuthenticationTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpsAuthenticationTest.java
index bf366bd..a3049e7 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpsAuthenticationTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpsAuthenticationTest.java
@@ -21,7 +21,6 @@ import java.util.List;
 
 import org.apache.camel.BindToRegistry;
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.AuthenticationValidationHandler;
 import org.apache.camel.support.jsse.SSLContextParameters;
 import org.apache.http.HttpRequestInterceptor;
@@ -38,6 +37,8 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
 public class HttpsAuthenticationTest extends BaseHttpsTest {
 
     private String user = "camel";
@@ -59,7 +60,7 @@ public class HttpsAuthenticationTest extends BaseHttpsTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/", new AuthenticationValidationHandler("GET", null, null, getExpectedContent(), user, password)).create();
+                registerHandler("/", new AuthenticationValidationHandler(GET.name(), null, null, getExpectedContent(), user, password)).create();
         localServer.start();
 
         super.setUp();
@@ -79,9 +80,7 @@ public class HttpsAuthenticationTest extends BaseHttpsTest {
     public void httpsGetWithAuthentication() throws Exception {
 
         Exchange exchange = template.request("https://127.0.0.1:" + localServer.getLocalPort()
-            + "/?authUsername=camel&authPassword=password&x509HostnameVerifier=#x509HostnameVerifier&sslContextParameters=#sslContextParameters", new Processor() {
-                public void process(Exchange exchange) throws Exception {
-                }
+            + "/?authUsername=camel&authPassword=password&x509HostnameVerifier=#x509HostnameVerifier&sslContextParameters=#sslContextParameters", exchange1 -> {
             });
 
         assertExchange(exchange);
@@ -94,8 +93,7 @@ public class HttpsAuthenticationTest extends BaseHttpsTest {
         List<HttpResponseInterceptor> responseInterceptors = new ArrayList<>();
         responseInterceptors.add(new ResponseContent());
         responseInterceptors.add(new ResponseBasicUnauthorized());
-        ImmutableHttpProcessor httpproc = new ImmutableHttpProcessor(requestInterceptors, responseInterceptors);
 
-        return httpproc;
+        return new ImmutableHttpProcessor(requestInterceptors, responseInterceptors);
     }
 }
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpsGetTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpsGetTest.java
index f450357..a8df92a 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpsGetTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpsGetTest.java
@@ -18,7 +18,6 @@ package org.apache.camel.component.http;
 
 import org.apache.camel.BindToRegistry;
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.BasicValidationHandler;
 import org.apache.camel.support.jsse.SSLContextParameters;
 import org.apache.http.conn.ssl.NoopHostnameVerifier;
@@ -28,6 +27,8 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
 public class HttpsGetTest extends BaseHttpsTest {
 
     private HttpServer localServer;
@@ -47,7 +48,7 @@ public class HttpsGetTest extends BaseHttpsTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/mail/", new BasicValidationHandler("GET", null, null, getExpectedContent())).create();
+                registerHandler("/mail/", new BasicValidationHandler(GET.name(), null, null, getExpectedContent())).create();
         localServer.start();
 
         super.setUp();
@@ -67,11 +68,7 @@ public class HttpsGetTest extends BaseHttpsTest {
     public void httpsGet() throws Exception {
 
         Exchange exchange = template.request("https://127.0.0.1:" + localServer.getLocalPort()
-                + "/mail/?x509HostnameVerifier=#x509HostnameVerifier&sslContextParameters=#sslContextParameters",
-        new Processor() {
-            public void process(Exchange exchange) throws Exception {
-            }
-        });
+                + "/mail/?x509HostnameVerifier=#x509HostnameVerifier&sslContextParameters=#sslContextParameters", exchange1 -> { });
 
         assertExchange(exchange);
     }
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpsSslContextParametersGetTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpsSslContextParametersGetTest.java
index 9816f47..5a52059 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpsSslContextParametersGetTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpsSslContextParametersGetTest.java
@@ -17,7 +17,6 @@
 package org.apache.camel.component.http;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
 import org.apache.camel.component.http.handler.BasicValidationHandler;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
@@ -25,6 +24,8 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.apache.camel.component.http.HttpMethods.GET;
+
 public class HttpsSslContextParametersGetTest extends HttpsGetTest {
 
     private HttpServer localServer;
@@ -38,7 +39,7 @@ public class HttpsSslContextParametersGetTest extends HttpsGetTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/mail/", new BasicValidationHandler("GET", null, null, getExpectedContent())).create();
+                registerHandler("/mail/", new BasicValidationHandler(GET.name(), null, null, getExpectedContent())).create();
         localServer.start();
 
         super.setUp();
@@ -59,9 +60,7 @@ public class HttpsSslContextParametersGetTest extends HttpsGetTest {
     public void httpsGet() throws Exception {
 
         Exchange exchange = template.request("https://127.0.0.1:" + localServer.getLocalPort()
-            + "/mail/?x509HostnameVerifier=x509HostnameVerifier&sslContextParameters=#sslContextParameters", new Processor() {
-                public void process(Exchange exchange) throws Exception {
-                }
+            + "/mail/?x509HostnameVerifier=x509HostnameVerifier&sslContextParameters=#sslContextParameters", exchange1 -> {
             });
 
         assertExchange(exchange);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/ManagedHttpProducerPoolStatsTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/ManagedHttpProducerPoolStatsTest.java
index 23014ca..28e76d0 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/ManagedHttpProducerPoolStatsTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/ManagedHttpProducerPoolStatsTest.java
@@ -16,22 +16,14 @@
  */
 package org.apache.camel.component.http;
 
-import java.io.IOException;
-
 import javax.management.MBeanServer;
 import javax.management.ObjectName;
 
 import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
-import org.apache.http.HttpException;
-import org.apache.http.HttpRequest;
-import org.apache.http.HttpResponse;
 import org.apache.http.HttpStatus;
 import org.apache.http.entity.StringEntity;
 import org.apache.http.impl.bootstrap.HttpServer;
 import org.apache.http.impl.bootstrap.ServerBootstrap;
-import org.apache.http.protocol.HttpContext;
-import org.apache.http.protocol.HttpRequestHandler;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -54,12 +46,9 @@ public class ManagedHttpProducerPoolStatsTest extends BaseHttpTest {
                 setResponseFactory(getHttpResponseFactory()).
                 setExpectationVerifier(getHttpExpectationVerifier()).
                 setSslContext(getSSLContext()).
-                registerHandler("/myapp", new HttpRequestHandler() {
-                    @Override
-                    public void handle(HttpRequest request, HttpResponse response, HttpContext context) throws HttpException, IOException {
-                        response.setEntity(new StringEntity("OK", "ASCII"));
-                        response.setStatusCode(HttpStatus.SC_OK);
-                    }
+                registerHandler("/myapp", (request, response, context) -> {
+                    response.setEntity(new StringEntity("OK", "ASCII"));
+                    response.setStatusCode(HttpStatus.SC_OK);
                 }).create();
         localServer.start();
 
@@ -83,11 +72,7 @@ public class ManagedHttpProducerPoolStatsTest extends BaseHttpTest {
 
         String uri = "http://" + localServer.getInetAddress().getHostName() + ":" + localServer.getLocalPort() + "/myapp";
 
-        Exchange out = template.request(uri, new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setBody("Hello World");
-            }
-        });
+        Exchange out = template.request(uri, exchange -> exchange.getIn().setBody("Hello World"));
 
         assertNotNull(out);
         assertEquals("OK", out.getOut().getBody(String.class));
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/helper/HttpHelperTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/helper/HttpHelperTest.java
index 1177c97..a6bb675 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/helper/HttpHelperTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/helper/HttpHelperTest.java
@@ -171,6 +171,7 @@ public class HttpHelperTest {
                 createHttpEndpoint(true, "http://www.google.com"));
         assertEquals("http://www.google.com/", url);
     }
+
     @Test
     public void createURLShouldAddPathAndQueryParamsAndSlash() throws Exception {
         String url = HttpHelper.createURL(
@@ -178,6 +179,7 @@ public class HttpHelperTest {
                 createHttpEndpoint(true, "http://www.google.com/context?test=true"));
         assertEquals("http://www.google.com/context/search?test=true", url);
     }
+
     @Test
     public void createURLShouldAddPathAndQueryParamsAndRemoveDuplicateSlash() throws Exception {
         String url = HttpHelper.createURL(
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/rest/RestCamelComponentVerifierTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/rest/RestCamelComponentVerifierTest.java
index 19a0d59..b515564 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/rest/RestCamelComponentVerifierTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/rest/RestCamelComponentVerifierTest.java
@@ -17,6 +17,7 @@
 package org.apache.camel.component.http.rest;
 
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -32,24 +33,36 @@ import org.apache.http.protocol.HttpProcessor;
 import org.apache.http.protocol.ImmutableHttpProcessor;
 import org.apache.http.protocol.ResponseContent;
 import org.junit.After;
-import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 
+import static org.eclipse.jetty.http.HttpMethod.GET;
+
 public class RestCamelComponentVerifierTest extends BaseHttpTest {
+
     private HttpServer localServer;
+    private Map<String, Object> parameters;
+    private ComponentVerifierExtension verifier;
 
     @Before
     @Override
     public void setUp() throws Exception {
+        super.setUp();
+
         localServer = ServerBootstrap.bootstrap()
-            .setHttpProcessor(getHttpProcessor())
-            .registerHandler("/verify", new BasicValidationHandler("GET", null, null, getExpectedContent()))
-            .create();
+                .setHttpProcessor(getHttpProcessor())
+                .registerHandler("/verify", new BasicValidationHandler(GET.name(), null, null, getExpectedContent()))
+                .create();
 
         localServer.start();
 
-        super.setUp();
+        RestComponent component = context().getComponent("rest", RestComponent.class);
+        verifier = component.getVerifier();
+
+        parameters = new HashMap<>();
+        parameters.put("componentName", "http");
+        parameters.put("host", "http://localhost:" + localServer.getLocalPort());
+        parameters.put("path", "verify");
     }
 
     @After
@@ -69,12 +82,12 @@ public class RestCamelComponentVerifierTest extends BaseHttpTest {
 
     private HttpProcessor getHttpProcessor() {
         return new ImmutableHttpProcessor(
-            Arrays.asList(
-                new RequestBasicAuth()
-            ),
-            Arrays.asList(
-                new ResponseContent(),
-                new ResponseBasicUnauthorized())
+                Collections.singletonList(
+                        new RequestBasicAuth()
+                ),
+                Arrays.asList(
+                        new ResponseContent(),
+                        new ResponseBasicUnauthorized())
         );
     }
 
@@ -82,16 +95,15 @@ public class RestCamelComponentVerifierTest extends BaseHttpTest {
     // Helpers
     // *************************************************
 
+    @SuppressWarnings("unused")
     protected String getLocalServerUri(String contextPath) {
-        return new StringBuilder()
-            .append("http://")
-            .append(localServer.getInetAddress().getHostName())
-            .append(":")
-            .append(localServer.getLocalPort())
-            .append(contextPath != null
+        return "http://"
+                + localServer.getInetAddress().getHostName()
+                + ":"
+                + localServer.getLocalPort()
+                + (contextPath != null
                 ? contextPath.startsWith("/") ? contextPath : "/" + contextPath
-                : "")
-            .toString();
+                : "");
     }
 
     // *************************************************
@@ -99,52 +111,32 @@ public class RestCamelComponentVerifierTest extends BaseHttpTest {
     // *************************************************
     @Test
     public void testParameters() throws Exception {
-        RestComponent component = context().getComponent("rest", RestComponent.class);
-        ComponentVerifierExtension verifier = component.getVerifier();
 
-        Map<String, Object> parameters = new HashMap<>();
-        parameters.put("componentName", "http");
-        parameters.put("host", "http://localhost:" + localServer.getLocalPort());
-        parameters.put("path", "verify");
         parameters.put("method", "get");
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.PARAMETERS, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
+        assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
     }
 
     @Test
     public void testMissingRestParameters() throws Exception {
-        RestComponent component = context.getComponent("rest", RestComponent.class);
-        ComponentVerifierExtension verifier = component.getVerifier();
-
-        Map<String, Object> parameters = new HashMap<>();
-        parameters.put("componentName", "http");
-        parameters.put("host", "http://localhost:" + localServer.getLocalPort());
-        parameters.put("path", "verify");
-
         // This parameter does not belong to the rest component and validation
         // is delegated to the transport component
         parameters.put("copyHeaders", false);
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.PARAMETERS, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
-        Assert.assertEquals(1, result.getErrors().size());
-        Assert.assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.MISSING_PARAMETER, result.getErrors().get(0).getCode());
-        Assert.assertEquals(1, result.getErrors().get(0).getParameterKeys().size());
-        Assert.assertTrue(result.getErrors().get(0).getParameterKeys().contains("method"));
+        assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
+        assertEquals(1, result.getErrors().size());
+        assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.MISSING_PARAMETER, result.getErrors().get(0).getCode());
+        assertEquals(1, result.getErrors().get(0).getParameterKeys().size());
+        assertTrue(result.getErrors().get(0).getParameterKeys().contains("method"));
     }
 
     @Test
-    public void testWrongComponentParameters() throws Exception {
-        RestComponent component = context.getComponent("rest", RestComponent.class);
-        ComponentVerifierExtension verifier = component.getVerifier();
+    public void testWrongComponentParameters() {
 
-        Map<String, Object> parameters = new HashMap<>();
-        parameters.put("componentName", "http");
-        parameters.put("host", "http://localhost:" + localServer.getLocalPort());
-        parameters.put("path", "verify");
         parameters.put("method", "get");
 
         // This parameter does not belong to the rest component and validation
@@ -153,26 +145,20 @@ public class RestCamelComponentVerifierTest extends BaseHttpTest {
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.PARAMETERS, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
-        Assert.assertEquals(1, result.getErrors().size());
-        Assert.assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.UNKNOWN_PARAMETER, result.getErrors().get(0).getCode());
-        Assert.assertEquals(1, result.getErrors().get(0).getParameterKeys().size());
-        Assert.assertTrue(result.getErrors().get(0).getParameterKeys().contains("nonExistingOption"));
+        assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
+        assertEquals(1, result.getErrors().size());
+        assertEquals(ComponentVerifierExtension.VerificationError.StandardCode.UNKNOWN_PARAMETER, result.getErrors().get(0).getCode());
+        assertEquals(1, result.getErrors().get(0).getParameterKeys().size());
+        assertTrue(result.getErrors().get(0).getParameterKeys().contains("nonExistingOption"));
     }
 
     @Test
     public void testConnectivity() throws Exception {
-        RestComponent component = context().getComponent("rest", RestComponent.class);
-        ComponentVerifierExtension verifier = component.getVerifier();
 
-        Map<String, Object> parameters = new HashMap<>();
-        parameters.put("componentName", "http");
-        parameters.put("host", "http://localhost:" + localServer.getLocalPort());
-        parameters.put("path", "verify");
         parameters.put("method", "get");
 
         ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.CONNECTIVITY, parameters);
 
-        Assert.assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
+        assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
     }
 }