List of usage examples for io.vertx.core.json JsonObject remove
public Object remove(String key)
From source file:org.entcore.auth.adapter.UserInfoAdapterV1_0Json.java
License:Open Source License
@Override public JsonObject getInfo(JsonObject info, String clientId) { final JsonObject filteredInfos = getCommonFilteredInfos(info, clientId); filteredInfos.remove("realClassesNames"); return filteredInfos; }
From source file:org.entcore.auth.adapter.UserInfoAdapterV1_0Json.java
License:Open Source License
protected JsonObject getCommonFilteredInfos(JsonObject info, String clientId) { JsonObject filteredInfos = info.copy(); String type = Utils.getOrElse(types.get(info.getString("type", "")), ""); filteredInfos.put("type", type); filteredInfos.remove("cache"); if (filteredInfos.getString("level") == null) { filteredInfos.put("level", ""); } else if (filteredInfos.getString("level").contains("$")) { String[] level = filteredInfos.getString("level").split("\\$"); filteredInfos.put("level", level[level.length - 1]); }// w ww .j a v a 2 s . c o m if (clientId != null && !clientId.trim().isEmpty()) { JsonArray classNames = filteredInfos.getJsonArray("classNames"); filteredInfos.remove("classNames"); JsonArray structureNames = filteredInfos.getJsonArray("structureNames"); filteredInfos.remove("structureNames"); filteredInfos.remove("federated"); if (classNames != null && classNames.size() > 0) { filteredInfos.put("classId", classNames.getString(0)); } if (structureNames != null && structureNames.size() > 0) { filteredInfos.put("schoolName", structureNames.getString(0)); } filteredInfos.remove("functions"); filteredInfos.remove("groupsIds"); filteredInfos.remove("structures"); filteredInfos.remove("classes"); filteredInfos.remove("apps"); filteredInfos.remove("authorizedActions"); filteredInfos.remove("children"); JsonArray authorizedActions = new fr.wseduc.webutils.collections.JsonArray(); for (Object o : info.getJsonArray("authorizedActions")) { JsonObject j = (JsonObject) o; String name = j.getString("name"); if (name != null && name.startsWith(clientId + "|")) { authorizedActions.add(j); } } if (authorizedActions.size() > 0) { filteredInfos.put("authorizedActions", authorizedActions); } } return filteredInfos; }
From source file:org.entcore.auth.adapter.UserInfoAdapterV2_0Json.java
License:Open Source License
@Override public JsonObject getInfo(JsonObject info, String clientId) { JsonObject s = info.copy(); s.remove("cache"); return s;//from w w w . ja v a 2 s . com }
From source file:org.entcore.auth.controllers.AuthController.java
License:Open Source License
@Post("/forgot-id") public void forgetId(final HttpServerRequest request) { RequestUtils.bodyToJson(request, new io.vertx.core.Handler<JsonObject>() { public void handle(JsonObject data) { final String mail = data.getString("mail"); final String service = data.getString("service"); final String firstName = data.getString("firstName"); final String structure = data.getString("structureId"); if (mail == null || mail.trim().isEmpty()) { badRequest(request);/*from w ww. j ava 2s .c o m*/ return; } userAuthAccount.findByMailAndFirstNameAndStructure(mail, firstName, structure, new io.vertx.core.Handler<Either<String, JsonArray>>() { @Override public void handle(Either<String, JsonArray> event) { //No user with that email, or more than one found. if (event.isLeft()) { badRequest(request, event.left().getValue()); return; } JsonArray results = event.right().getValue(); if (results.size() == 0) { badRequest(request, "no.match"); return; } JsonArray structures = new fr.wseduc.webutils.collections.JsonArray(); if (results.size() > 1) { for (Object ob : results) { JsonObject j = (JsonObject) ob; j.remove("login"); j.remove("mobile"); if (!structures.toString().contains(j.getString("structureId"))) structures.add(j); } if (firstName != null && structures.size() == 1) badRequest(request, "non.unique.result"); else renderJson(request, new JsonObject().put("structures", structures)); return; } JsonObject match = results.getJsonObject(0); final String id = match.getString("login", ""); final String mobile = match.getString("mobile", ""); //Force mail if ("mail".equals(service)) { userAuthAccount.sendForgottenIdMail(request, id, mail, new io.vertx.core.Handler<Either<String, JsonObject>>() { public void handle(Either<String, JsonObject> event) { if (event.isLeft()) { badRequest(request, event.left().getValue()); return; } if (smsProvider != null && !smsProvider.isEmpty()) { final String obfuscatedMobile = StringValidation .obfuscateMobile(mobile); renderJson(request, new JsonObject().put("mobile", obfuscatedMobile)); } else { renderJson(request, new JsonObject()); } } }); } else if ("mobile".equals(service) && !mobile.isEmpty() && smsProvider != null && !smsProvider.isEmpty()) { eventStore.createAndStoreEvent(AuthEvent.SMS.name(), id); userAuthAccount.sendForgottenIdSms(request, id, mobile, DefaultResponseHandler.defaultResponseHandler(request)); } else { badRequest(request); } } }); } }); }
From source file:org.entcore.auth.oauth.OAuthDataHandler.java
License:Open Source License
private void createAuthInfo(String clientId, String userId, String scope, String redirectUri, final Handler<AuthInfo> handler) { final JsonObject auth = new JsonObject().put("clientId", clientId).put("userId", userId).put("scope", scope) .put("createdAt", MongoDb.now()).put("refreshToken", UUID.randomUUID().toString()); if (redirectUri != null) { auth.put("redirectUri", redirectUri).put("code", UUID.randomUUID().toString()); }//from ww w . java2s. com mongo.save(AUTH_INFO_COLLECTION, auth, new io.vertx.core.Handler<Message<JsonObject>>() { @Override public void handle(Message<JsonObject> res) { if ("ok".equals(res.body().getString("status"))) { auth.put("id", res.body().getString("_id")); auth.remove("createdAt"); ObjectMapper mapper = new ObjectMapper(); try { handler.handle(mapper.readValue(auth.encode(), AuthInfo.class)); } catch (IOException e) { handler.handle(null); } } else { handler.handle(null); } } }); }
From source file:org.entcore.auth.oauth.OAuthDataHandler.java
License:Open Source License
@Override public void getAuthInfoByCode(String code, final Handler<AuthInfo> handler) { if (code != null && !code.trim().isEmpty()) { JsonObject query = new JsonObject().put("code", code).put("createdAt", new JsonObject().put("$gte", new JsonObject().put("$date", System.currentTimeMillis() - CODE_EXPIRES))); mongo.findOne(AUTH_INFO_COLLECTION, query, new io.vertx.core.Handler<Message<JsonObject>>() { @Override//from w ww. java 2 s. co m public void handle(Message<JsonObject> res) { JsonObject r = res.body().getJsonObject("result"); if ("ok".equals(res.body().getString("status")) && r != null && r.size() > 0) { r.put("id", r.getString("_id")); r.remove("_id"); r.remove("createdAt"); ObjectMapper mapper = new ObjectMapper(); try { handler.handle(mapper.readValue(r.encode(), AuthInfo.class)); } catch (IOException e) { handler.handle(null); } } else { handler.handle(null); } } }); } else { handler.handle(null); } }
From source file:org.entcore.auth.oauth.OAuthDataHandler.java
License:Open Source License
@Override public void getAuthInfoByRefreshToken(String refreshToken, final Handler<AuthInfo> handler) { if (refreshToken != null && !refreshToken.trim().isEmpty()) { JsonObject query = new JsonObject().put("refreshToken", refreshToken); mongo.findOne(AUTH_INFO_COLLECTION, query, new io.vertx.core.Handler<Message<JsonObject>>() { @Override/*from w w w. ja v a2s. c o m*/ public void handle(Message<JsonObject> res) { if ("ok".equals(res.body().getString("status"))) { JsonObject r = res.body().getJsonObject("result"); if (r == null) { handler.handle(null); return; } r.put("id", r.getString("_id")); r.remove("_id"); r.remove("createdAt"); ObjectMapper mapper = new ObjectMapper(); try { handler.handle(mapper.readValue(r.encode(), AuthInfo.class)); } catch (IOException e) { handler.handle(null); } } else { handler.handle(null); } } }); } else { handler.handle(null); } }
From source file:org.entcore.auth.oauth.OAuthDataHandler.java
License:Open Source License
@Override public void getAuthInfoById(String id, final Handler<AuthInfo> handler) { if (id != null && !id.trim().isEmpty()) { JsonObject query = new JsonObject().put("_id", id); mongo.findOne(AUTH_INFO_COLLECTION, query, new io.vertx.core.Handler<Message<JsonObject>>() { @Override//from w ww .j a v a2s.co m public void handle(Message<JsonObject> res) { if ("ok".equals(res.body().getString("status"))) { JsonObject r = res.body().getJsonObject("result"); r.put("id", r.getString("_id")); r.remove("_id"); r.remove("createdAt"); ObjectMapper mapper = new ObjectMapper(); try { handler.handle(mapper.readValue(r.encode(), AuthInfo.class)); } catch (IOException e) { handler.handle(null); } } else { handler.handle(null); } } }); } else { handler.handle(null); } }
From source file:org.entcore.blog.services.impl.DefaultBlogService.java
License:Open Source License
@Override public void update(String blogId, JsonObject blog, final Handler<Either<String, JsonObject>> result) { blog.put("modified", MongoDb.now()); if (blog.getString("comment-type") != null) { try {//from w ww . j av a 2 s . com CommentType.valueOf(blog.getString("comment-type").toUpperCase()); blog.put("comment-type", blog.getString("comment-type").toUpperCase()); } catch (IllegalArgumentException | NullPointerException e) { blog.remove("comment-type"); } } if (blog.getString("publish-type") != null) { try { PublishType.valueOf(blog.getString("publish-type").toUpperCase()); blog.put("publish-type", blog.getString("publish-type").toUpperCase()); } catch (IllegalArgumentException | NullPointerException e) { blog.remove("publish-type"); } } JsonObject b = Utils.validAndGet(blog, UPDATABLE_FIELDS, Collections.<String>emptyList()); if (validationError(result, b)) return; QueryBuilder query = QueryBuilder.start("_id").is(blogId); MongoUpdateBuilder modifier = new MongoUpdateBuilder(); for (String attr : b.fieldNames()) { modifier.set(attr, b.getValue(attr)); } mongo.update(BLOG_COLLECTION, MongoQueryBuilder.build(query), modifier.build(), new Handler<Message<JsonObject>>() { @Override public void handle(Message<JsonObject> event) { result.handle(Utils.validResult(event)); } }); }
From source file:org.entcore.blog.services.impl.DefaultPostService.java
License:Open Source License
@Override public void list(String blogId, final UserInfos user, final Integer page, final int limit, final String search, final Set<String> states, final Handler<Either<String, JsonArray>> result) { final QueryBuilder accessQuery; if (states == null || states.isEmpty()) { accessQuery = QueryBuilder.start("blog.$id").is(blogId); } else {//from w w w.j av a 2 s. c o m accessQuery = QueryBuilder.start("blog.$id").is(blogId).put("state").in(states); } final QueryBuilder isManagerQuery = getDefautQueryBuilderForList(blogId, user, true); final JsonObject sort = new JsonObject().put("modified", -1); final JsonObject projection = defaultKeys.copy(); projection.remove("content"); final Handler<Message<JsonObject>> finalHandler = new Handler<Message<JsonObject>>() { @Override public void handle(Message<JsonObject> event) { result.handle(Utils.validResults(event)); } }; mongo.count("blogs", MongoQueryBuilder.build(isManagerQuery), new Handler<Message<JsonObject>>() { public void handle(Message<JsonObject> event) { JsonObject res = event.body(); if (res == null || !"ok".equals(res.getString("status"))) { result.handle(new Either.Left<String, JsonArray>(event.body().encodePrettily())); return; } boolean isManager = 1 == res.getInteger("count", 0); accessQuery.or(QueryBuilder.start("state").is(StateType.PUBLISHED.name()).get(), QueryBuilder.start() .and(QueryBuilder.start("author.userId").is(user.getUserId()).get(), QueryBuilder.start("state").is(StateType.DRAFT.name()).get()) .get(), isManager ? QueryBuilder.start("state").is(StateType.SUBMITTED.name()).get() : QueryBuilder.start() .and(QueryBuilder.start("author.userId").is(user.getUserId()).get(), QueryBuilder.start("state").is(StateType.SUBMITTED.name()).get()) .get()); final QueryBuilder query = getQueryListBuilder(search, result, accessQuery); if (query != null) { if (limit > 0 && page == null) { mongo.find(POST_COLLECTION, MongoQueryBuilder.build(query), sort, projection, 0, limit, limit, finalHandler); } else if (page == null) { mongo.find(POST_COLLECTION, MongoQueryBuilder.build(query), sort, projection, finalHandler); } else { final JsonObject sortPag = new JsonObject().put("sorted", -1); final int skip = (0 == page) ? -1 : page * limit; mongo.find(POST_COLLECTION, MongoQueryBuilder.build(query), sortPag, projection, skip, limit, limit, finalHandler); } } } }); }