@Override public void sendText(String message) { vertxWebSocket.writeFinalTextFrame(message); }
@Test public void testUnmaskedFrameRequest(){ client = vertx.createHttpClient(new HttpClientOptions().setSendUnmaskedFrames(true)); server = vertx.createHttpServer(new HttpServerOptions().setPort(DEFAULT_HTTP_PORT).setAcceptUnmaskedFrames(true)); server.requestHandler(req -> { req.response().setChunked(true).write("connect"); }); server.websocketHandler(ws -> { ws.handler(new Handler<Buffer>() { public void handle(Buffer data) { assertEquals(data.toString(), "first unmasked frame"); testComplete(); } }); }); server.listen(onSuccess(server -> { client.websocket(DEFAULT_HTTP_PORT, HttpTestBase.DEFAULT_HTTP_HOST, "/", ws -> { ws.writeFinalTextFrame("first unmasked frame"); }); })); await(); }
@Test public void testInvalidUnmaskedFrameRequest(){ client = vertx.createHttpClient(new HttpClientOptions().setSendUnmaskedFrames(true)); server = vertx.createHttpServer(new HttpServerOptions().setPort(DEFAULT_HTTP_PORT)); server.requestHandler(req -> { req.response().setChunked(true).write("connect"); }); server.websocketHandler(ws -> { ws.exceptionHandler(exception -> { testComplete(); }); ws.handler(result -> { fail("Cannot decode unmasked message because I require masked frame as configured"); }); }); server.listen(onSuccess(server -> { client.websocket(DEFAULT_HTTP_PORT, HttpTestBase.DEFAULT_HTTP_HOST, "/", ws -> { ws.writeFinalTextFrame("first unmasked frame"); }); })); await(); }
ws.writeFinalBinaryFrame(data); } else { ws.writeFinalTextFrame(text);
@Override public void sendText(String message) { vertxWebSocket.writeFinalTextFrame(message); }
public io.vertx.rxjava.core.http.WebSocket writeFinalTextFrame(String text) { delegate.writeFinalTextFrame(text); return this; }
public io.vertx.rxjava.core.http.WebSocket writeFinalTextFrame(String text) { delegate.writeFinalTextFrame(text); return this; }
@Test public void testUnmaskedFrameRequest(){ client = vertx.createHttpClient(new HttpClientOptions().setSendUnmaskedFrames(true)); server = vertx.createHttpServer(new HttpServerOptions().setPort(DEFAULT_HTTP_PORT).setAcceptUnmaskedFrames(true)); server.requestHandler(req -> { req.response().setChunked(true).write("connect"); }); server.websocketHandler(ws -> { ws.handler(new Handler<Buffer>() { public void handle(Buffer data) { assertEquals(data.toString(), "first unmasked frame"); testComplete(); } }); }); server.listen(onSuccess(server -> { client.websocket(DEFAULT_HTTP_PORT, HttpTestBase.DEFAULT_HTTP_HOST, "/", ws -> { ws.writeFinalTextFrame("first unmasked frame"); }); })); await(); }
@Test public void testInvalidUnmaskedFrameRequest(){ client = vertx.createHttpClient(new HttpClientOptions().setSendUnmaskedFrames(true)); server = vertx.createHttpServer(new HttpServerOptions().setPort(DEFAULT_HTTP_PORT)); server.requestHandler(req -> { req.response().setChunked(true).write("connect"); }); server.websocketHandler(ws -> { ws.exceptionHandler(exception -> { testComplete(); }); ws.handler(result -> { fail("Cannot decode unmasked message because I require masked frame as configured"); }); }); server.listen(onSuccess(server -> { client.websocket(DEFAULT_HTTP_PORT, HttpTestBase.DEFAULT_HTTP_HOST, "/", ws -> { ws.writeFinalTextFrame("first unmasked frame"); }); })); await(); }
public static CompletableFuture<Void> latchForEvent(MeshRestClient client, String event) throws Exception { // Construct latch in order to wait until the migration completed event was received CompletableFuture<Void> latch = new CompletableFuture<>(); CountDownLatch registerLatch = new CountDownLatch(1); client.eventbus(ws -> { // Register to events JsonObject msg = new JsonObject().put("type", "register").put("address", event); ws.writeFinalTextFrame(msg.encode()); // Handle the event ws.handler(buff -> { latch.complete(null); }); registerLatch.countDown(); }); failingLatch(registerLatch); return latch; }
ws.writeFinalBinaryFrame(data); } else { ws.writeFinalTextFrame(text);
/** * Construct a latch which will release when the migration has finished. * * @return * @throws Exception */ public static CountDownLatch latchForMigrationCompleted(MeshRestClient client) throws Exception { // Construct latch in order to wait until the migration completed event was received CountDownLatch latch = new CountDownLatch(1); CountDownLatch registerLatch = new CountDownLatch(1); client.eventbus(ws -> { // Register to migration events JsonObject msg = new JsonObject().put("type", "register").put("address", MESH_MIGRATION); ws.writeFinalTextFrame(msg.encode()); // Handle migration events ws.handler(buff -> { String str = buff.toString(); JsonObject received = new JsonObject(str); JsonObject rec = received.getJsonObject("body"); log.debug("Migration event:" + rec.getString("type")); if ("completed".equalsIgnoreCase(rec.getString("type"))) { latch.countDown(); } }); registerLatch.countDown(); }); failingLatch(registerLatch); return latch; }
@Test public void testServerRead(TestContext context) { Async async = context.async(); server = createServer(context, new HttpTermOptions().setPort(8080)); server.termHandler(term -> { term.stdinHandler(buf -> { context.assertEquals("hello_from_client", buf); async.complete(); }); }); server.listen(context.asyncAssertSuccess(server -> { HttpClient client = vertx.createHttpClient(); client.websocket(8080, "localhost", basePath + "/shell/websocket", ws -> { ws.writeFinalTextFrame(new JsonObject().put("action", "read").put("data", "hello_from_client").encode()); }, context::fail); })); }
@Test public void testResizeInvalid(TestContext context) { Async async = context.async(); server = createServer(context, new HttpTermOptions().setPort(8080));; server.termHandler(term -> { term.resizehandler(v -> { context.fail(); }); }); server.listen(context.asyncAssertSuccess(server -> { HttpClient client = vertx.createHttpClient(); client.websocket(8080, "localhost", basePath + "/shell/websocket", ws -> { ws.writeFinalTextFrame(new JsonObject().put("action", "resize").put("cols", -50).encode()); vertx.setTimer(1000, id -> { async.complete(); }); }, context::fail); })); }
private void testResize(TestContext context, JsonObject event, int expectedCols, int expectedRows) { Async async = context.async(); server = createServer(context, new HttpTermOptions().setPort(8080));; server.termHandler(term -> { term.resizehandler(v -> { context.assertEquals(expectedCols, term.width()); context.assertEquals(expectedRows, term.height()); async.complete(); }); }); server.listen(context.asyncAssertSuccess(server -> { HttpClient client = vertx.createHttpClient(); client.websocket(8080, "localhost", basePath + "/shell/websocket", ws -> { ws.writeFinalTextFrame(event.encode()); }, context::fail); })); }