io.vertx.core.eventbus.Message.body()方法的使用及代码示例

x33g5p2x  于2022-01-24 转载在 其他  
字(8.0k)|赞(0)|评价(0)|浏览(163)

本文整理了Java中io.vertx.core.eventbus.Message.body()方法的一些代码示例,展示了Message.body()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Message.body()方法的具体详情如下:
包路径:io.vertx.core.eventbus.Message
类名称:Message
方法名:body

Message.body介绍

[英]The body of the message. Can be null.
[中]信息的主体。可以为空。

代码示例

代码示例来源:origin: vert-x3/vertx-examples

  1. @Override
  2. public void start() throws Exception {
  3. EventBus eb = vertx.eventBus();
  4. eb.consumer("news-feed", message -> System.out.println("Received news on consumer 1: " + message.body()));
  5. eb.consumer("news-feed", message -> System.out.println("Received news on consumer 2: " + message.body()));
  6. eb.consumer("news-feed", message -> System.out.println("Received news on consumer 3: " + message.body()));
  7. System.out.println("Ready!");
  8. }
  9. }

代码示例来源:origin: eclipse-vertx/vert.x

  1. @Test
  2. public void testPauseFetchMessageStream() throws Exception {
  3. testPauseFetch((consumer, handler) -> consumer.handler(message -> handler.handle(message.body())));
  4. }

代码示例来源:origin: eclipse-vertx/vert.x

  1. @Test
  2. public void testChangesNotVisibleObject1() {
  3. JsonObject obj = new JsonObject();
  4. eb.<JsonObject>consumer("foo").handler((Message<JsonObject> msg) -> {
  5. assertFalse(msg.body().containsKey("b"));
  6. testComplete();
  7. });
  8. eb.send("foo", obj);
  9. obj.put("b", "blurrgg");
  10. await();
  11. }

代码示例来源:origin: eclipse-vertx/vert.x

  1. @Test
  2. public void testChangesNotVisibleObject3() {
  3. Map<String, Object> map = new HashMap<>();
  4. final JsonObject obj = new JsonObject(map);
  5. eb.<JsonObject>consumer("foo").handler((Message<JsonObject> msg) -> {
  6. vertx.setTimer(1000, id -> {
  7. assertFalse(msg.body().containsKey("b"));
  8. testComplete();
  9. });
  10. });
  11. eb.send("foo", obj);
  12. map.put("b", "uhqdihuqwd");
  13. await();
  14. }

代码示例来源:origin: eclipse-vertx/vert.x

  1. @Test
  2. public void testExceptionWhenDeliveringBufferedMessageWithMessageStream() {
  3. testExceptionWhenDeliveringBufferedMessage((consumer, handler) -> consumer.handler(message -> handler.handle(message.body())));
  4. }

代码示例来源:origin: vert-x3/vertx-examples

  1. @Override
  2. public void start() throws Exception {
  3. vertx.eventBus().consumer("news", message -> {
  4. System.out.println(">> " + message.body());
  5. });
  6. }
  7. }

代码示例来源:origin: eclipse-vertx/vert.x

  1. @Test
  2. public void testSender() {
  3. String str = TestUtils.randomUnicodeString(100);
  4. WriteStream<String> sender = eb.sender(ADDRESS1);
  5. eb.consumer(ADDRESS1).handler(message -> {
  6. if (message.body().equals(str)) {
  7. testComplete();
  8. }
  9. });
  10. sender.write(str);
  11. await();
  12. }

代码示例来源:origin: eclipse-vertx/vert.x

  1. @Test
  2. public void testPauseResumeMessageStream() {
  3. testPauseResume((consumer, handler) -> consumer.handler(message -> handler.handle(message.body())));
  4. }

代码示例来源:origin: vert-x3/vertx-examples

  1. @Override
  2. public void start() throws Exception {
  3. System.out.println("[Worker] Starting in " + Thread.currentThread().getName());
  4. vertx.eventBus().<String>consumer("sample.data", message -> {
  5. System.out.println("[Worker] Consuming data in " + Thread.currentThread().getName());
  6. String body = message.body();
  7. message.reply(body.toUpperCase());
  8. });
  9. }
  10. }

代码示例来源:origin: eclipse-vertx/vert.x

  1. @Test
  2. public void testChangesNotVisibleArray3() {
  3. List<Object> list = new ArrayList<>();
  4. final JsonArray obj = new JsonArray(list);
  5. eb.<JsonArray>consumer("foo").handler((Message<JsonArray> msg) -> {
  6. vertx.setTimer(1000, id -> {
  7. assertEquals(0, msg.body().size());
  8. testComplete();
  9. });
  10. });
  11. eb.send("foo", obj);
  12. list.add("uhwqdiuh");
  13. await();
  14. }
  15. }

代码示例来源:origin: eclipse-vertx/vert.x

  1. @Test
  2. public void testRegisterLocal2() {
  3. String str = TestUtils.randomUnicodeString(100);
  4. eb.localConsumer(ADDRESS1, (Message<String> msg) -> {
  5. assertEquals(str, msg.body());
  6. testComplete();
  7. }).completionHandler(ar -> {
  8. assertTrue(ar.succeeded());
  9. eb.send(ADDRESS1, str);
  10. });
  11. await();
  12. }

代码示例来源:origin: vert-x3/vertx-examples

  1. @Override
  2. public void start() throws Exception {
  3. EventBus eb = vertx.eventBus();
  4. eb.consumer("ping-address", message -> {
  5. System.out.println("Received message: " + message.body());
  6. // Now send back reply
  7. message.reply("pong!");
  8. });
  9. System.out.println("Receiver ready!");
  10. }
  11. }

代码示例来源:origin: eclipse-vertx/vert.x

  1. @Test
  2. public void testPublishSameHandlerRegisteredTwice() {
  3. String str = TestUtils.randomUnicodeString(1000);
  4. AtomicInteger count = new AtomicInteger();
  5. Handler<Message<String>> handler = (Message<String> msg) -> {
  6. assertEquals(str, msg.body());
  7. if (count.incrementAndGet() == 2) {
  8. testComplete();
  9. }
  10. };
  11. eb.<String>consumer(ADDRESS1).handler(handler);
  12. eb.<String>consumer(ADDRESS1).handler(handler);
  13. eb.publish(ADDRESS1, str);
  14. await();
  15. }

代码示例来源:origin: eclipse-vertx/vert.x

  1. @Test
  2. public void testRegisterLocal1() {
  3. String str = TestUtils.randomUnicodeString(100);
  4. eb.<String>localConsumer(ADDRESS1).handler((Message<String> msg) -> {
  5. assertEquals(str, msg.body());
  6. testComplete();
  7. }).completionHandler(ar -> {
  8. assertTrue(ar.succeeded());
  9. eb.send(ADDRESS1, str);
  10. });
  11. await();
  12. }

代码示例来源:origin: eclipse-vertx/vert.x

  1. public MessageProducerImpl(Vertx vertx, String address, boolean send, DeliveryOptions options) {
  2. this.vertx = vertx;
  3. this.bus = vertx.eventBus();
  4. this.address = address;
  5. this.send = send;
  6. this.options = options;
  7. if (send) {
  8. String creditAddress = UUID.randomUUID().toString() + "-credit";
  9. creditConsumer = bus.consumer(creditAddress, msg -> {
  10. doReceiveCredit(msg.body());
  11. });
  12. options.addHeader(CREDIT_ADDRESS_HEADER_NAME, creditAddress);
  13. } else {
  14. creditConsumer = null;
  15. }
  16. }

代码示例来源:origin: eclipse-vertx/vert.x

  1. @Test
  2. public void testPublishMultipleHandlers() {
  3. String str = TestUtils.randomUnicodeString(100);
  4. AtomicInteger count = new AtomicInteger();
  5. eb.<String>consumer(ADDRESS1).handler((Message<String> msg) -> {
  6. assertEquals(str, msg.body());
  7. if (count.incrementAndGet() == 2) {
  8. testComplete();
  9. }
  10. });
  11. eb.<String>consumer(ADDRESS1).handler((Message<String> msg) -> {
  12. assertEquals(str, msg.body());
  13. if (count.incrementAndGet() == 2) {
  14. testComplete();
  15. }
  16. });
  17. eb.publish(ADDRESS1, str);
  18. await();
  19. }

代码示例来源:origin: eclipse-vertx/vert.x

  1. @Test
  2. public void testReplyFromWorker() throws Exception {
  3. String expectedBody = TestUtils.randomAlphaString(20);
  4. startNodes(2);
  5. CountDownLatch latch = new CountDownLatch(1);
  6. vertices[0].deployVerticle(new AbstractVerticle() {
  7. @Override
  8. public void start() throws Exception {
  9. vertices[1].eventBus().<String>consumer(ADDRESS1, msg -> {
  10. msg.reply(expectedBody);
  11. }).completionHandler(ar -> {
  12. assertTrue(ar.succeeded());
  13. latch.countDown();
  14. });
  15. }
  16. }, new DeploymentOptions().setWorker(true));
  17. awaitLatch(latch);
  18. vertices[0].eventBus().send(ADDRESS1, "whatever", reply -> {
  19. assertTrue(reply.succeeded());
  20. assertEquals(expectedBody, reply.result().body());
  21. testComplete();
  22. });
  23. await();
  24. }

代码示例来源:origin: vert-x3/vertx-examples

  1. @Override
  2. public void start() throws Exception {
  3. EventBus eb = vertx.eventBus();
  4. eb.consumer("ping-address", message -> {
  5. System.out.println("Received message: " + message.body());
  6. // Now send back reply
  7. message.reply("pong!");
  8. });
  9. System.out.println("Receiver ready!");
  10. }
  11. }

代码示例来源:origin: eclipse-vertx/vert.x

  1. @Test
  2. public void testGetInstanceCountMultipleVerticles() throws Exception {
  3. AtomicInteger messageCount = new AtomicInteger(0);
  4. AtomicInteger totalReportedInstances = new AtomicInteger(0);
  5. vertx.eventBus().consumer("instanceCount", event -> {
  6. messageCount.incrementAndGet();
  7. totalReportedInstances.addAndGet((int)event.body());
  8. if(messageCount.intValue() == 3) {
  9. assertEquals(9, totalReportedInstances.get());
  10. testComplete();
  11. }
  12. });
  13. vertx.deployVerticle(TestVerticle3.class.getCanonicalName(), new DeploymentOptions().setInstances(3), ar -> {
  14. assertTrue(ar.succeeded());
  15. });
  16. await();
  17. Deployment deployment = ((VertxInternal) vertx).getDeployment(vertx.deploymentIDs().iterator().next());
  18. CountDownLatch latch = new CountDownLatch(1);
  19. vertx.undeploy(deployment.deploymentID(), ar -> latch.countDown());
  20. awaitLatch(latch);
  21. }

代码示例来源:origin: vert-x3/vertx-examples

  1. @Override
  2. public void start() {
  3. vertx.eventBus().<String>consumer("request", message -> message.reply("hello " + message.body()));
  4. vertx.createHttpServer()
  5. .requestHandler(request -> request.response().end("OK"))
  6. .listen(8080);
  7. }
  8. }

相关文章