List of usage examples for com.fasterxml.jackson.core JsonGenerator writeStartObject
public abstract void writeStartObject() throws IOException, JsonGenerationException;
From source file:be.dnsbelgium.rdap.jackson.ContactSerializer.java
@Override public void serialize(Contact contact, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException { jsonGenerator.writeStartArray();// ww w. j a va 2 s .c o m // start write version jsonGenerator.writeStartArray(); jsonGenerator.writeString("version"); jsonGenerator.writeStartObject(); jsonGenerator.writeEndObject(); jsonGenerator.writeString("text"); jsonGenerator.writeString("4.0"); jsonGenerator.writeEndArray(); // end write version for (Contact.Property property : contact.getProperties()) { // start write property jsonGenerator.writeStartArray(); // start write property name String key = (property.getGroup() == null) ? property.getName() : property.getGroup() + "." + property.getName(); jsonGenerator.writeString(property.getName().toLowerCase(Locale.ENGLISH)); // end write property name // start write property parameters jsonGenerator.writeStartObject(); if (property.getGroup() != null) { jsonGenerator.writeFieldName("group"); jsonGenerator.writeString(property.getGroup()); } if (property.getParameters() != null) { Iterator<String> it = property.getParameters().keys(); while (it.hasNext()) { String k = it.next(); if (k.equalsIgnoreCase("value")) { continue; } Set<String> values = property.getParameters().get(k); if (values.size() == 0) { // no parameters for this property, skip this step continue; } jsonGenerator.writeFieldName(k.toLowerCase(Locale.ENGLISH)); if (values.size() == 1) { jsonGenerator.writeString(values.toArray(new String[values.size()])[0]); continue; } // start write all property parameter values (array) jsonGenerator.writeStartArray(); for (String str : property.getParameters().get(k)) { jsonGenerator.writeString(str); } jsonGenerator.writeEndArray(); // end write all property parameter values (array) } } jsonGenerator.writeEndObject(); // end write property parameters // start write property type String value = "text"; if (property.getParameters() != null) { Set<String> types = property.getParameters().get("VALUE"); if (types != null) { value = types.iterator().next(); } } jsonGenerator.writeString(value); // end write property type // start write property value JsonSerializer s = serializerProvider.findValueSerializer(property.getValue().getClass(), null); s.serialize(property.getValue(), jsonGenerator, serializerProvider); // end write property value jsonGenerator.writeEndArray(); // end write property } jsonGenerator.writeEndArray(); }
From source file:ratpack.codahale.metrics.internal.WebSocketReporter.java
private void writeCounters(JsonGenerator json, SortedMap<String, Counter> counters) throws IOException { json.writeArrayFieldStart("counters"); for (Map.Entry<String, Counter> entry : counters.entrySet()) { Counter counter = entry.getValue(); json.writeStartObject(); json.writeStringField("name", entry.getKey()); json.writeNumberField("count", counter.getCount()); json.writeEndObject();// ww w. ja v a2 s.c o m } json.writeEndArray(); }
From source file:ninja.leaping.configurate.json.JSONConfigurationLoader.java
private void generateObject(JsonGenerator generator, ConfigurationNode node) throws IOException { if (!node.hasMapChildren()) { throw new IOException("Node passed to generateObject does not have map children!"); }//from w w w . j a v a 2s. co m generator.writeStartObject(); for (Map.Entry<Object, ? extends ConfigurationNode> ent : node.getChildrenMap().entrySet()) { generator.writeFieldName(ent.getKey().toString()); generateValue(generator, ent.getValue()); } generator.writeEndObject(); }
From source file:ratpack.codahale.metrics.internal.WebSocketReporter.java
private void writeTimers(JsonGenerator json, SortedMap<String, Timer> timers) throws IOException { json.writeArrayFieldStart("timers"); for (Map.Entry<String, Timer> entry : timers.entrySet()) { Timer timer = entry.getValue(); json.writeStartObject(); json.writeStringField("name", entry.getKey()); json.writeNumberField("count", timer.getCount()); json.writeNumberField("meanRate", convertRate(timer.getMeanRate())); json.writeNumberField("oneMinuteRate", convertRate(timer.getOneMinuteRate())); json.writeNumberField("fiveMinuteRate", convertRate(timer.getFiveMinuteRate())); json.writeNumberField("fifteenMinuteRate", convertRate(timer.getFifteenMinuteRate())); Snapshot snapshot = timer.getSnapshot(); json.writeNumberField("min", convertDuration(snapshot.getMin())); json.writeNumberField("max", convertDuration(snapshot.getMax())); json.writeNumberField("mean", convertDuration(snapshot.getMean())); json.writeNumberField("stdDev", convertDuration(snapshot.getStdDev())); json.writeNumberField("50thPercentile", convertDuration(snapshot.getMedian())); json.writeNumberField("75thPercentile", convertDuration(snapshot.get75thPercentile())); json.writeNumberField("95thPercentile", convertDuration(snapshot.get95thPercentile())); json.writeNumberField("98thPercentile", convertDuration(snapshot.get98thPercentile())); json.writeNumberField("99thPercentile", convertDuration(snapshot.get99thPercentile())); json.writeNumberField("999thPercentile", convertDuration(snapshot.get999thPercentile())); json.writeEndObject();// w w w . j ava 2s . com } json.writeEndArray(); }
From source file:com.predic8.membrane.core.interceptor.administration.AdminRESTInterceptor.java
@Mapping("/admin/rest/proxies(/?\\?.*)?") public Response getProxies(final QueryParameter params, String relativeRootPath) throws Exception { final List<AbstractServiceProxy> proxies = getServiceProxies(); if ("order".equals(params.getString("sort"))) { if (params.getString("order", "asc").equals("desc")) Collections.reverse(proxies); } else {/*from ww w. j a v a 2s . co m*/ Collections.sort(proxies, ComparatorFactory.getAbstractServiceProxyComparator( params.getString("sort", "name"), params.getString("order", "asc"))); } final int offset = params.getInt("offset", 0); int max = params.getInt("max", proxies.size()); final List<AbstractServiceProxy> paginated = proxies.subList(offset, Math.min(offset + max, proxies.size())); return json(new JSONContent() { public void write(JsonGenerator gen) throws Exception { gen.writeStartObject(); gen.writeArrayFieldStart("proxies"); int i = offset; if (params.getString("order", "asc").equals("desc")) i = proxies.size() - i + 1; for (AbstractServiceProxy p : paginated) { gen.writeStartObject(); gen.writeNumberField("order", i += params.getString("order", "asc").equals("desc") ? -1 : 1); gen.writeStringField("name", p.toString()); gen.writeBooleanField("active", p.isActive()); if (!p.isActive()) gen.writeStringField("error", p.getErrorState()); gen.writeNumberField("listenPort", p.getKey().getPort()); gen.writeStringField("virtualHost", p.getKey().getHost()); gen.writeStringField("method", p.getKey().getMethod()); gen.writeStringField("path", p.getKey().getPath()); gen.writeStringField("targetHost", p.getTargetHost()); gen.writeNumberField("targetPort", p.getTargetPort()); gen.writeNumberField("count", p.getCount()); gen.writeObjectFieldStart("actions"); if (!isReadOnly()) { gen.writeStringField("delete", "/admin/service-proxy/delete?name=" + URLEncoder.encode(RuleUtil.getRuleIdentifier(p), "UTF-8")); } if (!p.isActive()) gen.writeStringField("start", "/admin/service-proxy/start?name=" + URLEncoder.encode(RuleUtil.getRuleIdentifier(p), "UTF-8")); gen.writeEndObject(); gen.writeEndObject(); } gen.writeEndArray(); gen.writeNumberField("total", proxies.size()); gen.writeEndObject(); } }); }
From source file:com.attribyte.essem.es.SearchRequest.java
private void generateSort(final JsonGenerator generator) throws IOException { generator.writeArrayFieldStart("sort"); {// w ww .java 2 s . co m generator.writeStartObject(); { generator.writeObjectFieldStart(sortField); { generator.writeStringField("order", isAscending ? "asc" : "desc"); } generator.writeEndObject(); } generator.writeEndObject(); } generator.writeEndArray(); }
From source file:com.predic8.membrane.core.interceptor.apimanagement.statistics.AMStatisticsCollector.java
private String combineJsons(String name, ArrayList<String> jsonStatisticsForRequests) throws IOException { JsonGenerator gen = getAndResetJsonGenerator(); try {//from w w w . j a v a 2s . c om gen.writeStartObject(); gen.writeArrayFieldStart(name); if (!jsonStatisticsForRequests.isEmpty()) gen.writeRaw(jsonStatisticsForRequests.get(0)); for (int i = 1; i < jsonStatisticsForRequests.size(); i++) { gen.writeRaw("," + jsonStatisticsForRequests.get(i)); } gen.writeEndArray(); gen.writeEndObject(); } catch (IOException e) { e.printStackTrace(); } return getStringFromJsonGenerator(); }
From source file:com.predic8.membrane.core.interceptor.apimanagement.statistics.AMStatisticsCollector.java
private String collectExchangeDataFrom(Exchange exc, String apiKey) throws IOException { JsonGenerator gen = getAndResetJsonGenerator(); try {/*w ww .ja v a 2 s .c o m*/ gen.writeStartObject(); gen.writeObjectField("excId", exc.getId()); gen.writeObjectField("excApiKey", apiKey); gen.writeObjectFieldStart("Request"); collectFromMessage(gen, exc.getRequest()); gen.writeEndObject(); gen.writeObjectFieldStart("Response"); collectFromMessage(gen, exc.getResponse()); gen.writeEndObject(); gen.writeEndObject(); } catch (IOException e) { e.printStackTrace(); } return getStringFromJsonGenerator(); }
From source file:com.predic8.membrane.core.interceptor.apimanagement.statistics.AMStatisticsCollector.java
private String collectStatisticFrom(Exchange exc, String apiKey) throws IOException { StatisticCollector statistics = new StatisticCollector(false); statistics.collectFrom(exc);// w w w . j ava 2 s. c o m JsonGenerator gen = getAndResetJsonGenerator(); try { gen.writeStartObject(); gen.writeObjectField("excId", exc.getId()); gen.writeObjectField("excApiKey", apiKey); gen.writeObjectField("excStatus", exc.getStatus().toString()); gen.writeObjectField("code", exc.getResponse().getStatusCode()); gen.writeObjectField("time", getInflightTime(exc)); gen.writeEndObject(); } catch (IOException e) { e.printStackTrace(); } return getStringFromJsonGenerator(); }