List of usage examples for com.fasterxml.jackson.core JsonGenerator writeEndArray
public abstract void writeEndArray() throws IOException, JsonGenerationException;
From source file:org.emfjson.jackson.streaming.StreamWriter.java
public void generate(final JsonGenerator generator, Resource resource) { prepare(generator, resource);// w w w .j a va 2s.c o m final EList<EObject> contents = resource.getContents(); if (contents.size() == 1) { try { generate(generator, contents.get(0)); } catch (IOException e) { e.printStackTrace(); } } else { try { generator.writeStartArray(); for (final EObject current : contents) { generate(generator, current); } generator.writeEndArray(); } catch (IOException e) { e.printStackTrace(); } } }
From source file:com.streamsets.datacollector.http.JMXJsonServlet.java
private void writeObject(JsonGenerator jg, Object value) throws IOException { if (value == null) { jg.writeNull();// w ww .j av a2s . c o m } else { Class<?> c = value.getClass(); if (c.isArray()) { jg.writeStartArray(); int len = Array.getLength(value); for (int j = 0; j < len; j++) { Object item = Array.get(value, j); writeObject(jg, item); } jg.writeEndArray(); } else if (value instanceof Number) { Number n = (Number) value; jg.writeNumber(n.toString()); } else if (value instanceof Boolean) { Boolean b = (Boolean) value; jg.writeBoolean(b); } else if (value instanceof CompositeData) { CompositeData cds = (CompositeData) value; CompositeType comp = cds.getCompositeType(); Set<String> keys = comp.keySet(); jg.writeStartObject(); for (String key : keys) { writeAttribute(jg, key, cds.get(key)); } jg.writeEndObject(); } else if (value instanceof TabularData) { TabularData tds = (TabularData) value; jg.writeStartArray(); for (Object entry : tds.values()) { writeObject(jg, entry); } jg.writeEndArray(); } else if (value instanceof GaugeValue) { ((GaugeValue) value).serialize(jg); } else { jg.writeString(value.toString()); } } }
From source file:org.pentaho.metaverse.impl.model.kettle.json.AbstractStepMetaJsonSerializer.java
protected void writeFields(JsonGenerator json, List<RowMetaInterface> fieldMetaList, String arrayObjectName) throws IOException { json.writeArrayFieldStart(arrayObjectName); for (RowMetaInterface fields : fieldMetaList) { List<ValueMetaInterface> valueMetaInterfaces = fields.getValueMetaList(); for (ValueMetaInterface valueMetaInterface : valueMetaInterfaces) { FieldInfo fieldInfo = new FieldInfo(valueMetaInterface); json.writeObject(fieldInfo); }/*from w w w .ja v a 2 s .com*/ } json.writeEndArray(); }
From source file:net.opentsdb.contrib.tsquare.web.view.GraphiteJsonResponseWriter.java
@Override public void write(final AnnotatedDataPoints annotatedPoints, final ResponseContext context) throws IOException { final JsonGenerator jsonGenerator = getJsonGenerator(context); jsonGenerator.writeStartObject();/*from w w w .j a v a2 s. com*/ jsonGenerator.writeStringField("target", annotatedPoints.getDataPoints().metricName()); if (includeAllTags) { jsonGenerator.writeArrayFieldStart("tags"); for (final Map.Entry<String, String> entry : annotatedPoints.getDataPoints().getTags().entrySet()) { jsonGenerator.writeStartObject(); jsonGenerator.writeStringField("key", entry.getKey()); jsonGenerator.writeStringField("value", entry.getValue()); jsonGenerator.writeEndObject(); } jsonGenerator.writeEndArray(); } if (includeAggregatedTags) { jsonGenerator.writeArrayFieldStart("aggregatedTags"); for (final String tag : annotatedPoints.getDataPoints().getAggregatedTags()) { jsonGenerator.writeString(tag); } jsonGenerator.writeEndArray(); } if (summarize) { final DataPointsAsDoubles doubles = new DataPointsAsDoubles(annotatedPoints.getDataPoints()); final double aggValue = Aggregators.SUM.runDouble(doubles); jsonGenerator.writeNumberField("summarizedValue", aggValue); } else { jsonGenerator.writeArrayFieldStart("datapoints"); for (final DataPoint p : annotatedPoints.getDataPoints()) { jsonGenerator.writeStartArray(); if (p.isInteger()) { jsonGenerator.writeNumber(p.longValue()); } else { jsonGenerator.writeNumber(p.doubleValue()); } if (isMillisecondResolution()) { jsonGenerator.writeNumber(p.timestamp()); } else { jsonGenerator.writeNumber(TimeUnit.MILLISECONDS.toSeconds(p.timestamp())); } jsonGenerator.writeEndArray(); } jsonGenerator.writeEndArray(); } jsonGenerator.writeEndObject(); }
From source file:net.opentsdb.contrib.tsquare.web.controller.ExtendedApiController.java
@RequestMapping(value = "/grep", method = RequestMethod.GET) public void grep(@RequestParam(required = false, defaultValue = "") String type, @RequestParam(required = false, defaultValue = "wildcard") String method, @RequestParam(required = true) String q, final HttpServletResponse servletResponse) throws IOException { if (log.isInfoEnabled()) { log.info("Suggest {} using {} expression: {}", type, method, q); }//w ww.ja v a 2s . c o m // Do we have a valid type? Note that an empty "type" is valid. if (!Strings.isNullOrEmpty(type)) { Preconditions.checkArgument(getTsdbManager().getKnownUidKinds().contains(type), "Unknown type: %s", type); } // We can only query hbase using regex, so convert a wildcard query into // a regex if necessary. final String regex; if ("wildcard".equalsIgnoreCase(method)) { regex = TsWebUtils.wildcardToRegex(q); log.debug("Converted wildcard expression {} to regex: {}", q, regex); } else { regex = q; } final UidQuery query = getTsdbManager().newUidQuery(); query.setRegex(regex); if (Strings.isNullOrEmpty(type)) { query.includeAllKinds(); } else { query.includeKind(type); } servletResponse.setContentType("application/json"); final OutputStream stream = servletResponse.getOutputStream(); final JsonGenerator json = new JsonFactory().createJsonGenerator(stream); try { json.writeStartArray(); query.run(new QueryCallback<Uid>() { @Override public boolean onResult(final Uid resultObject) { try { json.writeString(resultObject.getName()); return true; } catch (IOException e) { throw new IllegalArgumentException("Unable to serialize " + resultObject + " to JSON", e); } } }); json.writeEndArray(); json.flush(); } finally { Closeables.close(stream, false); } }
From source file:com.predic8.membrane.core.interceptor.administration.AdminRESTInterceptor.java
@Mapping("/admin/rest/exchanges/(-?\\d+)/(response|request)/header") public Response getRequestHeader(QueryParameter params, String relativeRootPath) throws Exception { final AbstractExchange exc = router.getExchangeStore().getExchangeById(params.getGroupInt(1)); if (exc == null) { return Response.notFound().build(); }/*w ww . ja va2 s.c o m*/ final Message msg = params.getGroup(2).equals("response") ? exc.getResponse() : exc.getRequest(); if (msg == null) { return Response.noContent().build(); } return json(new JSONContent() { public void write(JsonGenerator gen) throws Exception { gen.writeStartObject(); gen.writeArrayFieldStart("headers"); for (HeaderField hf : msg.getHeader().getAllHeaderFields()) { gen.writeStartObject(); gen.writeStringField("name", hf.getHeaderName().toString()); gen.writeStringField("value", hf.getValue()); gen.writeEndObject(); } gen.writeEndArray(); gen.writeEndObject(); } }); }
From source file:org.pentaho.metaverse.impl.model.kettle.json.TransMetaJsonSerializer.java
@Override protected void serializeSteps(TransMeta meta, JsonGenerator json) throws IOException { json.writeArrayFieldStart(JSON_PROPERTY_STEPS); for (StepMeta stepMeta : meta.getSteps()) { BaseStepMeta step = getBaseStepMetaFromStepMeta(stepMeta); LineageRepository repo = getLineageRepository(); String id = stepMeta.getObjectId() == null ? stepMeta.getName() : stepMeta.getObjectId().toString(); ObjectId stepId = new StringObjectId(id); try {// w ww.j av a 2 s . c om step.saveRep(repo, null, null, stepId); } catch (KettleException e) { LOGGER.warn(Messages.getString("INFO.Serialization.Trans.Step", stepMeta.getName()), e); } json.writeObject(step); } json.writeEndArray(); }
From source file:models.CoefficientSerializer.java
@Override public void serialize(Coefficient coefficient, JsonGenerator jgen, SerializerProvider provider) throws IOException { jgen.writeStartObject();/*from w w w. j av a 2 s .c o m*/ jgen.writeStringField("id", coefficient.getId()); jgen.writeFieldName("unit"); jgen.writeObject(coefficient.getUnit()); jgen.writeFieldName("keywords"); jgen.writeObject(coefficient.getKeywords()); jgen.writeFieldName("value"); jgen.writeObject(coefficient.getValue()); jgen.writeFieldName("groups"); jgen.writeStartArray(); for (Group group : coefficient.getGroups()) { jgen.writeStartObject(); jgen.writeStringField("id", group.getId()); jgen.writeStringField("label", group.getLabel()); jgen.writeEndObject(); } jgen.writeEndArray(); jgen.writeFieldName("relations"); jgen.writeStartArray(); for (DerivedRelation relation : coefficient.getDerivedRelations()) { jgen.writeObject(relation); } jgen.writeEndArray(); jgen.writeEndObject(); }
From source file:models.ReferenceSerializer.java
@Override public void serialize(Reference reference, JsonGenerator jgen, SerializerProvider provider) throws IOException { jgen.writeStartObject();/* w ww .j a v a2 s .com*/ jgen.writeStringField("id", reference.getId()); jgen.writeStringField("date", reference.getDate()); jgen.writeStringField("publisher", reference.getPublisher()); jgen.writeStringField("shortName", reference.getShortName()); jgen.writeStringField("source", reference.getSource()); jgen.writeStringField("title", reference.getTitle()); jgen.writeStringField("url", reference.getURL()); jgen.writeStringField("creator", reference.getCreator()); jgen.writeFieldName("groups"); jgen.writeStartArray(); for (Group group : reference.getGroups()) { writeSimplifiedGroup(group, jgen); } jgen.writeEndArray(); jgen.writeEndObject(); }
From source file:com.ning.metrics.action.hdfs.reader.HdfsListing.java
@SuppressWarnings({ "unchecked", "unused" }) public void toJson(final OutputStream out, final boolean pretty) throws IOException { final String parentPath = getParentPath() == null ? "" : getParentPath(); final JsonGenerator generator = new JsonFactory().createJsonGenerator(out); generator.configure(JsonGenerator.Feature.AUTO_CLOSE_TARGET, false); if (pretty) { generator.setPrettyPrinter(new DefaultPrettyPrinter()); }/*from w w w. j a v a 2 s . c o m*/ generator.writeStartObject(); generator.writeObjectField(JSON_LISTING_PATH, getPath()); generator.writeObjectField(JSON_LISTING_PARENT_PATH, parentPath); generator.writeArrayFieldStart(JSON_LISTING_ENTRIES); // Important: need to flush before appending pre-serialized events generator.flush(); for (HdfsEntry entry : getEntries()) { entry.toJson(generator); } generator.writeEndArray(); generator.writeEndObject(); generator.close(); }