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 2020/03/27 10:33:08 UTC

[camel] branch master updated: CAMEL-14640: Upgrade ahc-client used for testing websocket component

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 411081b  CAMEL-14640: Upgrade ahc-client used for testing websocket component
411081b is described below

commit 411081bd054d5bb2729c9c6edd4d17ecd0db07a5
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Fri Mar 27 11:32:39 2020 +0100

    CAMEL-14640: Upgrade ahc-client used for testing websocket component
---
 components/camel-websocket/pom.xml                 |  2 +-
 .../websocket/WebsocketClientCamelRouteTest.java   | 37 +++++++----
 .../WebsocketComponentRouteExampleTest.java        | 36 +++++++----
 .../websocket/WebsocketConsumerRouteTest.java      | 49 +++++++++++++--
 .../WebsocketProducerRouteExampleTest.java         | 72 ++++++++++++++-------
 .../WebsocketProducerRouteRestartTest.java         | 36 +++++++----
 .../websocket/WebsocketRouteExampleTest.java       | 40 ++++++++----
 .../WebsocketSSLClientAuthRouteExampleTest.java    | 41 ++++++++----
 .../WebsocketSSLContextGlobalRouteExampleTest.java | 39 +++++++-----
 .../WebsocketSSLContextInUriRouteExampleTest.java  | 39 +++++++-----
 .../websocket/WebsocketSSLRouteExampleTest.java    | 41 ++++++++----
 .../component/websocket/WebsocketStaticTest.java   | 38 +++++++----
 .../websocket/WebsocketTwoRoutesExampleTest.java   | 73 +++++++++++++++-------
 ...SIndividualAndBroadcastEndpointExampleTest.java | 40 ++++++++----
 ...ebsocketTwoRoutesToSameEndpointExampleTest.java | 38 +++++++----
 15 files changed, 432 insertions(+), 189 deletions(-)

diff --git a/components/camel-websocket/pom.xml b/components/camel-websocket/pom.xml
index 2f69f81..8be46f1 100644
--- a/components/camel-websocket/pom.xml
+++ b/components/camel-websocket/pom.xml
@@ -105,7 +105,7 @@
             <groupId>org.asynchttpclient</groupId>
             <artifactId>async-http-client</artifactId>
             <!-- 2.0.17 onwards has TSL/SSL problems -->
-            <version>2.0.16</version>
+            <version>2.11.0</version>
             <scope>test</scope>
         </dependency>
         <dependency>
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketClientCamelRouteTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketClientCamelRouteTest.java
index 4cd8e0e..10c911a 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketClientCamelRouteTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketClientCamelRouteTest.java
@@ -27,7 +27,7 @@ import org.apache.camel.test.junit4.CamelTestSupport;
 import org.asynchttpclient.AsyncHttpClient;
 import org.asynchttpclient.DefaultAsyncHttpClient;
 import org.asynchttpclient.ws.WebSocket;
-import org.asynchttpclient.ws.WebSocketTextListener;
+import org.asynchttpclient.ws.WebSocketListener;
 import org.asynchttpclient.ws.WebSocketUpgradeHandler;
 import org.junit.Before;
 import org.junit.Test;
@@ -52,32 +52,45 @@ public class WebsocketClientCamelRouteTest extends CamelTestSupport {
 
         WebSocket websocket = c.prepareGet("ws://127.0.0.1:" + port + "/test").execute(
             new WebSocketUpgradeHandler.Builder()
-                .addWebSocketListener(new WebSocketTextListener() {
-                    @Override
-                    public void onMessage(String message) {
-                        received.add(message);
-                        log.info("received --> " + message);
-                        latch.countDown();
-                    }
+                .addWebSocketListener(new WebSocketListener() {
 
-                   
                     @Override
                     public void onOpen(WebSocket websocket) {
                     }
 
                     @Override
-                    public void onClose(WebSocket websocket) {
+                    public void onClose(WebSocket websocket, int code, String reason) {
+
                     }
 
                     @Override
                     public void onError(Throwable t) {
                         t.printStackTrace();
                     }
+
+                    @Override
+                    public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+                    }
+
+                    @Override
+                    public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+                        received.add(payload);
+                        log.info("received --> " + payload);
+                        latch.countDown();
+                    }
+
+                    @Override
+                    public void onPingFrame(byte[] payload) {
+                    }
+
+                    @Override
+                    public void onPongFrame(byte[] payload) {
+                    }
                 }).build()).get();
 
         getMockEndpoint("mock:client").expectedBodiesReceived("Hello from WS client");
 
-        websocket.sendMessage("Hello from WS client");
+        websocket.sendTextFrame("Hello from WS client");
         assertTrue(latch.await(10, TimeUnit.SECONDS));
 
         assertMockEndpointsSatisfied();
@@ -87,7 +100,7 @@ public class WebsocketClientCamelRouteTest extends CamelTestSupport {
             assertEquals(">> Welcome on board!", received.get(i));
         }
 
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketComponentRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketComponentRouteExampleTest.java
index a865092..76a1c57 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketComponentRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketComponentRouteExampleTest.java
@@ -27,7 +27,7 @@ import org.apache.camel.test.junit4.CamelTestSupport;
 import org.asynchttpclient.AsyncHttpClient;
 import org.asynchttpclient.DefaultAsyncHttpClient;
 import org.asynchttpclient.ws.WebSocket;
-import org.asynchttpclient.ws.WebSocketTextListener;
+import org.asynchttpclient.ws.WebSocketListener;
 import org.asynchttpclient.ws.WebSocketUpgradeHandler;
 import org.junit.Before;
 import org.junit.Test;
@@ -52,36 +52,48 @@ public class WebsocketComponentRouteExampleTest extends CamelTestSupport {
 
         WebSocket websocket = c.prepareGet("ws://localhost:" + port + "/echo").execute(
             new WebSocketUpgradeHandler.Builder()
-                .addWebSocketListener(new WebSocketTextListener() {
-                    @Override
-                    public void onMessage(String message) {
-                        received.add(message);
-                        log.info("received --> " + message);
-                        latch.countDown();
-                    }
+                .addWebSocketListener(new WebSocketListener() {
 
-                        
                     @Override
                     public void onOpen(WebSocket websocket) {
                     }
 
                     @Override
-                    public void onClose(WebSocket websocket) {
+                    public void onClose(WebSocket websocket, int code, String reason) {
                     }
 
                     @Override
                     public void onError(Throwable t) {
                         t.printStackTrace();
                     }
+
+                    @Override
+                    public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+                    }
+
+                    @Override
+                    public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+                        received.add(payload);
+                        log.info("received --> " + payload);
+                        latch.countDown();
+                    }
+
+                    @Override
+                    public void onPingFrame(byte[] payload) {
+                    }
+
+                    @Override
+                    public void onPongFrame(byte[] payload) {
+                    }
                 }).build()).get();
 
-        websocket.sendMessage("Beer");
+        websocket.sendTextFrame("Beer");
         assertTrue(latch.await(10, TimeUnit.SECONDS));
 
         assertEquals(1, received.size());
         assertEquals("BeerBeer", received.get(0));
 
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketConsumerRouteTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketConsumerRouteTest.java
index 73b3c67..7a6476c 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketConsumerRouteTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketConsumerRouteTest.java
@@ -51,23 +51,44 @@ public class WebsocketConsumerRouteTest extends CamelTestSupport {
                     }
 
                     @Override
-                    public void onClose(WebSocket websocket) {
+                    public void onClose(WebSocket websocket, int code, String reason) {
+
                     }
 
                     @Override
                     public void onError(Throwable t) {
                         t.printStackTrace();
                     }
+
+                    @Override
+                    public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+
+                    }
+
+                    @Override
+                    public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+
+                    }
+
+                    @Override
+                    public void onPingFrame(byte[] payload) {
+
+                    }
+
+                    @Override
+                    public void onPongFrame(byte[] payload) {
+
+                    }
                 }).build()).get();
 
         MockEndpoint result = getMockEndpoint("mock:result");
         result.expectedBodiesReceived("Test");
 
-        websocket.sendMessage("Test");
+        websocket.sendTextFrame("Test");
 
         result.assertIsSatisfied();
         
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
     }
 
@@ -83,24 +104,40 @@ public class WebsocketConsumerRouteTest extends CamelTestSupport {
                     }
 
                     @Override
-                    public void onClose(WebSocket websocket) {
+                    public void onClose(WebSocket websocket, int code, String reason) {
                     }
 
                     @Override
                     public void onError(Throwable t) {
                         t.printStackTrace();
                     }
+
+                    @Override
+                    public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+                    }
+
+                    @Override
+                    public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+                    }
+
+                    @Override
+                    public void onPingFrame(byte[] payload) {
+                    }
+
+                    @Override
+                    public void onPongFrame(byte[] payload) {
+                    }
                 }).build()).get();
 
         MockEndpoint result = getMockEndpoint("mock:result");
         final byte[] testmessage = "Test".getBytes("utf-8");
         result.expectedBodiesReceived(testmessage);
 
-        websocket.sendMessage(testmessage);
+        websocket.sendBinaryFrame(testmessage);
 
         result.assertIsSatisfied();
 
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketProducerRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketProducerRouteExampleTest.java
index 786ee7b..4c93506 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketProducerRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketProducerRouteExampleTest.java
@@ -29,9 +29,8 @@ import org.apache.camel.test.AvailablePortFinder;
 import org.apache.camel.test.junit4.CamelTestSupport;
 import org.asynchttpclient.AsyncHttpClient;
 import org.asynchttpclient.DefaultAsyncHttpClient;
-import org.asynchttpclient.ws.DefaultWebSocketListener;
 import org.asynchttpclient.ws.WebSocket;
-import org.asynchttpclient.ws.WebSocketTextListener;
+import org.asynchttpclient.ws.WebSocketListener;
 import org.asynchttpclient.ws.WebSocketUpgradeHandler;
 import org.junit.Before;
 import org.junit.Test;
@@ -60,27 +59,42 @@ public class WebsocketProducerRouteExampleTest extends CamelTestSupport {
 
         WebSocket websocket = c.prepareGet("ws://localhost:" + port + "/shop").execute(
             new WebSocketUpgradeHandler.Builder()
-                .addWebSocketListener(new WebSocketTextListener() {
-
-                    @Override
-                    public void onMessage(String message) {
-                        received.add(message);
-                        log.info("received --> " + message);
-                        latch.countDown();
-                    }
+                .addWebSocketListener(new WebSocketListener() {
 
                     @Override
                     public void onOpen(WebSocket websocket) {
                     }
 
                     @Override
-                    public void onClose(WebSocket websocket) {
+                    public void onClose(WebSocket websocket, int code, String reason) {
                     }
 
                     @Override
                     public void onError(Throwable t) {
                         t.printStackTrace();
                     }
+
+                    @Override
+                    public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+
+                    }
+
+                    @Override
+                    public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+                        received.add(payload);
+                        log.info("received --> " + payload);
+                        latch.countDown();
+                    }
+
+                    @Override
+                    public void onPingFrame(byte[] payload) {
+
+                    }
+
+                    @Override
+                    public void onPongFrame(byte[] payload) {
+
+                    }
                 }).build()).get();
 
         // Send message to the direct endpoint
@@ -93,7 +107,7 @@ public class WebsocketProducerRouteExampleTest extends CamelTestSupport {
         assertTrue(r instanceof String);
         assertEquals("Beer on stock at Apache Mall", r);
 
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
     }
 
@@ -103,26 +117,42 @@ public class WebsocketProducerRouteExampleTest extends CamelTestSupport {
 
         WebSocket websocket = c.prepareGet("ws://localhost:" + port + "/shop").execute(
             new WebSocketUpgradeHandler.Builder()
-                .addWebSocketListener(new DefaultWebSocketListener() {
+                .addWebSocketListener(new WebSocketListener() {
+                    @Override
+                    public void onOpen(WebSocket websocket) {
+
+                    }
+
+                    @Override
+                    public void onClose(WebSocket websocket, int code, String reason) {
+
+                    }
 
                     @Override
-                    public void onMessage(byte[] message) {
-                        received.add(message);
-                        log.info("received --> " + Arrays.toString(message));
+                    public void onError(Throwable t) {
+
+                    }
+
+                    @Override
+                    public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+                        received.add(payload);
+                        log.info("received --> " + Arrays.toString(payload));
                         latch.countDown();
                     }
 
                     @Override
-                    public void onOpen(WebSocket websocket) {
+                    public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+
                     }
 
                     @Override
-                    public void onClose(WebSocket websocket) {
+                    public void onPingFrame(byte[] payload) {
+
                     }
 
                     @Override
-                    public void onError(Throwable t) {
-                        t.printStackTrace();
+                    public void onPongFrame(byte[] payload) {
+
                     }
                 }).build()).get();
 
@@ -137,7 +167,7 @@ public class WebsocketProducerRouteExampleTest extends CamelTestSupport {
         assertTrue(r instanceof byte[]);
         assertArrayEquals(testmessage, (byte[])r);
 
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketProducerRouteRestartTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketProducerRouteRestartTest.java
index d18b1d7..37603b8 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketProducerRouteRestartTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketProducerRouteRestartTest.java
@@ -29,7 +29,7 @@ import org.apache.camel.test.junit4.CamelTestSupport;
 import org.asynchttpclient.AsyncHttpClient;
 import org.asynchttpclient.DefaultAsyncHttpClient;
 import org.asynchttpclient.ws.WebSocket;
-import org.asynchttpclient.ws.WebSocketTextListener;
+import org.asynchttpclient.ws.WebSocketListener;
 import org.asynchttpclient.ws.WebSocketUpgradeHandler;
 import org.junit.Before;
 import org.junit.Test;
@@ -80,26 +80,39 @@ public class WebsocketProducerRouteRestartTest extends CamelTestSupport {
 
         WebSocket websocket = c.prepareGet("ws://localhost:" + port + "/shop").execute(
             new WebSocketUpgradeHandler.Builder()
-                .addWebSocketListener(new WebSocketTextListener() {
-                    @Override
-                    public void onMessage(String message) {
-                        received.add(message);
-                        log.info("received --> " + message);
-                        latch.countDown();
-                    }
-                    
+                .addWebSocketListener(new WebSocketListener() {
                     @Override
                     public void onOpen(WebSocket websocket) {
                     }
 
                     @Override
-                    public void onClose(WebSocket websocket) {
+                    public void onClose(WebSocket websocket, int code, String reason) {
                     }
 
                     @Override
                     public void onError(Throwable t) {
                         t.printStackTrace();
                     }
+
+                    @Override
+                    public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+
+                    }
+
+                    @Override
+                    public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+                        received.add(payload);
+                        log.info("received --> " + payload);
+                        latch.countDown();
+                    }
+
+                    @Override
+                    public void onPingFrame(byte[] payload) {
+                    }
+
+                    @Override
+                    public void onPongFrame(byte[] payload) {
+                    }
                 }).build()).get();
 
         // Send message to the direct endpoint
@@ -112,9 +125,8 @@ public class WebsocketProducerRouteRestartTest extends CamelTestSupport {
         assertTrue(r instanceof String);
         assertEquals("Beer on stock at Apache Mall", r);
 
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
-        
     }
 
     @Override
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketRouteExampleTest.java
index 0079dfa..f62e56f 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketRouteExampleTest.java
@@ -27,7 +27,7 @@ import org.apache.camel.test.junit4.CamelTestSupport;
 import org.asynchttpclient.AsyncHttpClient;
 import org.asynchttpclient.DefaultAsyncHttpClient;
 import org.asynchttpclient.ws.WebSocket;
-import org.asynchttpclient.ws.WebSocketTextListener;
+import org.asynchttpclient.ws.WebSocketListener;
 import org.asynchttpclient.ws.WebSocketUpgradeHandler;
 import org.junit.Before;
 import org.junit.Test;
@@ -51,35 +51,51 @@ public class WebsocketRouteExampleTest extends CamelTestSupport {
 
         WebSocket websocket = c.prepareGet("ws://127.0.0.1:" + port + "/echo").execute(
             new WebSocketUpgradeHandler.Builder()
-                .addWebSocketListener(new WebSocketTextListener() {
-                    @Override
-                    public void onMessage(String message) {
-                        received.add(message);
-                        log.info("received --> " + message);
-                        latch.countDown();
-                    }
-
+                .addWebSocketListener(new WebSocketListener() {
                     @Override
                     public void onOpen(WebSocket websocket) {
                     }
 
                     @Override
-                    public void onClose(WebSocket websocket) {
+                    public void onClose(WebSocket websocket, int code, String reason) {
+
                     }
 
                     @Override
                     public void onError(Throwable t) {
                         t.printStackTrace();
                     }
+
+                    @Override
+                    public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+
+                    }
+
+                    @Override
+                    public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+                        received.add(payload);
+                        log.info("received --> " + payload);
+                        latch.countDown();
+                    }
+
+                    @Override
+                    public void onPingFrame(byte[] payload) {
+
+                    }
+
+                    @Override
+                    public void onPongFrame(byte[] payload) {
+
+                    }
                 }).build()).get();
 
-        websocket.sendMessage("Beer");
+        websocket.sendTextFrame("Beer");
         assertTrue(latch.await(10, TimeUnit.SECONDS));
 
         assertEquals(1, received.size());
         assertEquals("BeerBeer", received.get(0));
 
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLClientAuthRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLClientAuthRouteExampleTest.java
index 38007d7..7400063 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLClientAuthRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLClientAuthRouteExampleTest.java
@@ -41,7 +41,7 @@ import org.asynchttpclient.AsyncHttpClientConfig;
 import org.asynchttpclient.DefaultAsyncHttpClient;
 import org.asynchttpclient.DefaultAsyncHttpClientConfig;
 import org.asynchttpclient.ws.WebSocket;
-import org.asynchttpclient.ws.WebSocketTextListener;
+import org.asynchttpclient.ws.WebSocketListener;
 import org.asynchttpclient.ws.WebSocketUpgradeHandler;
 import org.junit.Before;
 import org.junit.Test;
@@ -91,7 +91,7 @@ public class WebsocketSSLClientAuthRouteExampleTest extends CamelTestSupport {
         SSLContext sslContext = sslContextParameters.createSSLContext(context());
         JdkSslContext ssl = new JdkSslContext(sslContext, true, ClientAuth.REQUIRE);
         builder.setSslContext(ssl);
-        builder.setAcceptAnyCertificate(true);
+        builder.setDisableHttpsEndpointIdentificationAlgorithm(true);
         config = builder.build();
         c = new DefaultAsyncHttpClient(config);
 
@@ -128,32 +128,47 @@ public class WebsocketSSLClientAuthRouteExampleTest extends CamelTestSupport {
         AsyncHttpClient c = createAsyncHttpSSLClient();
         WebSocket websocket = c.prepareGet("wss://127.0.0.1:" + port + "/test").execute(
                 new WebSocketUpgradeHandler.Builder()
-                        .addWebSocketListener(new WebSocketTextListener() {
-                            @Override
-                            public void onMessage(String message) {
-                                received.add(message);
-                                log.info("received --> " + message);
-                                latch.countDown();
-                            }
-
+                        .addWebSocketListener(new WebSocketListener() {
 
                             @Override
                             public void onOpen(WebSocket websocket) {
                             }
 
                             @Override
-                            public void onClose(WebSocket websocket) {
+                            public void onClose(WebSocket websocket, int code, String reason) {
                             }
 
                             @Override
                             public void onError(Throwable t) {
                                 t.printStackTrace();
                             }
+
+                            @Override
+                            public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+
+                            }
+
+                            @Override
+                            public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+                                received.add(payload);
+                                log.info("received --> " + payload);
+                                latch.countDown();
+                            }
+
+                            @Override
+                            public void onPingFrame(byte[] payload) {
+
+                            }
+
+                            @Override
+                            public void onPongFrame(byte[] payload) {
+
+                            }
                         }).build()).get();
 
         getMockEndpoint("mock:client").expectedBodiesReceived("Hello from WS client");
 
-        websocket.sendMessage("Hello from WS client");
+        websocket.sendTextFrame("Hello from WS client");
         assertTrue(latch.await(10, TimeUnit.SECONDS));
 
         assertMockEndpointsSatisfied();
@@ -163,7 +178,7 @@ public class WebsocketSSLClientAuthRouteExampleTest extends CamelTestSupport {
             assertEquals(">> Welcome on board!", received.get(i));
         }
 
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextGlobalRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextGlobalRouteExampleTest.java
index 4ef5ffa..fa52139 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextGlobalRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextGlobalRouteExampleTest.java
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.component.websocket;
 
+import javax.net.ssl.SSLContext;
 import java.io.IOException;
 import java.security.GeneralSecurityException;
 import java.util.ArrayList;
@@ -23,8 +24,6 @@ import java.util.List;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.TimeUnit;
 
-import javax.net.ssl.SSLContext;
-
 import io.netty.handler.ssl.ClientAuth;
 import io.netty.handler.ssl.JdkSslContext;
 import org.apache.camel.CamelContext;
@@ -42,7 +41,7 @@ import org.asynchttpclient.AsyncHttpClientConfig;
 import org.asynchttpclient.DefaultAsyncHttpClient;
 import org.asynchttpclient.DefaultAsyncHttpClientConfig;
 import org.asynchttpclient.ws.WebSocket;
-import org.asynchttpclient.ws.WebSocketTextListener;
+import org.asynchttpclient.ws.WebSocketListener;
 import org.asynchttpclient.ws.WebSocketUpgradeHandler;
 import org.junit.Before;
 import org.junit.Test;
@@ -115,7 +114,7 @@ public class WebsocketSSLContextGlobalRouteExampleTest extends CamelTestSupport
         SSLContext sslContext = sslContextParameters.createSSLContext(context());
         JdkSslContext ssl = new JdkSslContext(sslContext, true, ClientAuth.REQUIRE);
         builder.setSslContext(ssl);
-        builder.setAcceptAnyCertificate(true);
+        builder.setDisableHttpsEndpointIdentificationAlgorithm(true);
         config = builder.build();
         c = new DefaultAsyncHttpClient(config);
 
@@ -128,33 +127,43 @@ public class WebsocketSSLContextGlobalRouteExampleTest extends CamelTestSupport
         AsyncHttpClient c = createAsyncHttpSSLClient();
         WebSocket websocket = c.prepareGet("wss://127.0.0.1:" + port + "/test").execute(
                 new WebSocketUpgradeHandler.Builder()
-                        .addWebSocketListener(new WebSocketTextListener() {
+                        .addWebSocketListener(new WebSocketListener() {
                             @Override
-                            public void onMessage(String message) {
-                                received.add(message);
-                                log.info("received --> " + message);
-                                latch.countDown();
+                            public void onOpen(WebSocket websocket) {
                             }
 
+                            @Override
+                            public void onClose(WebSocket websocket, int code, String reason) {
+                            }
+
+                            @Override
+                            public void onError(Throwable t) {
+                                t.printStackTrace();
+                            }
 
+                            @Override
+                            public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+                            }
 
                             @Override
-                            public void onOpen(WebSocket websocket) {
+                            public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+                                received.add(payload);
+                                log.info("received --> " + payload);
+                                latch.countDown();
                             }
 
                             @Override
-                            public void onClose(WebSocket websocket) {
+                            public void onPingFrame(byte[] payload) {
                             }
 
                             @Override
-                            public void onError(Throwable t) {
-                                t.printStackTrace();
+                            public void onPongFrame(byte[] payload) {
                             }
                         }).build()).get();
 
         getMockEndpoint("mock:client").expectedBodiesReceived("Hello from WS client");
 
-        websocket.sendMessage("Hello from WS client");
+        websocket.sendTextFrame("Hello from WS client");
         assertTrue(latch.await(10, TimeUnit.SECONDS));
 
         assertMockEndpointsSatisfied();
@@ -164,7 +173,7 @@ public class WebsocketSSLContextGlobalRouteExampleTest extends CamelTestSupport
             assertEquals(">> Welcome on board!", received.get(i));
         }
 
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextInUriRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextInUriRouteExampleTest.java
index 0abca74..808995a 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextInUriRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextInUriRouteExampleTest.java
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.component.websocket;
 
+import javax.net.ssl.SSLContext;
 import java.io.IOException;
 import java.security.GeneralSecurityException;
 import java.util.ArrayList;
@@ -23,8 +24,6 @@ import java.util.List;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.TimeUnit;
 
-import javax.net.ssl.SSLContext;
-
 import io.netty.handler.ssl.ClientAuth;
 import io.netty.handler.ssl.JdkSslContext;
 import org.apache.camel.builder.RouteBuilder;
@@ -42,7 +41,7 @@ import org.asynchttpclient.AsyncHttpClientConfig;
 import org.asynchttpclient.DefaultAsyncHttpClient;
 import org.asynchttpclient.DefaultAsyncHttpClientConfig;
 import org.asynchttpclient.ws.WebSocket;
-import org.asynchttpclient.ws.WebSocketTextListener;
+import org.asynchttpclient.ws.WebSocketListener;
 import org.asynchttpclient.ws.WebSocketUpgradeHandler;
 import org.junit.Before;
 import org.junit.Test;
@@ -114,7 +113,7 @@ public class WebsocketSSLContextInUriRouteExampleTest extends CamelTestSupport {
         SSLContext sslContext = sslContextParameters.createSSLContext(context());
         JdkSslContext ssl = new JdkSslContext(sslContext, true, ClientAuth.REQUIRE);
         builder.setSslContext(ssl);
-        builder.setAcceptAnyCertificate(true);
+        builder.setDisableHttpsEndpointIdentificationAlgorithm(true);
         config = builder.build();
         c = new DefaultAsyncHttpClient(config);
 
@@ -127,33 +126,43 @@ public class WebsocketSSLContextInUriRouteExampleTest extends CamelTestSupport {
         AsyncHttpClient c = createAsyncHttpSSLClient();
         WebSocket websocket = c.prepareGet("wss://127.0.0.1:" + port + "/test").execute(
                 new WebSocketUpgradeHandler.Builder()
-                        .addWebSocketListener(new WebSocketTextListener() {
+                        .addWebSocketListener(new WebSocketListener() {
                             @Override
-                            public void onMessage(String message) {
-                                received.add(message);
-                                log.info("received --> " + message);
-                                latch.countDown();
+                            public void onOpen(WebSocket websocket) {
                             }
 
+                            @Override
+                            public void onClose(WebSocket websocket, int code, String reason) {
+                            }
+
+                            @Override
+                            public void onError(Throwable t) {
+                                t.printStackTrace();
+                            }
 
+                            @Override
+                            public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+                            }
 
                             @Override
-                            public void onOpen(WebSocket websocket) {
+                            public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+                                received.add(payload);
+                                log.info("received --> " + payload);
+                                latch.countDown();
                             }
 
                             @Override
-                            public void onClose(WebSocket websocket) {
+                            public void onPingFrame(byte[] payload) {
                             }
 
                             @Override
-                            public void onError(Throwable t) {
-                                t.printStackTrace();
+                            public void onPongFrame(byte[] payload) {
                             }
                         }).build()).get();
 
         getMockEndpoint("mock:client").expectedBodiesReceived("Hello from WS client");
 
-        websocket.sendMessage("Hello from WS client");
+        websocket.sendTextFrame("Hello from WS client");
         assertTrue(latch.await(10, TimeUnit.SECONDS));
 
         assertMockEndpointsSatisfied();
@@ -163,7 +172,7 @@ public class WebsocketSSLContextInUriRouteExampleTest extends CamelTestSupport {
             assertEquals(">> Welcome on board!", received.get(i));
         }
 
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLRouteExampleTest.java
index 137e123..15108b7 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLRouteExampleTest.java
@@ -41,7 +41,7 @@ import org.asynchttpclient.AsyncHttpClientConfig;
 import org.asynchttpclient.DefaultAsyncHttpClient;
 import org.asynchttpclient.DefaultAsyncHttpClientConfig;
 import org.asynchttpclient.ws.WebSocket;
-import org.asynchttpclient.ws.WebSocketTextListener;
+import org.asynchttpclient.ws.WebSocketListener;
 import org.asynchttpclient.ws.WebSocketUpgradeHandler;
 import org.junit.Before;
 import org.junit.Test;
@@ -83,7 +83,7 @@ public class WebsocketSSLRouteExampleTest extends CamelTestSupport {
         SSLContext sslContext = sslContextParameters.createSSLContext(context());
         JdkSslContext ssl = new JdkSslContext(sslContext, true, ClientAuth.REQUIRE);
         builder.setSslContext(ssl);
-        builder.setAcceptAnyCertificate(true);
+        builder.setDisableHttpsEndpointIdentificationAlgorithm(true);
         config = builder.build();
         c = new DefaultAsyncHttpClient(config);
 
@@ -122,32 +122,47 @@ public class WebsocketSSLRouteExampleTest extends CamelTestSupport {
         AsyncHttpClient c = createAsyncHttpSSLClient();
         WebSocket websocket = c.prepareGet("wss://127.0.0.1:" + port + "/test").execute(
                 new WebSocketUpgradeHandler.Builder()
-                        .addWebSocketListener(new WebSocketTextListener() {
-                            @Override
-                            public void onMessage(String message) {
-                                received.add(message);
-                                log.info("received --> " + message);
-                                latch.countDown();
-                            }
-
+                        .addWebSocketListener(new WebSocketListener() {
 
                             @Override
                             public void onOpen(WebSocket websocket) {
                             }
 
                             @Override
-                            public void onClose(WebSocket websocket) {
+                            public void onClose(WebSocket websocket, int code, String reason) {
+
                             }
 
                             @Override
                             public void onError(Throwable t) {
                                 t.printStackTrace();
                             }
+
+                            @Override
+                            public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+                            }
+
+                            @Override
+                            public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+                                received.add(payload);
+                                log.info("received --> " + payload);
+                                latch.countDown();
+                            }
+
+                            @Override
+                            public void onPingFrame(byte[] payload) {
+
+                            }
+
+                            @Override
+                            public void onPongFrame(byte[] payload) {
+
+                            }
                         }).build()).get();
 
         getMockEndpoint("mock:client").expectedBodiesReceived("Hello from WS client");
 
-        websocket.sendMessage("Hello from WS client");
+        websocket.sendTextFrame("Hello from WS client");
         assertTrue(latch.await(10, TimeUnit.SECONDS));
 
         assertMockEndpointsSatisfied();
@@ -157,7 +172,7 @@ public class WebsocketSSLRouteExampleTest extends CamelTestSupport {
             assertEquals(">> Welcome on board!", received.get(i));
         }
 
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketStaticTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketStaticTest.java
index 09718e5..70d3bab 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketStaticTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketStaticTest.java
@@ -28,7 +28,7 @@ import org.asynchttpclient.AsyncHttpClient;
 import org.asynchttpclient.DefaultAsyncHttpClient;
 import org.asynchttpclient.Response;
 import org.asynchttpclient.ws.WebSocket;
-import org.asynchttpclient.ws.WebSocketTextListener;
+import org.asynchttpclient.ws.WebSocketListener;
 import org.asynchttpclient.ws.WebSocketUpgradeHandler;
 import org.junit.Before;
 import org.junit.Test;
@@ -52,29 +52,43 @@ public class WebsocketStaticTest extends CamelTestSupport {
 
         WebSocket websocket = c.prepareGet("ws://127.0.0.1:" + port + "/echo").execute(
             new WebSocketUpgradeHandler.Builder()
-                .addWebSocketListener(new WebSocketTextListener() {
-                    @Override
-                    public void onMessage(String message) {
-                        received.add(message);
-                        log.info("received --> " + message);
-                        latch.countDown();
-                    }
-
+                .addWebSocketListener(new WebSocketListener() {
                     @Override
                     public void onOpen(WebSocket websocket) {
                     }
 
                     @Override
-                    public void onClose(WebSocket websocket) {
+                    public void onClose(WebSocket websocket, int code, String reason) {
                     }
 
                     @Override
                     public void onError(Throwable t) {
                         t.printStackTrace();
                     }
+
+                    @Override
+                    public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+                    }
+
+                    @Override
+                    public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+                        received.add(payload);
+                        log.info("received --> " + payload);
+                        latch.countDown();
+                    }
+
+                    @Override
+                    public void onPingFrame(byte[] payload) {
+
+                    }
+
+                    @Override
+                    public void onPongFrame(byte[] payload) {
+
+                    }
                 }).build()).get();
 
-        websocket.sendMessage("Beer");
+        websocket.sendTextFrame("Beer");
         assertTrue(latch.await(10, TimeUnit.SECONDS));
 
         assertEquals(1, received.size());
@@ -90,7 +104,7 @@ public class WebsocketStaticTest extends CamelTestSupport {
         assertTrue(body.contains("Hello World"));
         c.close();
 
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesExampleTest.java
index bf76a63..7f57434 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesExampleTest.java
@@ -27,7 +27,7 @@ import org.apache.camel.test.junit4.CamelTestSupport;
 import org.asynchttpclient.AsyncHttpClient;
 import org.asynchttpclient.DefaultAsyncHttpClient;
 import org.asynchttpclient.ws.WebSocket;
-import org.asynchttpclient.ws.WebSocketTextListener;
+import org.asynchttpclient.ws.WebSocketListener;
 import org.asynchttpclient.ws.WebSocketUpgradeHandler;
 import org.junit.Before;
 import org.junit.Test;
@@ -56,35 +56,52 @@ public class WebsocketTwoRoutesExampleTest extends CamelTestSupport {
 
         WebSocket websocket = c.prepareGet("ws://localhost:" + port + "/bar").execute(
             new WebSocketUpgradeHandler.Builder()
-                .addWebSocketListener(new WebSocketTextListener() {
-                    @Override
-                    public void onMessage(String message) {
-                        received.add(message);
-                        log.info("received --> " + message);
-                        latch.countDown();
-                    }
+                .addWebSocketListener(new WebSocketListener() {
 
                     @Override
                     public void onOpen(WebSocket websocket) {
                     }
 
                     @Override
-                    public void onClose(WebSocket websocket) {
+                    public void onClose(WebSocket webSocket, int i, String s) {
+
                     }
 
                     @Override
                     public void onError(Throwable t) {
                         t.printStackTrace();
                     }
+
+                    @Override
+                    public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+
+                    }
+
+                    @Override
+                    public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+                        received.add(payload);
+                        log.info("received --> " + payload);
+                        latch.countDown();
+                    }
+
+                    @Override
+                    public void onPingFrame(byte[] payload) {
+
+                    }
+
+                    @Override
+                    public void onPongFrame(byte[] payload) {
+
+                    }
                 }).build()).get();
 
-        websocket.sendMessage("Beer");
+        websocket.sendTextFrame("Beer");
         assertTrue(latch.await(10, TimeUnit.SECONDS));
 
         assertEquals(1, received.size());
         assertEquals("The bar has Beer", received.get(0));
 
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
 
         // We call the route WebSocket PUB
@@ -95,36 +112,48 @@ public class WebsocketTwoRoutesExampleTest extends CamelTestSupport {
 
         websocket = c.prepareGet("ws://localhost:" + port + "/pub").execute(
                 new WebSocketUpgradeHandler.Builder()
-                        .addWebSocketListener(new WebSocketTextListener() {
-                            @Override
-                            public void onMessage(String message) {
-                                received.add(message);
-                                log.info("received --> " + message);
-                                latch.countDown();
-                            }
+                        .addWebSocketListener(new WebSocketListener() {
 
-                                
                             @Override
                             public void onOpen(WebSocket websocket) {
                             }
 
                             @Override
-                            public void onClose(WebSocket websocket) {
+                            public void onClose(WebSocket websocket, int code, String reason) {
                             }
 
                             @Override
                             public void onError(Throwable t) {
                                 t.printStackTrace();
                             }
+
+                            @Override
+                            public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+                            }
+
+                            @Override
+                            public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+                                received.add(payload);
+                                log.info("received --> " + payload);
+                                latch.countDown();
+                            }
+
+                            @Override
+                            public void onPingFrame(byte[] payload) {
+                            }
+
+                            @Override
+                            public void onPongFrame(byte[] payload) {
+                            }
                         }).build()).get();
 
-        websocket.sendMessage("wine");
+        websocket.sendTextFrame("wine");
         assertTrue(latch.await(10, TimeUnit.SECONDS));
 
         assertEquals(1, received.size());
         assertEquals("The pub has wine", received.get(0));
 
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesToSIndividualAndBroadcastEndpointExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesToSIndividualAndBroadcastEndpointExampleTest.java
index 17403ff..31baf3e 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesToSIndividualAndBroadcastEndpointExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesToSIndividualAndBroadcastEndpointExampleTest.java
@@ -27,7 +27,7 @@ import org.apache.camel.test.junit4.CamelTestSupport;
 import org.asynchttpclient.AsyncHttpClient;
 import org.asynchttpclient.DefaultAsyncHttpClient;
 import org.asynchttpclient.ws.WebSocket;
-import org.asynchttpclient.ws.WebSocketTextListener;
+import org.asynchttpclient.ws.WebSocketListener;
 import org.asynchttpclient.ws.WebSocketUpgradeHandler;
 import org.junit.Before;
 import org.junit.Test;
@@ -56,29 +56,45 @@ public class WebsocketTwoRoutesToSIndividualAndBroadcastEndpointExampleTest exte
 
         WebSocket websocket = c.prepareGet("ws://localhost:" + port + "/bar").execute(
                 new WebSocketUpgradeHandler.Builder()
-                        .addWebSocketListener(new WebSocketTextListener() {
-                            @Override
-                            public void onMessage(String message) {
-                                received.add(message);
-                                log.info("received --> " + message);
-                                latch.countDown();
-                            }
-
+                        .addWebSocketListener(new WebSocketListener() {
                             @Override
                             public void onOpen(WebSocket websocket) {
                             }
 
                             @Override
-                            public void onClose(WebSocket websocket) {
+                            public void onClose(WebSocket websocket, int code, String reason) {
+
                             }
 
                             @Override
                             public void onError(Throwable t) {
                                 t.printStackTrace();
                             }
+
+                            @Override
+                            public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+
+                            }
+
+                            @Override
+                            public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+                                received.add(payload);
+                                log.info("received --> " + payload);
+                                latch.countDown();
+                            }
+
+                            @Override
+                            public void onPingFrame(byte[] payload) {
+
+                            }
+
+                            @Override
+                            public void onPongFrame(byte[] payload) {
+
+                            }
                         }).build()).get();
 
-        websocket.sendMessage("Beer");
+        websocket.sendTextFrame("Beer");
         assertTrue(latch.await(10, TimeUnit.SECONDS));
 
         assertEquals(2, received.size());
@@ -87,7 +103,7 @@ public class WebsocketTwoRoutesToSIndividualAndBroadcastEndpointExampleTest exte
         assertTrue(received.contains("The bar has Beer"));
         assertTrue(received.contains("Broadcasting to Bar"));
 
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesToSameEndpointExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesToSameEndpointExampleTest.java
index 6d963bc..4ee02ef 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesToSameEndpointExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesToSameEndpointExampleTest.java
@@ -26,7 +26,7 @@ import org.apache.camel.test.AvailablePortFinder;
 import org.apache.camel.test.junit4.CamelTestSupport;
 import org.asynchttpclient.DefaultAsyncHttpClient;
 import org.asynchttpclient.ws.WebSocket;
-import org.asynchttpclient.ws.WebSocketTextListener;
+import org.asynchttpclient.ws.WebSocketListener;
 import org.asynchttpclient.ws.WebSocketUpgradeHandler;
 import org.junit.Before;
 import org.junit.Test;
@@ -55,29 +55,45 @@ public class WebsocketTwoRoutesToSameEndpointExampleTest extends CamelTestSuppor
 
         WebSocket websocket = c.prepareGet("ws://localhost:" + port + "/bar").execute(
                 new WebSocketUpgradeHandler.Builder()
-                        .addWebSocketListener(new WebSocketTextListener() {
-                            @Override
-                            public void onMessage(String message) {
-                                received.add(message);
-                                log.info("received --> " + message);
-                                latch.countDown();
-                            }
+                        .addWebSocketListener(new WebSocketListener() {
 
                             @Override
                             public void onOpen(WebSocket websocket) {
                             }
 
                             @Override
-                            public void onClose(WebSocket websocket) {
+                            public void onClose(WebSocket websocket, int code, String reason) {
                             }
 
                             @Override
                             public void onError(Throwable t) {
                                 t.printStackTrace();
                             }
+
+                            @Override
+                            public void onBinaryFrame(byte[] payload, boolean finalFragment, int rsv) {
+
+                            }
+
+                            @Override
+                            public void onTextFrame(String payload, boolean finalFragment, int rsv) {
+                                received.add(payload);
+                                log.info("received --> " + payload);
+                                latch.countDown();
+                            }
+
+                            @Override
+                            public void onPingFrame(byte[] payload) {
+
+                            }
+
+                            @Override
+                            public void onPongFrame(byte[] payload) {
+
+                            }
                         }).build()).get();
 
-        websocket.sendMessage("Beer");
+        websocket.sendTextFrame("Beer");
         assertTrue(latch.await(10, TimeUnit.SECONDS));
 
         assertEquals(2, received.size());
@@ -86,7 +102,7 @@ public class WebsocketTwoRoutesToSameEndpointExampleTest extends CamelTestSuppor
         assertTrue(received.contains("The bar has Beer"));
         assertTrue(received.contains("Broadcasting to Bar"));
 
-        websocket.close();
+        websocket.sendCloseFrame();
         c.close();
     }