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
private void serializeContainment(JsonGenerator generator, String key, EReference containment, EObject owner, Object value) throws IOException { if (containment.isMany()) { final Collection<?> values = (Collection<?>) value; generator.writeFieldName(key);//from w ww. j av a2 s . com generator.writeStartArray(); for (Object current : values) { EObject target = (EObject) current; if (isContainmentProxy(owner, target)) { referenceWriter.writeRef(generator, target); } else { generate(generator, target); } } generator.writeEndArray(); } else { generator.writeFieldName(key); if (isContainmentProxy(owner, (EObject) value)) { referenceWriter.writeRef(generator, (EObject) value); } else { generate(generator, (EObject) value); } } }
From source file:models.SourceRelationSerializer.java
@Override public void serialize(SourceRelation relation, JsonGenerator jgen, SerializerProvider provider) throws IOException { jgen.writeStartObject();//from w w w .ja v a 2 s.c o m jgen.writeStringField("id", relation.getId()); jgen.writeNumberField("exponent", relation.getExponent()); jgen.writeFieldName("type"); jgen.writeObject(relation.getType()); jgen.writeFieldName("source"); writeSimplifiedGroup(relation.getSource(), jgen); jgen.writeFieldName("coeff"); writeSimplifiedGroup(relation.getCoeff(), jgen); jgen.writeFieldName("destination"); writeSimplifiedGroup(relation.getDestination(), jgen); jgen.writeFieldName("derivedRelations"); jgen.writeStartArray(); for (DerivedRelation derivedRelation : relation.getDerivedRelations()) { jgen.writeObject(derivedRelation); } jgen.writeEndArray(); jgen.writeEndObject(); }
From source file:ratpack.codahale.metrics.internal.WebSocketReporter.java
@SuppressWarnings("rawtypes") private void writeGauges(JsonGenerator json, SortedMap<String, Gauge> gauges) throws IOException { json.writeArrayFieldStart("gauges"); for (Map.Entry<String, Gauge> entry : gauges.entrySet()) { Gauge gauge = entry.getValue();/*from w ww .java 2 s . c om*/ json.writeStartObject(); json.writeStringField("name", entry.getKey()); try { json.writeFieldName("value"); json.writeObject(gauge.getValue()); } catch (Exception e) { LOGGER.log(Level.FINE, "Exception encountered while reporting [" + entry.getKey() + "]: " + e.getLocalizedMessage()); json.writeNull(); } json.writeEndObject(); } json.writeEndArray(); }
From source file:com.baasbox.configuration.PropertiesConfigurationHelper.java
public static String dumpConfigurationSectionAsFlatJson(String section) { Class en = CONFIGURATION_SECTIONS.get(section); try {//from w w w . j av a 2 s .c o m JsonFactory jfactory = new JsonFactory(); StringWriter sw = new StringWriter(); String enumDescription = ""; JsonGenerator gen = jfactory.createJsonGenerator(sw); gen.writeStartArray(); EnumSet values = EnumSet.allOf(en); for (Object v : values) { String key = (String) (en.getMethod("getKey")).invoke(v); boolean isVisible = (Boolean) (en.getMethod("isVisible")).invoke(v); String valueAsString; if (isVisible) valueAsString = (String) (en.getMethod("getValueAsString")).invoke(v); else valueAsString = "--HIDDEN--"; boolean isEditable = (Boolean) (en.getMethod("isEditable")).invoke(v); boolean isOverridden = (Boolean) (en.getMethod("isOverridden")).invoke(v); String valueDescription = (String) (en.getMethod("getValueDescription")).invoke(v); Class type = (Class) en.getMethod("getType").invoke(v); gen.writeStartObject(); // { gen.writeStringField("key", key); gen.writeStringField("value", valueAsString); gen.writeStringField("description", valueDescription); // ,"description":"description" gen.writeStringField("type", type.getSimpleName()); // ,"type":"type" gen.writeBooleanField("editable", isEditable); gen.writeBooleanField("overridden", isOverridden); gen.writeEndObject(); // } } if (gen.getOutputContext().inArray()) gen.writeEndArray(); // ] gen.close(); return sw.toString(); } catch (Exception e) { BaasBoxLogger.error("Cannot generate a json for " + en.getSimpleName() + " Enum. Is it an Enum that implements the IProperties interface?", e); } return "{}"; }
From source file:com.nebhale.cyclinglibrary.web.json.ItemJsonSerializer.java
@Override public void serialize(Item value, JsonGenerator jgen, SerializerProvider provider) throws IOException { jgen.writeStartObject();/*w w w. j a va2s . c om*/ jgen.writeStringField("name", value.getName()); jgen.writeStringField("shortName", value.getShortName()); jgen.writeArrayFieldStart("links"); jgen.writeObject(new Link("self", "types", value.getTypeId(), "collections", value.getCollectionId(), "items", value)); jgen.writeObject(new Link("points-raw", "types", value.getTypeId(), "collections", value.getCollectionId(), "items", value, "points")); jgen.writeObject(new Link("points-image", "types", value.getTypeId(), "collections", value.getCollectionId(), "items", value, "points")); jgen.writeObject(new Link("points-gpx", "types", value.getTypeId(), "collections", value.getCollectionId(), "items", value, "points")); jgen.writeEndArray(); jgen.writeEndObject(); }
From source file:io.swagger.inflector.processors.JsonNodeExampleSerializer.java
@Override public void serialize(Example value, JsonGenerator jgen, SerializerProvider provider) throws IOException, JsonProcessingException { if (value instanceof ObjectExample) { ObjectExample obj = (ObjectExample) value; jgen.writeStartObject();/* w w w. j a v a 2 s . com*/ writeTo(jgen, obj); jgen.writeEndObject(); } else if (value instanceof ArrayExample) { ArrayExample obj = (ArrayExample) value; jgen.writeStartArray(); for (Example item : obj.getItems()) { if (item instanceof ObjectExample) { jgen.writeStartObject(); } writeTo(jgen, item); if (item instanceof ObjectExample) { jgen.writeEndObject(); } } jgen.writeEndArray(); } else { writeTo(jgen, value); } }
From source file:com.sdl.odata.renderer.json.writer.JsonServiceDocumentWriter.java
/** * The main method for Writer./*from w ww.j a v a2 s. c o m*/ * It builds the service root document according to spec. * * @return output in json * @throws ODataRenderException If unable to render the json service document */ public String buildJson() throws ODataRenderException { LOG.debug("Start building Json service root document"); try (ByteArrayOutputStream stream = new ByteArrayOutputStream()) { JsonGenerator jsonGenerator = JSON_FACTORY.createGenerator(stream, JsonEncoding.UTF8); jsonGenerator.writeStartObject(); jsonGenerator.writeStringField(CONTEXT, getContextURL(uri, entityDataModel)); jsonGenerator.writeArrayFieldStart(VALUE); List<EntitySet> entities = entityDataModel.getEntityContainer().getEntitySets(); for (EntitySet entity : entities) { if (entity.isIncludedInServiceDocument()) { writeObject(jsonGenerator, entity); } } List<Singleton> singletons = entityDataModel.getEntityContainer().getSingletons(); for (Singleton singleton : singletons) { writeObject(jsonGenerator, singleton); } jsonGenerator.writeEndArray(); jsonGenerator.writeEndObject(); jsonGenerator.close(); return stream.toString(StandardCharsets.UTF_8.name()); } catch (IOException e) { throw new ODataRenderException("It is unable to render service document", e); } }
From source file:com.joliciel.jochre.search.highlight.Snippet.java
public void toJson(JsonGenerator jsonGen, DecimalFormat df) { try {//from w ww. j av a2 s . co m jsonGen.writeStartObject(); jsonGen.writeNumberField("docId", docId); jsonGen.writeStringField("field", this.getField()); jsonGen.writeNumberField("start", this.getStartOffset()); jsonGen.writeNumberField("end", this.getEndOffset()); double roundedScore = df.parse(df.format(this.getScore())).doubleValue(); jsonGen.writeNumberField("score", roundedScore); jsonGen.writeArrayFieldStart("terms"); for (HighlightTerm term : this.getHighlightTerms()) { term.toJson(jsonGen, df); } jsonGen.writeEndArray(); // terms 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.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();// www . j av a2s. com 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()); }