@Override public boolean contains() { return array != null && index > -1 && index < array.size(); }
private static String getProblemMessages(JsonObject errorResponse) { StringBuilder problemMessages = new StringBuilder(); String mainProblem = getProblemMessage(errorResponse); if (mainProblem != null) { problemMessages.append(getProblemMessage(errorResponse)); } JsonArray subproblems = errorResponse.getJsonArray(SUBPROBLEMS); if (subproblems != null && subproblems.size() > 0) { problemMessages.append(":"); for (JsonObject subproblem : subproblems.getValuesAs(JsonObject.class)) { problemMessages.append("\n").append(getProblemMessage(subproblem)); } } return problemMessages.toString(); }
@Override public JsonArray add(JsonValue value) { //TODO should we check for arrayoutofbounds? // The spec seems to say index = array.size() is allowed. This is handled as append JsonArrayBuilder builder = Json.createArrayBuilder(this.array); if (index == -1 || index == array.size()) { builder.add(value); } else { if(index < array.size()) { builder.add(index, value); } else { throw new JsonException(JsonMessages.NODEREF_ARRAY_INDEX_ERR(index, array.size())); } } return builder.build(); }
private void importTrackIdSet() { this.trackIdSet = new HashSet<>(); String tracksUrl = conferenceBaseUrl + "/tracks"; LOGGER.debug("Sending a request to: {}", tracksUrl); JsonObject rootObject = readJson(tracksUrl, JsonReader::readObject); JsonArray tracksArray = rootObject.getJsonArray("tracks"); for (int i = 0; i < tracksArray.size(); i++) { trackIdSet.add(tracksArray.getJsonObject(i).getString("id")); } }
public String doNewPhrases(String line) throws Exception { System.out.println("adding new phrases"); ConstantsAndVariables constVars = new ConstantsAndVariables(props, humanLabelClasses.keySet(), humanLabelClasses); JsonReader jsonReader = Json.createReader(new StringReader(line)); JsonObject objarr = jsonReader.readObject(); for(Map.Entry<String, JsonValue> o: objarr.entrySet()){ String label = o.getKey(); Set<CandidatePhrase> seed = new HashSet<>(); JsonArray arr = objarr.getJsonArray(o.getKey()); for(int i = 0; i < arr.size(); i++){ String seedw = arr.getString(i); System.out.println("adding " + seedw + " to seed "); seed.add(CandidatePhrase.createOrGet(seedw)); } seedWords.get(label).addAll(seed); constVars.addSeedWords(label, seed); GetPatternsFromDataMultiClass.runLabelSeedWords(Data.sents, humanLabelClasses.get(label), label, seed, constVars, false); //model.labelWords(label, labelclass, Data.sents, seed); } return "SUCCESS added new phrases"; }
String[] queryAccountContactUrls(AcmeAccount account, boolean staging) throws AcmeException { Assert.checkNotNullParam("account", account); HttpURLConnection connection = sendPostAsGetRequest(account, staging, getAccountUrl(account, staging), null, HttpURLConnection.HTTP_OK); JsonObject jsonResponse = getJsonResponse(connection); JsonArray contactsArray = jsonResponse.getJsonArray(CONTACT); if (contactsArray != null && contactsArray.size() > 0) { List<String> contacts = new ArrayList<>(contactsArray.size()); for (JsonString contact : contactsArray.getValuesAs(JsonString.class)) { contacts.add(contact.getString()); } return contacts.toArray(new String[contacts.size()]); } return null; }
seedWords.put(st, new HashSet<>()); JsonArray arr = obj.getJsonArray(st); for(int i = 0; i < arr.size(); i++){ String val = arr.getString(i); seedWords.get(st).add(CandidatePhrase.createOrGet(val));
private void importTalkTypeList() { this.talkTypeIdToTalkTypeMap = new HashMap<>(); List<TalkType> talkTypeList = new ArrayList<>(); String proposalTypeUrl = conferenceBaseUrl + "/proposalTypes"; LOGGER.debug("Sending a request to: {}", proposalTypeUrl); JsonObject rootObject = readJson(proposalTypeUrl, JsonReader::readObject); JsonArray talkTypeArray = rootObject.getJsonArray("proposalTypes"); for (int i = 0; i < talkTypeArray.size(); i++) { JsonObject talkTypeObject = talkTypeArray.getJsonObject(i); String talkTypeId = talkTypeObject.getString("id"); if (talkTypeIdToTalkTypeMap.keySet().contains(talkTypeId)) { LOGGER.warn("Duplicate talk type in {} at index {}.", proposalTypeUrl, i); continue; } TalkType talkType = new TalkType((long) i, talkTypeId); talkType.setCompatibleRoomSet(new HashSet<>()); talkType.setCompatibleTimeslotSet(new HashSet<>()); talkTypeList.add(talkType); talkTypeIdToTalkTypeMap.put(talkTypeId, talkType); } solution.setTalkTypeList(talkTypeList); }
@Override public JsonValue get() { if (!contains()) { throw new JsonException(JsonMessages.NODEREF_ARRAY_INDEX_ERR(index, array.size())); } return array.get(index); }
/** * Returns an array of RoleInfo corresponding to the JSON serialization returned * by {@link QueueControl#listMessageCounterHistory()}. */ public static DayCounterInfo[] fromJSON(final String jsonString) { JsonObject json = JsonUtil.readJsonObject(jsonString); JsonArray dayCounters = json.getJsonArray("dayCounters"); DayCounterInfo[] infos = new DayCounterInfo[dayCounters.size()]; for (int i = 0; i < dayCounters.size(); i++) { JsonObject counter = (JsonObject) dayCounters.get(i); JsonArray hour = counter.getJsonArray("counters"); long[] hourCounters = new long[24]; for (int j = 0; j < 24; j++) { hourCounters[j] = hour.getInt(j); } DayCounterInfo info = new DayCounterInfo(counter.getString("date"), hourCounters); infos[i] = info; } return infos; }
private void importRoomList() { this.roomIdToRoomMap = new HashMap<>(); List<Room> roomList = new ArrayList<>(); String roomsUrl = conferenceBaseUrl + "/rooms/"; LOGGER.debug("Sending a request to: {}", roomsUrl); JsonObject rootObject = readJson(roomsUrl, JsonReader::readObject); JsonArray roomArray = rootObject.getJsonArray("rooms"); for (int i = 0; i < roomArray.size(); i++) { JsonObject roomObject = roomArray.getJsonObject(i); String id = roomObject.getString("id"); int capacity = roomObject.getInt("capacity"); if (!Arrays.asList(IGNORED_ROOM_IDS).contains(id)) { Room room = new Room((long) i); room.setName(id); room.setCapacity(capacity); room.setTalkTypeSet(getTalkTypeSetForCapacity(capacity)); for (TalkType talkType : room.getTalkTypeSet()) { talkType.getCompatibleRoomSet().add(room); } room.setTagSet(new HashSet<>()); room.setUnavailableTimeslotSet(new HashSet<>()); roomList.add(room); roomIdToRoomMap.put(id, room); } } roomList.sort(Comparator.comparing(Room::getName)); solution.setRoomList(roomList); }
@Override public JsonArray remove() { if (!contains()) { throw new JsonException(JsonMessages.NODEREF_ARRAY_INDEX_ERR(index, array.size())); } JsonArrayBuilder builder = Json.createArrayBuilder(this.array); return builder.remove(index).build(); }
@Override public JsonArray replace(JsonValue value) { if (!contains()) { throw new JsonException(JsonMessages.NODEREF_ARRAY_INDEX_ERR(index, array.size())); } JsonArrayBuilder builder = Json.createArrayBuilder(this.array); return builder.set(index, value).build(); } }
private void importTalkList() { this.talkCodeToTalkMap = new HashMap<>(); solution.setTalkList(new ArrayList<>()); String talksUrl = conferenceBaseUrl + "/talks"; LOGGER.debug("Sending a request to: {}", talksUrl); JsonArray talkArray = readJson(talksUrl, JsonReader::readObject).getJsonObject("talks").getJsonArray("accepted"); for (int i = 0; i < talkArray.size(); i++) { JsonObject talkObject = talkArray.getJsonObject(i); String code = talkObject.getString("id"); String title = talkObject.getString("title"); String talkTypeId = talkObject.getJsonObject("talkType").getString("id"); Set<String> themeTrackSet = extractThemeTrackSet(talkObject, code, title); String language = talkObject.getString("lang"); int audienceLevel = Integer.parseInt(talkObject.getString("audienceLevel").replaceAll("[^0-9]", "")); List<Speaker> speakerList = extractSpeakerList(talkObject, code, title); Set<String> contentTagSet = extractContentTagSet(talkObject); if (!Arrays.asList(IGNORED_TALK_TYPES).contains(talkTypeId)) { createTalk(code, title, talkTypeId, themeTrackSet, language, speakerList, audienceLevel, contentTagSet); } } }
/** * Returns an array of RoleInfo corresponding to the JSON serialization returned * by {@link AddressControl#getRolesAsJSON()}. */ public static RoleInfo[] from(final String jsonString) throws Exception { JsonArray array = JsonUtil.readJsonArray(jsonString); RoleInfo[] roles = new RoleInfo[array.size()]; for (int i = 0; i < array.size(); i++) { JsonObject r = array.getJsonObject(i); RoleInfo role = new RoleInfo(r.getString("name"), r.getBoolean("send"), r.getBoolean("consume"), r.getBoolean("createDurableQueue"), r.getBoolean("deleteDurableQueue"), r.getBoolean("createNonDurableQueue"), r.getBoolean("deleteNonDurableQueue"), r.getBoolean("manage"), r.getBoolean("browse"), r.getBoolean("createAddress")); roles[i] = role; } return roles; }
for (int i = 0; i < array.size(); i++) { JsonObject entry = array.getJsonObject(i);
@Override protected Object decode( Channel channel, SocketAddress remoteAddress, Object msg) throws Exception { FullHttpRequest request = (FullHttpRequest) msg; JsonArray result = Json.createReader(new StringReader(request.content().toString(StandardCharsets.UTF_8))) .readArray(); List<Position> positions = new LinkedList<>(); for (int i = 0; i < result.size(); i++) { JsonObject message = result.getJsonObject(i); JsonString ident = message.getJsonString("ident"); if (ident == null) { continue; } DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, ident.getString()); if (deviceSession == null) { continue; } Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); decodePosition(message, position); positions.add(position); } sendResponse(channel, HttpResponseStatus.OK); return positions; }
private AcmeChallenge respondToChallenges(AcmeAccount account, boolean staging, JsonObject authorization) throws AcmeException { List<AcmeChallenge> challenges = null; if (authorization.getString(STATUS).equals(PENDING)) { JsonObject identifier = authorization.getJsonObject(IDENTIFIER); JsonArray challengeArray = authorization.getJsonArray(CHALLENGES); challenges = new ArrayList<>(challengeArray.size()); for (JsonObject challenge : challengeArray.getValuesAs(JsonObject.class)) { challenges.add(new AcmeChallenge(AcmeChallenge.Type.forName(challenge.getString(TYPE)), challenge.getString(URL), challenge.getString(TOKEN), identifier.getString(TYPE), identifier.getString(VALUE))); } } if (challenges != null && ! challenges.isEmpty()) { AcmeChallenge selectedChallenge = proveIdentifierControl(account, challenges); try { sendPostRequestWithRetries(account, staging, selectedChallenge.getUrl(), false, getEncodedJson(EMPTY_PAYLOAD), HttpURLConnection.HTTP_OK); return selectedChallenge; } catch (AcmeException e) { cleanupAfterChallenge(account, selectedChallenge); throw e; } } return null; }
final List<String> caaIdentities = new ArrayList<>(caaIdentitiesArray.size()); for (JsonString caaIdentity : caaIdentitiesArray.getValuesAs(JsonString.class)) { caaIdentities.add(caaIdentity.getString());