List of usage examples for io.vertx.core.eventbus Message body
@CacheReturn T body();
From source file:org.entcore.feeder.ManualFeeder.java
License:Open Source License
public void updateUser(final Message<JsonObject> message) { final JsonObject user = getMandatoryObject("data", message); if (user == null) return;/*from w ww . j a va 2s . c o m*/ final String userId = getMandatoryString("userId", message); if (userId == null) return; String q = "MATCH (u:User { id : {userId}})-[:IN]->(pg:ProfileGroup)-[:HAS_PROFILE]->(p:Profile) " + "RETURN DISTINCT p.name as profile "; neo4j.execute(q, new JsonObject().put("userId", userId), new Handler<Message<JsonObject>>() { @Override public void handle(Message<JsonObject> r) { JsonArray res = r.body().getJsonArray("result"); if ("ok".equals(r.body().getString("status")) && res != null && res.size() > 0) { for (Object o : res) { if (!(o instanceof JsonObject)) continue; String profile = ((JsonObject) o).getString("profile"); Validator v = profiles.get(profile); if (v == null) { sendError(message, "Invalid profile : " + profile); return; } final String error = v.modifiableValidate(user); if (error != null) { logger.error(error); sendError(message, error); return; } } String query = "MATCH (u:User { id : {userId}}) " + "SET " + Neo4jUtils.nodeSetPropertiesFromJson("u", user) + "RETURN DISTINCT u.id as id "; JsonObject params = user.put("userId", userId); neo4j.execute(query, params, new Handler<Message<JsonObject>>() { @Override public void handle(Message<JsonObject> m) { message.reply(m.body()); } }); } else { sendError(message, "Invalid profile."); } } }); }
From source file:org.entcore.feeder.ManualFeeder.java
License:Open Source License
public void deleteUser(final Message<JsonObject> message) { final JsonArray users = message.body().getJsonArray("users"); if (users == null || users.size() == 0) { sendError(message, "Missing users."); return;//from www. j a va 2s . c om } String query = "MATCH (u:User)" + "WHERE u.id IN {users} AND (u.source IN ['MANUAL', 'CSV', 'CLASS_PARAM', 'BE1D'] OR HAS(u.disappearanceDate)) " + "return count(*) as count "; neo4j.execute(query, new JsonObject().put("users", users), new Handler<Message<JsonObject>>() { @Override public void handle(Message<JsonObject> event) { JsonArray res = event.body().getJsonArray("result"); if ("ok".equals(event.body().getString("status")) && res != null && res.size() == 1) { JsonObject j = res.getJsonObject(0); if (users.size() == j.getInteger("count", 0)) { executeTransaction(message, new VoidFunction<TransactionHelper>() { @Override public void apply(TransactionHelper tx) { for (Object o : users) { User.backupRelationship(o.toString(), tx); User.preDelete(o.toString(), tx); } } }); } else { sendError(message, "unauthorized.user"); } } else { message.reply(event.body()); } } }); }
From source file:org.entcore.feeder.ManualFeeder.java
License:Open Source License
public void restoreUser(final Message<JsonObject> message) { final JsonArray users = message.body().getJsonArray("users"); if (users == null || users.size() == 0) { sendError(message, "Missing users."); return;//from www . java 2s . c om } executeTransaction(message, new VoidFunction<TransactionHelper>() { @Override public void apply(TransactionHelper tx) { for (Object o : users) { User.restorePreDeleted(o.toString(), tx); } } }); }
From source file:org.entcore.feeder.ManualFeeder.java
License:Open Source License
public void createFunction(final Message<JsonObject> message) { final JsonObject function = getMandatoryObject("data", message); if (function == null) return;//from w w w . j a va 2 s . c om final String profile = message.body().getString("profile", ""); if (!profiles.containsKey(profile)) { sendError(message, "Invalid profile : " + profile); return; } executeTransaction(message, new VoidFunction<TransactionHelper>() { @Override public void apply(TransactionHelper tx) { Profile.createFunction(profile, null, function, tx); } }); }
From source file:org.entcore.feeder.ManualFeeder.java
License:Open Source License
private void executeTransaction(final Message<JsonObject> message, VoidFunction<TransactionHelper> f) { TransactionHelper tx;/* ww w .ja va 2s. com*/ try { tx = TransactionManager.getInstance().begin(); f.apply(tx); tx.commit(new Handler<Message<JsonObject>>() { @Override public void handle(Message<JsonObject> event) { message.reply(event.body()); } }); } catch (TransactionException | ValidationException e) { sendError(message, e.getMessage(), e); } }
From source file:org.entcore.feeder.ManualFeeder.java
License:Open Source License
public void createFunctionGroup(Message<JsonObject> message) { final JsonArray functions = message.body().getJsonArray("functions"); if (functions == null || functions.size() == 0) { sendError(message, "missing.functions"); return;/*from w w w .j a v a 2 s. c o m*/ } final String name = message.body().getString("name"); if (name == null || name.trim().isEmpty()) { sendError(message, "missing.name"); return; } final String externalId = message.body().getString("externalId"); if (externalId == null || externalId.trim().isEmpty()) { sendError(message, "missing.externalId"); return; } executeTransaction(message, new VoidFunction<TransactionHelper>() { @Override public void apply(TransactionHelper tx) { Profile.createFunctionGroup(functions, name, externalId, tx); } }); }
From source file:org.entcore.feeder.ManualFeeder.java
License:Open Source License
public void addUserFunction(final Message<JsonObject> message) { final String userId = getMandatoryString("userId", message); final String function = message.body().getString("function"); if (userId == null || function == null) return;/*w w w . j a v a 2 s . com*/ final JsonArray scope = message.body().getJsonArray("scope"); String inherit = message.body().getString("inherit", ""); if (scope != null && ("s".equals(inherit) || "sc".equals(inherit))) { String query; if ("sc".equals(inherit)) { query = "MATCH (s:Structure)<-[:HAS_ATTACHMENT*0..]-(:Structure)<-[:BELONGS*0..1]-(scope) " + "WHERE s.id IN {scope} " + "RETURN COLLECT(scope.id) as ids "; } else { query = "MATCH (s:Structure)<-[:HAS_ATTACHMENT*0..]-(scope:Structure) " + "WHERE s.id IN {scope} " + "RETURN COLLECT(scope.id) as ids "; } neo4j.execute(query, new JsonObject().put("scope", scope), new Handler<Message<JsonObject>>() { @Override public void handle(Message<JsonObject> event) { JsonArray result = event.body().getJsonArray("result"); if ("ok".equals(event.body().getString("status")) && result != null && result.size() == 1) { final JsonArray s = result.getJsonObject(0).getJsonArray("ids"); executeTransaction(message, new VoidFunction<TransactionHelper>() { @Override public void apply(TransactionHelper tx) { User.addFunction(userId, function, s, tx); } }); } else { sendError(message, "invalid.scope"); } } }); } else { executeTransaction(message, new VoidFunction<TransactionHelper>() { @Override public void apply(TransactionHelper tx) { User.addFunction(userId, function, scope, tx); } }); } }
From source file:org.entcore.feeder.ManualFeeder.java
License:Open Source License
public void addUserHeadTeacherManual(final Message<JsonObject> message) { final String userId = getMandatoryString("userId", message); final String classExternalId = message.body().getString("classExternalId"); final String structureExternalId = message.body().getString("structureExternalId"); if (userId == null || classExternalId == null || structureExternalId == null) return;/*from w w w . jav a 2 s. c o m*/ executeTransaction(message, new VoidFunction<TransactionHelper>() { @Override public void apply(TransactionHelper tx) { User.addHeadTeacherManual(userId, structureExternalId, classExternalId, tx); } }); }
From source file:org.entcore.feeder.ManualFeeder.java
License:Open Source License
public void updateUserHeadTeacherManual(final Message<JsonObject> message) { final String userId = getMandatoryString("userId", message); final String classExternalId = message.body().getString("classExternalId"); final String structureExternalId = message.body().getString("structureExternalId"); if (userId == null || classExternalId == null || structureExternalId == null) return;/*from w w w .j av a 2 s . c o m*/ executeTransaction(message, new VoidFunction<TransactionHelper>() { @Override public void apply(TransactionHelper tx) { User.updateHeadTeacherManual(userId, structureExternalId, classExternalId, tx); } }); }
From source file:org.entcore.feeder.ManualFeeder.java
License:Open Source License
public void removeUserFunction(Message<JsonObject> message) { final String userId = getMandatoryString("userId", message); final String function = message.body().getString("function"); if (userId == null || function == null) return;//w ww.ja v a 2s. c o m executeTransaction(message, new VoidFunction<TransactionHelper>() { @Override public void apply(TransactionHelper tx) { User.removeFunction(userId, function, tx); } }); }