List of usage examples for com.fasterxml.jackson.core JsonGenerator writeStartObject
public abstract void writeStartObject() throws IOException, JsonGenerationException;
From source file:com.proofpoint.event.collector.FilteringMapSerializer.java
@Override public void serialize(Map<String, ?> map, JsonGenerator jgen, SerializerProvider provider) throws IOException, JsonProcessingException { //have to do this before starting to write the object, otherwise proper context is lost. PropertyMapSelectionPolicy filter = findApplicableFilter(jgen.getOutputContext()); jgen.writeStartObject(); for (Map.Entry<String, ?> entry : map.entrySet()) { String name = entry.getKey(); if (!filter.matches(name)) { continue; }/* ww w.ja v a 2 s . c o m*/ Object value = entry.getValue(); jgen.writeObjectField(name, value); } jgen.writeEndObject(); }
From source file:net.logstash.logback.composite.CompositeJsonFormatter.java
protected void writeEventToGenerator(JsonGenerator generator, Event event) throws IOException { if (!isStarted()) { throw new IllegalStateException("Encoding attempted before starting."); }/*www . j a v a 2 s. co m*/ generator.writeStartObject(); jsonProviders.writeTo(generator, event); generator.writeEndObject(); generator.flush(); }
From source file:com.arpnetworking.logback.serialization.ObjectAsJsonSerialziationStrategy.java
/** * Serialize an event./*from www . j a va2 s .c o m*/ * * @param event The event. * @param eventName The event name. * @param jsonData The message data as serialized JSON. * @return Serialization of message as a <code>String</code>. */ public String serialize(final ILoggingEvent event, final String eventName, final String jsonData) { final StringWriter jsonWriter = new StringWriter(); try { final JsonGenerator jsonGenerator = _jsonFactory.createGenerator(jsonWriter); // Start wrapper startStenoWrapper(event, eventName, jsonGenerator, _objectMapper); // Write event data jsonGenerator.writeFieldName("data"); if (jsonData == null) { jsonGenerator.writeStartObject(); jsonGenerator.writeEndObject(); } else { jsonGenerator.writeRawValue(jsonData); } // TODO(vkoskela): Support writing null objects as-is via configuration [MAI-333] // e.g. "data":null -- although this is not supported by the current Steno specification // Output throwable writeThrowable(event.getThrowableProxy(), jsonGenerator, _objectMapper); // End wrapper endStenoWrapper(event, eventName, jsonGenerator, _objectMapper); } catch (final IOException e) { return "Unknown exception: " + e.getMessage(); } return jsonWriter.toString(); }
From source file:test.com.azaptree.services.json.JsonUtilsTest.java
@Test public void test_serialize() throws JsonGenerationException, IOException { final ByteArrayOutputStream bos = new ByteArrayOutputStream(); final JsonGenerator generator = JsonUtils.createJsonGenerator(bos); generator.writeStartObject(); generator.writeStringField("stringField", "stringFieldValue"); generator.writeNumberField("numberField", 5); generator.writeEndObject();/*from w w w . j ava 2 s. com*/ generator.close(); final Map<String, Object> test = JsonUtils.parse(new ByteArrayInputStream(bos.toByteArray())); Assert.assertEquals(test.get("stringField"), "stringFieldValue"); Assert.assertEquals(test.get("numberField"), 5); }
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 www . j ava2 s.c om*/ 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(); }
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(); }/*from w w w . j a v a 2 s. c om*/ 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.neo4j.ontology.server.unmanaged.AnnotationResource.java
private void writeJsonNodeObject(JsonGenerator jg, Node term, Label annotationLabel) throws IOException { jg.writeStartObject(); // { jg.writeStringField("uri", term.getProperty("uri").toString()); // uri: "http://www.w3.org/2002/07/owl#Thing" jg.writeStringField("ontId", term.getProperty("name").toString()); // ontId: "OWL:Thing" jg.writeStringField("label", term.getProperty("rdfs:label", term.getProperty("name")).toString()); // ontId: "OWL:Thing" jg.writeFieldName("dataSets"); // dataSets: jg.writeStartArray(); // [ jg.writeEndArray(); // ] writeJsonNodeObjectParents(jg, term, annotationLabel); jg.writeEndObject(); // } }
From source file:com.msopentech.odatajclient.engine.performance.BasicPerfTest.java
@Test public void writeJSONViaLowerlevelLibs() throws IOException { final StringWriter writer = new StringWriter(); final ObjectMapper mapper = new ObjectMapper(); final JsonGenerator jgen = mapper.getFactory().createGenerator(writer); jgen.writeStartObject();//w ww . ja v a2 s .co m jgen.writeStringField("odata.type", "Microsoft.Test.OData.Services.AstoriaDefaultService.Customer"); jgen.writeStringField("Name@odata.type", "Edm.String"); jgen.writeStringField("Name", "A name"); jgen.writeStringField("CustomerId@odata.type", "Edm.Int32"); jgen.writeNumberField("CustomerId", 0); jgen.writeArrayFieldStart("BackupContactInfo"); jgen.writeStartObject(); jgen.writeArrayFieldStart("AlternativeNames"); jgen.writeString("myname"); jgen.writeEndArray(); jgen.writeArrayFieldStart("EmailBag"); jgen.writeString("myname@mydomain.com"); jgen.writeEndArray(); jgen.writeObjectFieldStart("ContactAlias"); jgen.writeStringField("odata.type", "Microsoft.Test.OData.Services.AstoriaDefaultService.Aliases"); jgen.writeArrayFieldStart("AlternativeNames"); jgen.writeString("myAlternativeName"); jgen.writeEndArray(); jgen.writeEndObject(); jgen.writeEndObject(); jgen.writeEndArray(); jgen.writeEndObject(); jgen.flush(); assertFalse(writer.toString().isEmpty()); }
From source file:org.bndtools.rt.repository.server.RepositoryResourceComponent.java
@GET @Path("bundles/{bsn}") @Produces(MediaType.APPLICATION_JSON)//from ww w . j av a 2 s . co m public Response listVersions(@Context UriInfo uriInfo, @PathParam("bsn") String bsn) throws Exception { SortedSet<Version> versions = repo.versions(bsn); UriBuilder uriBuilder = uriInfo.getAbsolutePathBuilder().path("{version}"); StringWriter writer = new StringWriter(); JsonGenerator generator = jsonFactory.createJsonGenerator(writer); generator.writeStartArray(); for (Version version : versions) { generator.writeStartObject(); generator.writeStringField("bsn", bsn); generator.writeStringField("version", version.toString()); generator.writeStringField("href", uriBuilder.build(version).toString()); generator.writeEndObject(); } generator.writeEndArray(); generator.close(); return Response.ok(writer.toString(), MediaType.APPLICATION_JSON).build(); }
From source file:com.messagehub.samples.servlet.MessageList.java
/** * Build message list dependent on the format Message Hub requires. The * message list is in the form: [{ "value": base_64_string }, ...] * * @return {String} String representation of a JSON object. * @throws IOException//from w w w . j a v a2 s .c o m */ public String build() throws IOException { final JsonFactory jsonFactory = new JsonFactory(); ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); JsonGenerator jsonGenerator = null; jsonGenerator = jsonFactory.createGenerator(outputStream); jsonGenerator.writeStartArray(); // Write each message as a JSON object in // the form: // { "value": base_64_string } for (int i = 0; i < this.messages.size(); i++) { jsonGenerator.writeStartObject(); jsonGenerator.writeFieldName("value"); jsonGenerator.writeObject(this.messages.get(i)); jsonGenerator.writeEndObject(); } jsonGenerator.writeEndArray(); // Close underlying streams and return string representation. jsonGenerator.close(); outputStream.close(); return new String(outputStream.toByteArray()); }