List of usage examples for com.fasterxml.jackson.core JsonGenerator writeStartObject
public abstract void writeStartObject() throws IOException, JsonGenerationException;
From source file:com.googlecode.jmxtrans.model.output.LibratoWriter2.java
@Override public void write(@Nonnull Writer writer, @Nonnull Server server, @Nonnull Query query, @Nonnull Iterable<Result> results) throws IOException { Closer closer = Closer.create();// ww w .j av a 2 s . c o m try { JsonGenerator g = closer.register(jsonFactory.createGenerator(writer)); g.writeStartObject(); g.writeArrayFieldStart("counters"); g.writeEndArray(); String source = getSource(server); g.writeArrayFieldStart("gauges"); for (Result result : results) { Map<String, Object> resultValues = result.getValues(); for (Map.Entry<String, Object> values : resultValues.entrySet()) { if (isNumeric(values.getValue())) { g.writeStartObject(); g.writeStringField("name", KeyUtils.getKeyString(query, result, values, typeNames)); if (source != null && !source.isEmpty()) { g.writeStringField("source", source); } g.writeNumberField("measure_time", SECONDS.convert(result.getEpoch(), MILLISECONDS)); Object value = values.getValue(); if (value instanceof Integer) { g.writeNumberField("value", (Integer) value); } else if (value instanceof Long) { g.writeNumberField("value", (Long) value); } else if (value instanceof Float) { g.writeNumberField("value", (Float) value); } else if (value instanceof Double) { g.writeNumberField("value", (Double) value); } g.writeEndObject(); } } } g.writeEndArray(); g.writeEndObject(); g.flush(); } catch (Throwable t) { throw closer.rethrow(t); } finally { closer.close(); } }
From source file:com.mattjbishop.halapino.EmbeddedSerializer.java
@Override public void serialize(Map<String, List<HALRepresentation>> embeddedResources, JsonGenerator jgen, SerializerProvider provider) throws IOException, JsonProcessingException { if (embeddedResources != null) { jgen.writeStartObject(); writeOutResources(embeddedResources, jgen); jgen.writeEndObject();//from ww w . j a v a 2 s . co m } }
From source file:org.mashti.jetson.json.JsonResponseEncoder.java
void encodeResultOrException(final Integer id, final Object result, final Throwable exception, final ByteBuf out, final boolean error) throws RPCException { JsonGenerator generator = null; try {/*from w ww. j a va 2s .c o m*/ generator = createJsonGenerator(out); generator.writeStartObject(); generator.writeObjectField(JsonRequestEncoder.ID_KEY, id); generator.writeObjectField(JsonRequestEncoder.VERSION_KEY, JsonRequestEncoder.DEFAULT_VERSION); if (error) { final JsonRpcError json_rpc_error = JsonRpcExceptions.toJsonRpcError(exception); generator.writeObjectField(ERROR_KEY, json_rpc_error); } else { generator.writeObjectField(RESULT_KEY, result); } generator.writeEndObject(); generator.flush(); generator.close(); } catch (final JsonProcessingException e) { LOGGER.debug("failed to encode response", e); throw new InternalServerException(e); } catch (final IOException e) { LOGGER.debug("IO error occurred while encoding response", e); throw new TransportException(e); } finally { CloseableUtil.closeQuietly(generator); } }
From source file:org.pentaho.metaverse.impl.model.kettle.json.GenericStepOrJobEntryJsonSerializer.java
@Override public void serialize(T meta, JsonGenerator json, SerializerProvider serializerProvider) throws IOException, JsonGenerationException { json.writeStartObject(); writeBasicInfo(meta, json);//from w w w. j a v a2 s . c o m writeRepoAttributes(meta, json); writeExternalResources(meta, json, serializerProvider); writeCustom(meta, json, serializerProvider); json.writeEndObject(); }
From source file:com.twosigma.beakerx.chart.serializer.RastersSerializer.java
@Override public void serialize(Rasters rasters, JsonGenerator jgen, SerializerProvider sp) throws IOException { validate(rasters);//from ww w. j a va 2s. co m jgen.writeStartObject(); jgen.writeObjectField(TYPE, SerializerUtil.getTypeName(rasters)); jgen.writeObjectField("x", rasters.getX()); jgen.writeObjectField("y", rasters.getY()); jgen.writeObjectField("opacity", rasters.getOpacity()); jgen.writeObjectField("visible", rasters.getVisible()); jgen.writeObjectField("yAxis", rasters.getYAxis()); jgen.writeObjectField("position", rasters.getPosition()); jgen.writeObjectField("width", rasters.getWidth()); jgen.writeObjectField("height", rasters.getHeight()); // datastring will override file path/url if (rasters.getDataString() != null) { jgen.writeObjectField("value", Bytes2Base64(rasters.getDataString(), null)); } else if (!rasters.getFilePath().isEmpty()) { String path = rasters.getFilePath(); File file = new File(path); if (!file.exists()) { throw new FileNotFoundException("Cannot find file " + path); } byte[] picture = Files.readAllBytes(new File(path).toPath()); String extension = ""; int i = path.lastIndexOf('.'); if (i > 0) { extension = path.substring(i + 1); } jgen.writeObjectField("value", Bytes2Base64(picture, extension)); } else if (!rasters.getFileUrl().isEmpty()) { jgen.writeObjectField("value", rasters.getFileUrl()); } jgen.writeEndObject(); }
From source file:com.joliciel.jochre.search.highlight.HighlightTerm.java
public void toJson(JsonGenerator jsonGen, DecimalFormat df) { try {//from ww w . j a v a2 s . com jsonGen.writeStartObject(); jsonGen.writeStringField("field", this.getField()); jsonGen.writeNumberField("start", this.getStartOffset()); jsonGen.writeNumberField("end", this.getEndOffset()); jsonGen.writeNumberField("pageIndex", this.getPageIndex()); jsonGen.writeNumberField("imageIndex", this.getImageIndex()); double roundedWeight = df.parse(df.format(this.getWeight())).doubleValue(); jsonGen.writeNumberField("weight", roundedWeight); jsonGen.writeEndObject(); jsonGen.flush(); } catch (java.text.ParseException e) { LogUtils.logError(LOG, e); throw new RuntimeException(e); } catch (IOException ioe) { LogUtils.logError(LOG, ioe); throw new RuntimeException(ioe); } }
From source file:com.sdl.odata.renderer.json.writer.JsonServiceDocumentWriter.java
/** * Build an embedded json object that will have key-value attributes like * 'name' and 'url' (they are MUST), 'title' and 'kind'. * * @param jsonGenerator jsonGenerator// w w w .ja va 2 s.c o m * @param entity entitySet or singleton * @throws IOException */ private void writeObject(JsonGenerator jsonGenerator, Object entity) throws IOException { jsonGenerator.writeStartObject(); writeName(jsonGenerator, entity); writeKind(jsonGenerator, entity); writeURL(jsonGenerator, entity); jsonGenerator.writeEndObject(); }
From source file:net.logstash.logback.marker.ObjectAppendingMarkerTest.java
@Test public void testWriteTo() throws IOException { MyClass myObject = new MyClass("value"); StringWriter writer = new StringWriter(); JsonGenerator generator = FACTORY.createGenerator(writer); LogstashMarker marker = Markers.append("myObject", myObject); generator.writeStartObject(); marker.writeTo(generator);//from ww w. j av a2 s. c o m generator.writeEndObject(); generator.flush(); assertThat(writer.toString()).isEqualTo("{\"myObject\":{\"myField\":\"value\"}}"); }
From source file:org.calrissian.mango.json.ser.NodeSerializer.java
@Override public void serialize(Node node, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException { jsonGenerator.writeStartObject(); if (node instanceof ParentNode) { serialize((ParentNode) node, jsonGenerator, serializerProvider); } else if (node instanceof Leaf) { serialize((Leaf) node, jsonGenerator, serializerProvider); } else {/*from ww w .j av a 2 s . c om*/ throw new IllegalArgumentException("Unsupported node: " + node); } jsonGenerator.writeEndObject(); }
From source file:net.logstash.logback.marker.ObjectFieldsAppendingMarkerTest.java
@Test public void testWriteTo() throws IOException { MyClass myObject = new MyClass("value"); StringWriter writer = new StringWriter(); JsonGenerator generator = FACTORY.createGenerator(writer); LogstashMarker marker = Markers.appendFields(myObject); generator.writeStartObject(); marker.writeTo(generator);/*w w w.ja va 2s. c om*/ generator.writeEndObject(); generator.flush(); assertThat(writer.toString()).isEqualTo("{\"myField\":\"value\"}"); }