List of usage examples for com.fasterxml.jackson.core JsonGenerator writeEndObject
public abstract void writeEndObject() throws IOException, JsonGenerationException;
From source file:com.cedarsoft.couchdb.io.CouchDocSerializer.java
private static <T> void serializeInlineAttachments(@Nonnull CouchDoc<T> doc, @Nonnull JsonGenerator generator) throws IOException { if (!doc.hasInlineAttachments()) { return;/* ww w. j av a 2 s. co m*/ } generator.writeObjectFieldStart(PROPERTY_ATTACHMENTS); for (CouchDoc.Attachment attachment : doc.getAttachments()) { if (!attachment.isInline()) { throw new IllegalStateException("Cannot serialize non-inline attachments: " + attachment); } generator.writeObjectFieldStart(attachment.getId().asString()); generator.writeStringField(PROPERTY_CONTENT_TYPE, attachment.getContentType().toString()); generator.writeStringField(PROPERTY_DATA, new String(Base64.encode(attachment.getData()))); generator.writeEndObject(); } generator.writeEndObject(); }
From source file:net.echinopsii.ariane.community.plugin.rabbitmq.directory.json.RabbitmqNodeJSON.java
public final static void rabbitmqNode2JSON(RabbitmqNode node, JsonGenerator jgenerator) throws IOException { jgenerator.writeStartObject();/* w w w . j a va 2 s. com*/ jgenerator.writeNumberField(RMQN_ID, node.getId()); jgenerator.writeNumberField(RMQN_VERSION, node.getVersion()); jgenerator.writeStringField(RMQN_NAME, node.getName()); jgenerator.writeStringField(RMQN_URL, node.getUrl()); jgenerator.writeStringField(RMQN_USER, node.getUser()); jgenerator.writeBooleanField(RMQN_PASSWD, node.getPasswd() != null); jgenerator.writeStringField(RMQN_DESCRIPTION, node.getDescription()); if (node.getCluster() != null) jgenerator.writeNumberField(RMQN_CLUSTER, node.getCluster().getId()); else jgenerator.writeNumberField(RMQN_CLUSTER, -1); jgenerator.writeNumberField(RMQN_OSINSTANCE, node.getOsInstance().getId()); jgenerator.writeNumberField(RMQN_SPT_TEAM, node.getSupportTeam().getId()); jgenerator.writeEndObject(); }
From source file:com.cedarsoft.couchdb.DesignDocumentsUpdater.java
/** * Creates the json content for the design document * * @return a string containing the json content for this design document * * @throws IOException/* w w w . j a v a 2s . co m*/ */ public static String createJson(@Nonnull DesignDocument designDocument, @Nullable Revision revision) throws IOException { //noinspection TypeMayBeWeakened StringWriter writer = new StringWriter(); JsonGenerator generator = new JsonFactory().createJsonGenerator(writer); generator.writeStartObject(); generator.writeStringField("_id", designDocument.getId()); if (revision != null) { generator.writeStringField("_rev", revision.asString()); } generator.writeStringField("language", "javascript"); generator.writeObjectFieldStart("views"); for (View view : designDocument.getViews()) { generator.writeObjectFieldStart(view.getName()); generator.writeStringField("map", view.getMappingFunction()); @Nullable String reduceFunction = view.getReduceFunction(); if (reduceFunction != null) { generator.writeStringField("reduce", reduceFunction); } generator.writeEndObject(); } generator.writeEndObject(); generator.writeEndObject(); generator.flush(); return writer.toString(); }
From source file:com.netflix.hystrix.serial.SerialHystrixRequestEvents.java
private static void convertExecutionToJson(JsonGenerator json, HystrixRequestEvents.ExecutionSignature executionSignature, List<Integer> latencies) throws IOException { json.writeStartObject();// w ww.j a v a 2 s . c o m json.writeStringField("name", executionSignature.getCommandName()); json.writeArrayFieldStart("events"); ExecutionResult.EventCounts eventCounts = executionSignature.getEventCounts(); for (HystrixEventType eventType : HystrixEventType.values()) { if (!eventType.equals(HystrixEventType.COLLAPSED)) { if (eventCounts.contains(eventType)) { int eventCount = eventCounts.getCount(eventType); if (eventCount > 1) { json.writeStartObject(); json.writeStringField("name", eventType.name()); json.writeNumberField("count", eventCount); json.writeEndObject(); } else { json.writeString(eventType.name()); } } } } json.writeEndArray(); json.writeArrayFieldStart("latencies"); for (int latency : latencies) { json.writeNumber(latency); } json.writeEndArray(); if (executionSignature.getCachedCount() > 0) { json.writeNumberField("cached", executionSignature.getCachedCount()); } if (executionSignature.getEventCounts().contains(HystrixEventType.COLLAPSED)) { json.writeObjectFieldStart("collapsed"); json.writeStringField("name", executionSignature.getCollapserKey().name()); json.writeNumberField("count", executionSignature.getCollapserBatchSize()); json.writeEndObject(); } json.writeEndObject(); }
From source file:com.netflix.hystrix.contrib.requests.stream.HystrixRequestEventsJsonStream.java
private static void convertExecutionToJson(JsonGenerator json, HystrixRequestEvents.ExecutionSignature executionSignature, List<Integer> latencies) throws IOException { json.writeStartObject();//from ww w . j av a2 s .com json.writeStringField("name", executionSignature.getCommandName()); json.writeArrayFieldStart("events"); ExecutionResult.EventCounts eventCounts = executionSignature.getEventCounts(); for (HystrixEventType eventType : HystrixEventType.values()) { if (eventType != HystrixEventType.COLLAPSED) { if (eventCounts.contains(eventType)) { int eventCount = eventCounts.getCount(eventType); if (eventCount > 1) { json.writeStartObject(); json.writeStringField("name", eventType.name()); json.writeNumberField("count", eventCount); json.writeEndObject(); } else { json.writeString(eventType.name()); } } } } json.writeEndArray(); json.writeArrayFieldStart("latencies"); for (int latency : latencies) { json.writeNumber(latency); } json.writeEndArray(); if (executionSignature.getCachedCount() > 0) { json.writeNumberField("cached", executionSignature.getCachedCount()); } if (executionSignature.getEventCounts().contains(HystrixEventType.COLLAPSED)) { json.writeObjectFieldStart("collapsed"); json.writeStringField("name", executionSignature.getCollapserKey().name()); json.writeNumberField("count", executionSignature.getCollapserBatchSize()); json.writeEndObject(); } json.writeEndObject(); }
From source file:eu.project.ttc.readers.TermSuiteJsonCasSerializer.java
private static void writeSDI(JsonGenerator jg, JCas jCas) throws IOException { SourceDocumentInformation sdi = (SourceDocumentInformation) jCas .getAnnotationIndex(SourceDocumentInformation.type).iterator().next(); jg.writeStartObject();//from w w w. j a v a 2s. c o m writeStringField(jg, F_URI, sdi.getUri()); writeIntField(jg, F_OFFSET_IN_SOURCE, sdi.getOffsetInSource()); writeIntField(jg, F_DOCUMENT_INDEX, sdi.getDocumentIndex()); writeIntField(jg, F_NB_DOCUMENTS, sdi.getNbDocuments()); writeIntField(jg, F_DOCUMENT_SIZE, sdi.getDocumentSize()); writeLongField(jg, F_CUMULATED_DOCUMENT_SIZE, sdi.getCumulatedDocumentSize()); writeLongField(jg, F_CORPUS_SIZE, sdi.getCorpusSize()); writeBooleanField(jg, F_LAST_SEGMENT, sdi.getLastSegment()); writeOffsets(jg, sdi); jg.writeEndObject(); }
From source file:net.echinopsii.ariane.community.core.directory.wat.json.ds.technical.network.RoutingAreaJSON.java
public final static void routingArea2JSON(RoutingArea routingArea, JsonGenerator jgenerator) throws IOException { jgenerator.writeStartObject();/*from w w w. ja v a 2s. c o m*/ jgenerator.writeNumberField(RAREA_ID, routingArea.getId()); jgenerator.writeNumberField(RAREA_VERSION, routingArea.getVersion()); jgenerator.writeStringField(RAREA_NAME, routingArea.getName()); jgenerator.writeStringField(RAREA_TYPE, routingArea.getType()); jgenerator.writeStringField(RAREA_MULTICAST, routingArea.getMulticast()); jgenerator.writeStringField(RAREA_DESCRIPTION, routingArea.getDescription()); jgenerator.writeArrayFieldStart(RAREA_SUBNETS_ID); for (Subnet subnet : routingArea.getSubnets()) jgenerator.writeNumber(subnet.getId()); jgenerator.writeEndArray(); jgenerator.writeArrayFieldStart(RAREA_DC_ID); for (Datacenter dc : routingArea.getDatacenters()) jgenerator.writeNumber(dc.getId()); jgenerator.writeEndArray(); jgenerator.writeEndObject(); }
From source file:io.protostuff.JsonIOUtil.java
/** * Serializes the {@code messages} into the generator using the given schema. */// w w w . j a v a2 s . c o m public static <T> void writeListTo(JsonGenerator generator, List<T> messages, Schema<T> schema, boolean numeric) throws IOException { generator.writeStartArray(); if (messages.isEmpty()) { generator.writeEndArray(); return; } final JsonOutput output = new JsonOutput(generator, numeric, schema); for (T m : messages) { generator.writeStartObject(); schema.writeTo(output, m); if (output.isLastRepeated()) generator.writeEndArray(); generator.writeEndObject(); output.reset(); } generator.writeEndArray(); }
From source file:jvmoptions.OptionAnalyzer.java
static Path toJson(String java6, String java7, String java8) throws Exception { Map<String, Map<String, String>> map6 = makeMap(java6); Map<String, Map<String, String>> map7 = makeMap(java7); Map<String, Map<String, String>> map8 = makeMap(java8); Path output = Paths.get("result", filename("json")); JsonFactory factory = new JsonFactory(); JsonGenerator jg = factory.createGenerator(output.toFile(), JsonEncoding.UTF8).useDefaultPrettyPrinter(); jg.writeStartObject();/*w w w . j a v a2 s . c o m*/ Stream.of(map6, map7, map8).map(Map::keySet).flatMap(Collection::stream).sorted().distinct().forEach(k -> { try { jg.writeFieldName(k); jg.writeStartObject(); Map<String, String> base = pick(k, map8, map7, map6); jg.writeStringField("kind", base.get("kind")); jg.writeStringField("type", base.get("type")); jg.writeStringField("description", base.get("description")); jg.writeStringField("file", base.get("file")); write(jg, "java6", map6.get(k)); write(jg, "java7", map7.get(k)); write(jg, "java8", map8.get(k)); jg.writeEndObject(); } catch (IOException e) { throw new UncheckedIOException(e); } }); jg.writeEndObject(); jg.close(); return output; }
From source file:com.msopentech.odatajclient.engine.data.json.DOMTreeUtilsV4.java
public static void writeSubtree(final ODataClient client, final JsonGenerator jgen, final Node content, final boolean propType) throws IOException { for (Node child : XMLUtils.getChildNodes(content, Node.ELEMENT_NODE)) { final String childName = XMLUtils.getSimpleName(child); final Node typeAttr = child.getAttributes().getNamedItem(ODataConstants.ATTR_M_TYPE); if (typeAttr != null && EdmSimpleType.isGeospatial(typeAttr.getTextContent())) { jgen.writeStringField(/*from w w w . j ava2 s. c om*/ propType ? ODataConstants.JSON_TYPE : childName + "@" + ODataConstants.JSON_TYPE, typeAttr.getTextContent()); jgen.writeObjectFieldStart(childName); GeospatialJSONHandler.serialize(jgen, (Element) child, typeAttr.getTextContent()); jgen.writeEndObject(); } else if (XMLUtils.hasOnlyTextChildNodes(child)) { if (child.hasChildNodes()) { final String out; if (typeAttr == null) { out = child.getChildNodes().item(0).getNodeValue(); } else { if (typeAttr.getTextContent().startsWith("Edm.")) { final EdmSimpleType type = EdmSimpleType.fromValue(typeAttr.getTextContent()); final ODataPrimitiveValue value = client.getPrimitiveValueBuilder().setType(type) .setText(child.getChildNodes().item(0).getNodeValue()).build(); out = value.toString(); jgen.writeStringField(childName + "@" + ODataConstants.JSON_TYPE, type.toString()); } else { // enum out = child.getTextContent(); jgen.writeStringField(childName + "@" + ODataConstants.JSON_TYPE, typeAttr.getTextContent()); } } jgen.writeStringField(childName, out); } else { if (child.getAttributes().getNamedItem(ODataConstants.ATTR_NULL) == null) { if (typeAttr != null && EdmSimpleType.String.toString().equals(typeAttr.getTextContent())) { jgen.writeStringField(childName + "@" + ODataConstants.JSON_TYPE, typeAttr.getTextContent()); jgen.writeStringField(childName, StringUtils.EMPTY); } else { jgen.writeArrayFieldStart(childName); jgen.writeEndArray(); } } else { jgen.writeNullField(childName); } } } else { if (XMLUtils.hasElementsChildNode(child)) { jgen.writeArrayFieldStart(childName); for (Node nephew : XMLUtils.getChildNodes(child, Node.ELEMENT_NODE)) { if (XMLUtils.hasOnlyTextChildNodes(nephew)) { jgen.writeString(nephew.getChildNodes().item(0).getNodeValue()); } else { jgen.writeStartObject(); DOMTreeUtils.writeSubtree(client, jgen, nephew); jgen.writeEndObject(); } } jgen.writeEndArray(); } else { jgen.writeObjectFieldStart(childName); if (typeAttr != null) { jgen.writeStringField("@" + ODataConstants.JSON_TYPE, typeAttr.getTextContent()); } DOMTreeUtils.writeSubtree(client, jgen, child); jgen.writeEndObject(); } } } }