List of usage examples for com.fasterxml.jackson.core JsonGenerator writeStartObject
public abstract void writeStartObject() throws IOException, JsonGenerationException;
From source file:io.swagger.inflector.processors.JsonNodeExampleSerializer.java
public void writeValue(JsonGenerator jgen, String field, Example o) throws IOException { if (o instanceof ArrayExample) { ArrayExample obj = (ArrayExample) o; jgen.writeArrayFieldStart(field); for (Example item : obj.getItems()) { if (item.getName() != null) { jgen.writeStartObject(); writeTo(jgen, item);/* w w w .j a v a 2 s .com*/ jgen.writeEndObject(); } else { writeTo(jgen, item); } } jgen.writeEndArray(); } else if (o instanceof BooleanExample) { BooleanExample obj = (BooleanExample) o; if (field != null) { jgen.writeBooleanField(field, obj.getValue()); } else { jgen.writeBoolean(obj.getValue()); } } else if (o instanceof DecimalExample) { DecimalExample obj = (DecimalExample) o; if (field != null) { jgen.writeNumberField(field, obj.getValue()); } else { jgen.writeNumber(obj.getValue()); } } else if (o instanceof DoubleExample) { DoubleExample obj = (DoubleExample) o; if (field != null) { jgen.writeNumberField(field, obj.getValue()); } else { jgen.writeNumber(obj.getValue()); } } else if (o instanceof FloatExample) { FloatExample obj = (FloatExample) o; if (field != null) { jgen.writeNumberField(field, obj.getValue()); } else { jgen.writeNumber(obj.getValue()); } } else if (o instanceof IntegerExample) { IntegerExample obj = (IntegerExample) o; if (field != null) { jgen.writeNumberField(field, obj.getValue()); } else { jgen.writeNumber(obj.getValue()); } } else if (o instanceof LongExample) { LongExample obj = (LongExample) o; if (field != null) { jgen.writeNumberField(field, obj.getValue()); } else { jgen.writeNumber(obj.getValue()); } } else if (o instanceof ObjectExample) { ObjectExample obj = (ObjectExample) o; if (field != null) { jgen.writeObjectField(field, obj); } } else if (o instanceof StringExample) { StringExample obj = (StringExample) o; if (field != null) { jgen.writeStringField(field, obj.getValue()); } else { jgen.writeString(obj.getValue()); } } }
From source file:org.bndtools.rt.repository.server.RepositoryResourceComponent.java
@GET @Path("bundles") @Produces(MediaType.APPLICATION_JSON)/* w ww . ja v a2 s.c o m*/ public Response listBundles(@Context UriInfo uriInfo) throws Exception { MultivaluedMap<String, String> queryParams = uriInfo.getQueryParameters(); List<String> patterns = queryParams.get("pattern"); if (patterns == null || patterns.isEmpty()) return Response.status(Status.BAD_REQUEST).entity("Bundle listing requires 'pattern' query parameter.") .build(); UriBuilder uriBuilder = uriInfo.getAbsolutePathBuilder().path("{bsn}"); StringWriter writer = new StringWriter(); JsonGenerator generator = jsonFactory.createJsonGenerator(writer); generator.writeStartArray(); for (String pattern : patterns) { List<String> list = repo.list(pattern); for (String bsn : list) { generator.writeStartObject(); generator.writeStringField("bsn", bsn); generator.writeStringField("href", uriBuilder.build(bsn).toString()); generator.writeEndObject(); } } generator.writeEndArray(); generator.close(); return Response.ok(writer.toString(), MediaType.APPLICATION_JSON).build(); }
From source file:io.pdef.json.JsonJacksonFormat.java
private <K, V> void writeMap(@Nonnull final Map<K, V> object, final MapDescriptor<K, V> descriptor, final JsonGenerator generator) throws IOException { DataTypeDescriptor<K> keyd = descriptor.getKey(); DataTypeDescriptor<V> valued = descriptor.getValue(); generator.writeStartObject(); for (Map.Entry<K, V> entry : object.entrySet()) { K key = entry.getKey();//ww w .ja v a 2 s .c o m V value = entry.getValue(); if (key == null) { throw new JsonFormatException("Null map key"); } String k = objectFormat.writeMapKey(key, keyd); generator.writeFieldName(k); write(value, valued, generator); } generator.writeEndObject(); }
From source file:DAO.BestellingDAOJson.java
public void createBestelling(Bestelling bestelling, int klant_id) throws SQLException { try {/*from w w w . j a v a 2 s.c o m*/ JsonFactory jfactory = new JsonFactory(); /*** write to file ***/ JsonGenerator jGenerator = jfactory.createJsonGenerator( new FileOutputStream("C:\\Users\\maurice\\Desktop\\Workshoptest.json"), JsonEncoding.UTF8); jGenerator.writeStartObject(); jGenerator.writeNumberField("klantID", bestelling.getKlant_id()); jGenerator.writeNumberField("bestelID", bestelling.getBestelling_id()); jGenerator.writeFieldName("ArtikelBestellingArray"); jGenerator.writeStartArray(); for (ArtikelBestelling artikel : (ArrayList<ArtikelBestelling>) bestelling.getArtikelBestellingList()) { jGenerator.writeStartObject(); jGenerator.writeNumberField("artikelID", artikel.getArtikelPojo().getArtikelID()); jGenerator.writeNumberField("artikelAantal", artikel.getAantal_artikelen()); jGenerator.writeEndObject(); } jGenerator.writeEndArray(); jGenerator.writeEndObject(); jGenerator.close(); } catch (JsonGenerationException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }
From source file:com.basho.riak.client.query.MapReduce.java
/** * Creates the JSON string of the M/R job for submitting to the * {@link RawClient}/*w ww.j a v a 2 s . c o m*/ * * Uses Jackson to write out the JSON string. I'm not very happy with this * method, it is a candidate for change. * * TODO re-evaluate this method, look for something smaller and more elegant. * * @return a String of JSON * @throws RiakException * if, for some reason, we can't create a JSON string. */ private String writeSpec() throws RiakException { final ByteArrayOutputStream out = new ByteArrayOutputStream(); try { JsonGenerator jg = new JsonFactory().createJsonGenerator(out, JsonEncoding.UTF8); jg.setCodec(new ObjectMapper()); jg.writeStartObject(); jg.writeFieldName("inputs"); writeInput(jg); jg.writeFieldName("query"); jg.writeStartArray(); writePhases(jg); jg.writeEndArray(); if (timeout != null) { jg.writeNumberField("timeout", timeout); } jg.writeEndObject(); jg.flush(); return out.toString("UTF8"); } catch (IOException e) { throw new RiakException(e); } }
From source file:com.github.lynxdb.server.api.http.handlers.EpQuery.java
private void saveResponse(OutputStream _output, List<Query> _queries) throws IOException { JsonFactory jFactory = new JsonFactory(); JsonGenerator jGenerator; jGenerator = jFactory.createGenerator(_output, JsonEncoding.UTF8); jGenerator.writeStartArray();/*from w ww .j a v a 2 s .com*/ for (Query q : _queries) { TimeSerie ts; ts = engine.query(q); jGenerator.writeStartObject(); jGenerator.writeStringField("metric", q.getName()); //tags jGenerator.writeObjectFieldStart("tags"); if (q.getTags() != null) { for (String tagk : q.getTags().keySet()) { jGenerator.writeStringField(tagk, q.getTags().get(tagk)); } } jGenerator.writeEndObject(); //dps jGenerator.writeObjectFieldStart("dps"); while (ts.hasNext()) { Entry e = ts.next(); jGenerator.writeNumberField(String.valueOf(e.getTime()), e.getValue()); } jGenerator.writeEndObject(); //endQuery jGenerator.writeEndObject(); } jGenerator.writeEndArray(); jGenerator.close(); _output.flush(); _output.close(); }
From source file:net.opentsdb.tree.Leaf.java
/** * Writes the leaf to a JSON object for storage. This is necessary for the CAS * calls and to reduce storage costs since we don't need to store UID names * (particularly as someone may rename a UID) * @return The byte array to store// w w w . ja v a2s.co m */ private byte[] toStorageJson() { final ByteArrayOutputStream output = new ByteArrayOutputStream(display_name.length() + tsuid.length() + 30); try { final JsonGenerator json = JSON.getFactory().createGenerator(output); json.writeStartObject(); // we only need to write a small amount of information json.writeObjectField("displayName", display_name); json.writeObjectField("tsuid", tsuid); json.writeEndObject(); json.close(); // TODO zero copy? return output.toByteArray(); } catch (IOException e) { throw new RuntimeException(e); } }
From source file:com.ning.metrics.serialization.event.SmileEnvelopeEvent.java
public void writeToJsonGenerator(final JsonGenerator gen) throws IOException { // writes '{eventName:<name>,payload:{<data>}}' --it's kind of silly but ultimately inconsequential to nest them like this. gen.writeStartObject(); gen.writeStringField("eventName", eventName); gen.writeFieldName("payload"); /* Note: output format used depends completely on generator we are being passed * and NOT on which mapper we use -- mappers are format independent and rely * on underlying JsonParser/JsonGenerator for low-level handling. *///from ww w . ja v a 2s . c o m getObjectMapper().writeTree(gen, root); gen.writeEndObject(); }