@VisibleForTesting JsonObject createOutput(JsonArray outputSchema, String[] inputRecord, List<String> customOrder) { Preconditions.checkArgument(outputSchema.size() == customOrder.size(), "# of columns mismatch. Input " + outputSchema.size() + " , output: " + customOrder.size()); JsonObject outputRecord = new JsonObject(); Iterator<JsonElement> outputSchemaIterator = outputSchema.iterator(); Iterator<String> customOrderIterator = customOrder.iterator(); while(outputSchemaIterator.hasNext() && customOrderIterator.hasNext()) { JsonObject field = outputSchemaIterator.next().getAsJsonObject(); String key = field.get(COLUMN_NAME_KEY).getAsString(); int i = Integer.parseInt(customOrderIterator.next()); Preconditions.checkArgument(i < inputRecord.length, "Index out of bound detected in customer order. Index: " + i + " , # of CSV columns: " + inputRecord.length); if (i < 0 || null == inputRecord[i] || JSON_NULL_VAL.equalsIgnoreCase(inputRecord[i])) { outputRecord.add(key, JsonNull.INSTANCE); continue; } outputRecord.add(key, convertValue(inputRecord[i], field.getAsJsonObject(DATA_TYPE_KEY))); } return outputRecord; }
/** * Parse the query results into a {@link Histogram} */ private Histogram parseDayBucketingHistogram(JsonArray records) { log.info("Parse day-based histogram"); Histogram histogram = new Histogram(); Iterator<JsonElement> elements = records.iterator(); JsonObject element; while (elements.hasNext()) { element = elements.next().getAsJsonObject(); String time = element.get("time").getAsString() + ZERO_TIME_SUFFIX; int count = element.get("cnt").getAsInt(); histogram.add(new HistogramGroup(time, count)); } return histogram; }
/** * Get the row count for a time range */ private int getCountForRange(TableCountProbingContext probingContext, StrSubstitutor sub, Map<String, String> subValues, long startTime, long endTime) { String startTimeStr = Utils.dateToString(new Date(startTime), SalesforceExtractor.SALESFORCE_TIMESTAMP_FORMAT); String endTimeStr = Utils.dateToString(new Date(endTime), SalesforceExtractor.SALESFORCE_TIMESTAMP_FORMAT); subValues.put("start", startTimeStr); subValues.put("end", endTimeStr); String query = sub.replace(PROBE_PARTITION_QUERY_TEMPLATE); log.debug("Count query: " + query); probingContext.probeCount++; JsonArray records = getRecordsForQuery(probingContext.connector, query); Iterator<JsonElement> elements = records.iterator(); JsonObject element = elements.next().getAsJsonObject(); return element.get("cnt").getAsInt(); }
Iterator<JsonElement> li = array.iterator(); while (li.hasNext()) { JsonElement recordElement = li.next();
@Test public void list_of_numbers() { JsonArray objs = using(GSON_CONFIGURATION).parse(JSON_DOCUMENT).read("$.store.book[*].display-price"); assertThat(objs.iterator()).extracting("asDouble").containsExactly(8.95D, 12.99D, 8.99D, 22.99D); }
private List<String> getLocatorsFromJSONBody(String tenantId, String body) { JsonElement element = gson.fromJson(body, JsonElement.class); JsonArray metrics = element.getAsJsonArray(); final List<String> locators = new ArrayList<String>(); Iterator<JsonElement> it = metrics.iterator(); while (it.hasNext()) { JsonElement metricElement = it.next(); locators.add( metricElement.getAsString()); } return locators; }
@Override public List<PortConfig> deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException { if (json.isJsonNull()) { return new ArrayList<PortConfig>(); } List<PortConfig> pcs = new ArrayList<PortConfig>(); JsonArray array = json.getAsJsonArray(); Iterator<JsonElement> it = array.iterator(); while (it.hasNext()) { JsonElement element = it.next(); pcs.add(s_gson.fromJson(element, PortConfig.class)); } return pcs; } }
private static void cleanJsonArray(JsonArray array) { Iterator<JsonElement> iter = array.iterator(); while (iter.hasNext()) { JsonElement ele = iter.next(); if (ele.isJsonNull()) { iter.remove(); continue; } else { cleanJsonElement(ele); } } }
@Override @SuppressWarnings("unchecked") public T[] deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException { JsonArray array = json.getAsJsonArray(); Iterator<JsonElement> it = array.iterator(); ArrayList<T> cmds = new ArrayList<T>(); while (it.hasNext()) { JsonObject element = (JsonObject)it.next(); Map.Entry<String, JsonElement> entry = element.entrySet().iterator().next(); String name = entry.getKey(); Class<?> clazz; try { clazz = Class.forName(name); } catch (ClassNotFoundException e) { throw new CloudRuntimeException("can't find " + name); } T cmd = (T)_gson.fromJson(entry.getValue(), clazz); cmds.add(cmd); } Class<?> type = ((Class<?>)typeOfT).getComponentType(); T[] ts = (T[])Array.newInstance(type, cmds.size()); return cmds.toArray(ts); } }
} else if (v.isJsonArray()){ JsonArray vArr = v.getAsJsonArray(); Iterator<JsonElement> itr = vArr.iterator(); while (itr.hasNext()){ JsonElement valueItem = itr.next();
@Override public JsonElement apply(JsonElement original) { JsonElement result = duplicate(original); JsonElement item = path.head().navigate(result); JsonElement data = mySourcePath.head().navigate(original); if (item.isJsonObject()) { item.getAsJsonObject().add(path.tail(), data); } else if (item.isJsonArray()) { JsonArray array = item.getAsJsonArray(); int index = (path.tail().equals("-")) ? array.size() : Integer.valueOf(path.tail()); List<JsonElement> temp = new ArrayList<JsonElement>(); Iterator<JsonElement> iter = array.iterator(); while (iter.hasNext()) { JsonElement stuff = iter.next(); iter.remove(); temp.add(stuff); } temp.add(index, data); for (JsonElement stuff : temp) { array.add(stuff); } } return result; }
@Override public void beginArray() throws IOException { expect(JsonToken.BEGIN_ARRAY); JsonArray array = (JsonArray) peekStack(); push(array.iterator()); pathIndices[stackSize - 1] = 0; }
private boolean verifyRegistrationInConsul() { String registryServer = serviceProps.getRegistryServer(); if (StringUtils.isBlank(registryServer)) { return false; } String url = "http://" + registryServer + "/v1/catalog/service/" + serviceProps.getServiceName(); try { ContentResponse httpResponse = httpClient.newRequest(url). method(HttpMethod.GET).header(HttpHeader.CONTENT_TYPE, "application/json").send(); if (httpResponse.getStatus() != 200) { return false; } JsonArray pods = new JsonParser().parse(httpResponse.getContentAsString()).getAsJsonArray(); Iterator<JsonElement> iter = pods.iterator(); while (iter.hasNext()) { JsonElement pod = iter.next(); String serviceId = pod.getAsJsonObject().get("ServiceID").getAsString(); if (serviceProps.getServiceInstanceId().equals(serviceId)) { return true; } } } catch (Exception ex) { logger.warn("Caught exception verifying registration", ex); } return false; }
final DynamoDBList list = new DynamoDBList(); final JsonArray array = data.getAsJsonArray(); for (final Iterator<JsonElement> iterator = array.iterator(); iterator.hasNext();) { final JsonElement type = iterator.next(); list.add(toEntry(type));
JsonArray jsonArray; Iterator<JsonElement> it = jsonArray.iterator(); while(it.hasNext()){ System.out.println(it.next()); }
public List<String> getMultiplePrimitive() { List<String> values = new ArrayList<>(); Iterator<JsonElement> iter = value.getAsJsonArray().iterator(); while (iter.hasNext()) { values.add(iter.next().getAsString()); } return values; }
public List<String> getMultipleVocab() { List<String> values = new ArrayList<>(); Iterator<JsonElement> iter = value.getAsJsonArray().iterator(); while (iter.hasNext()) { values.add(iter.next().getAsString()); } return values; }
private Object[] deserializeJsonArray(JsonArray arr) { Object[] elems = new Object[arr.size()]; Iterator<JsonElement> elemIter = arr.iterator(); int i = 0; while (elemIter.hasNext()) { JsonElement elem = elemIter.next(); elems[i++] = deserializeJsonElement(elem); } return elems; }
private byte[] generateBaseQualities(JsonArray alignedQuality) { byte[] baseQualities = new byte[alignedQuality.size()]; Iterator<JsonElement> iter = alignedQuality.iterator(); int i = 0; while (iter.hasNext()) { baseQualities[i++] = iter.next().getAsByte(); } return baseQualities; }
protected void setupIterator(JsonReader reader) { JsonParser parser = new JsonParser(); JsonElement root = parser.parse(reader); if (root.isJsonArray()) { // Currently positioned to read a set of objects jsonIterator = root.getAsJsonArray().iterator(); } else { // Currently positioned to read a single object jsonIterator = IteratorUtils.singletonIterator(root); } }