List of usage examples for io.vertx.core.eventbus Message reply
default void reply(@Nullable Object message)
From source file:de.notizwerk.Consumer.java
License:Open Source License
@Override public void start(Future<Void> startFuture) throws Exception { setUpFileSystem(v -> {/* ww w .j a va2 s.com*/ vertx.eventBus().consumer("consumer", (Message<JsonObject> msg) -> { messagesInTick++; receivedMessages++; file.write(Buffer.buffer(msg.body().encode())); msg.reply("ok"); }); vertx.setPeriodic(REPORT_DELAY_IN_MSEC, (id) -> { long messageRate = Math.floorDiv(messagesInTick * 1000, REPORT_DELAY_IN_MSEC); messagesInTick = 0; JsonObject stats = new JsonObject().put("name", name).put("id", name) .put("timestamp", AppStarter.TIME_FORMATTER.format(ZonedDateTime.now())) .put("messageRate", messageRate).put("receivedMessages", receivedMessages); file.write(Buffer.buffer(stats.encode() + String.format("%n"))); vertx.eventBus().publish("consumer.stats", stats); }); startFuture.complete(); }); }
From source file:fr.pjthin.vertx.client.UserDaoVertxProxyHandler.java
License:Apache License
public void handle(Message<JsonObject> msg) { try {//from w w w . j av a 2s.co m JsonObject json = msg.body(); String action = msg.headers().get("action"); if (action == null) { throw new IllegalStateException("action not specified"); } accessed(); switch (action) { case "save": { service.save( json.getJsonObject("newUser") == null ? null : new fr.pjthin.vertx.client.data.User(json.getJsonObject("newUser")), createHandler(msg)); break; } case "findAll": { service.findAll(res -> { if (res.failed()) { msg.fail(-1, res.cause().getMessage()); } else { msg.reply(new JsonArray( res.result().stream().map(User::toJson).collect(Collectors.toList()))); } }); break; } case "findUserByLogin": { service.findUserByLogin((java.lang.String) json.getValue("login"), res -> { if (res.failed()) { msg.fail(-1, res.cause().getMessage()); } else { msg.reply(res.result() == null ? null : res.result().toJson()); } }); break; } case "deleteByLogin": { service.deleteByLogin((java.lang.String) json.getValue("login"), createHandler(msg)); break; } case "close": { service.close(); close(); break; } default: { throw new IllegalStateException("Invalid action: " + action); } } } catch (Throwable t) { msg.fail(-1, t.getMessage()); throw t; } }
From source file:fr.wseduc.pages.controllers.PagesController.java
License:Open Source License
@BusAddress("pages") public void busApi(Message<JsonObject> message) { String action = message.body().getString("action", ""); final String pageId = message.body().getString("pageId"); switch (action) { case "create": UserInfos user = UserUtils.sessionToUserInfos(message.body().getJsonObject("user")); JsonObject page = message.body().getJsonObject("page"); crudService.create(page, user, busResponseHandler(message)); break;/*from ww w . j a v a2 s. c om*/ case "share": String userId = message.body().getString("userId"); String groupId = message.body().getString("groupId"); List<String> actions = message.body().getJsonArray("actions").getList(); shareService.groupShare(userId, groupId, pageId, actions, busResponseHandler(message)); break; case "delete": crudService.delete(pageId, busResponseHandler(message)); break; case "get": crudService.retrieve(pageId, busResponseHandler(message)); break; case "update": crudService.update(pageId, message.body().getJsonObject("page"), busResponseHandler(message)); break; default: message.reply(new JsonObject().put("status", "error").put("message", "invalid.action")); } }
From source file:fr.wseduc.smsproxy.providers.ovh.OVHSmsProvider.java
License:Apache License
@Override public void sendSms(final Message<JsonObject> message) { final JsonObject parameters = message.body().getJsonObject("parameters"); logger.debug("[OVH][sendSms] Called with parameters : " + parameters); final Handler<HttpClientResponse> resultHandler = new Handler<HttpClientResponse>() { public void handle(HttpClientResponse response) { if (response == null) { sendError(message, "ovh.apicall.error", null); } else { response.bodyHandler(new Handler<Buffer>() { public void handle(Buffer body) { final JsonObject response = new JsonObject(body.toString()); final JsonArray invalidReceivers = response.getJsonArray("invalidReceivers", new JsonArray()); final JsonArray validReceivers = response.getJsonArray("validReceivers", new JsonArray()); if (validReceivers.size() == 0) { sendError(message, "invalid.receivers.all", null, new JsonObject(body.toString())); } else if (invalidReceivers.size() > 0) { sendError(message, "invalid.receivers.partial", null, new JsonObject(body.toString())); } else { message.reply(response); }//from w w w . j av a2s . c om } }); } } }; Handler<String> serviceCallback = new Handler<String>() { public void handle(String service) { if (service == null) { sendError(message, "ovh.apicall.error", null); } else { ovhRestClient.post("/sms/" + service + "/jobs/", parameters, resultHandler); } } }; retrieveSmsService(message, serviceCallback); }
From source file:fr.wseduc.smsproxy.providers.ovh.OVHSmsProvider.java
License:Apache License
@Override public void getInfo(final Message<JsonObject> message) { final JsonObject parameters = message.body().getJsonObject("parameters"); logger.debug("[OVH][getInfo] Called with parameters : " + parameters); retrieveSmsService(message, new Handler<String>() { public void handle(String service) { if (service == null) { sendError(message, "ovh.apicall.error", null); } else { ovhRestClient.get("/sms/" + service, parameters, new Handler<HttpClientResponse>() { public void handle(HttpClientResponse response) { if (response == null) { sendError(message, "ovh.apicall.error", null); return; }//from w ww . j a v a 2s . c o m response.bodyHandler(new Handler<Buffer>() { public void handle(Buffer body) { final JsonObject response = new JsonObject(body.toString()); message.reply(response); } }); } }); } } }); }
From source file:fr.wseduc.smsproxy.providers.SmsProvider.java
License:Apache License
/** * Error management method, sends back a message containing the error details on the bus. * @param message : Original message//ww w. j ava 2 s .com * @param error : Error message * @param e : Exception thrown * @param data : Additional data */ protected void sendError(Message<JsonObject> message, String error, Exception e, JsonObject data) { logger.error(error, e); JsonObject json = new JsonObject().put("status", "error").put("message", error).put("data", data); message.reply(json); }
From source file:io.engagingspaces.graphql.query.QueryableVertxProxyHandler.java
License:Apache License
public void handle(Message<JsonObject> msg) { try {/*from w w w . j a v a2 s . co m*/ JsonObject json = msg.body(); String action = msg.headers().get("action"); if (action == null) { throw new IllegalStateException("action not specified"); } accessed(); switch (action) { case "query": { service.query((java.lang.String) json.getValue("graphqlQuery"), res -> { if (res.failed()) { if (res.cause() instanceof ServiceException) { msg.reply(res.cause()); } else { msg.reply(new ServiceException(-1, res.cause().getMessage())); } } else { msg.reply(res.result() == null ? null : res.result().toJson()); } }); break; } case "queryWithVariables": { service.queryWithVariables((java.lang.String) json.getValue("graphqlQuery"), (io.vertx.core.json.JsonObject) json.getValue("variables"), res -> { if (res.failed()) { if (res.cause() instanceof ServiceException) { msg.reply(res.cause()); } else { msg.reply(new ServiceException(-1, res.cause().getMessage())); } } else { msg.reply(res.result() == null ? null : res.result().toJson()); } }); break; } case "resolveType": { service.resolveType((java.lang.String) json.getValue("typeResolverId"), (io.vertx.core.json.JsonObject) json.getValue("typeHolder"), createHandler(msg)); break; } case "fetchData": { service.fetchData((java.lang.String) json.getValue("dataFetcherId"), (io.vertx.core.json.JsonObject) json.getValue("dataFetchingEnvironment"), createHandler(msg)); break; } case "close": { service.close(); close(); break; } default: { throw new IllegalStateException("Invalid action: " + action); } } } catch (Throwable t) { msg.reply(new ServiceException(500, t.getMessage())); throw t; } }
From source file:io.github.jdocker.serviceregistry.ServiceRegistry.java
License:Apache License
private void findEndpointEndReply(String endpointName, Message<String> message, SharedData sd) { LocalMap<String, String> map1 = sd.getLocalMap(REG_NAME); final String endpointValue = map1.get(endpointName); // TODO should we define any timeouts or anything else? message.reply(endpointValue); }
From source file:io.github.jdocker.serviceregistry.ServiceRegistry.java
License:Apache License
private void findEndpointInClusteredMapAndReply(String endpointName, Message<String> message, SharedData sd) { sd.<String, String>getClusterWideMap(REG_NAME, res -> { if (res.succeeded()) { AsyncMap<String, String> map = res.result(); map.get(endpointName, result -> { if (result.succeeded()) { final String endpointValue = result.result(); // TODO should we define any timeouts or anything else? message.reply(endpointValue); }// w w w .j a v a 2 s. c o m }); } else { // Something went wrong! } }); }
From source file:io.github.pflima92.plyshare.common.configuration.ConfigurationProviderVertxProxyHandler.java
License:Apache License
public void handle(Message<JsonObject> msg) { try {// w ww. java2 s. c o m JsonObject json = msg.body(); String action = msg.headers().get("action"); if (action == null) { throw new IllegalStateException("action not specified"); } accessed(); switch (action) { case "getConfiguration": { service.getConfiguration((java.lang.String) json.getValue("name"), createHandler(msg)); break; } default: { throw new IllegalStateException("Invalid action: " + action); } } } catch (Throwable t) { msg.reply(new ServiceException(500, t.getMessage())); throw t; } }