Example usage for com.fasterxml.jackson.core JsonGenerator writeStartObject

List of usage examples for com.fasterxml.jackson.core JsonGenerator writeStartObject

Introduction

In this page you can find the example usage for com.fasterxml.jackson.core JsonGenerator writeStartObject.

Prototype

public abstract void writeStartObject() throws IOException, JsonGenerationException;

Source Link

Document

Method for writing starting marker of a JSON Object value (character '{'; plus possible white space decoration if pretty-printing is enabled).

Usage

From source file:com.msopentech.odatajclient.engine.data.json.JSONEntrySerializer.java

@Override
protected void doSerializeV4(AbstractJSONEntry<AbstractLinkResource<?, ?>> entry, JsonGenerator jgen,
        SerializerProvider provider) throws IOException, JsonProcessingException {
    final String annotationPrefix = "@";

    jgen.writeStartObject();

    if (entry.getMetadata() != null) {
        jgen.writeStringField(annotationPrefix + ODataConstants.JSON_METADATA,
                entry.getMetadata().toASCIIString());
    }//from  www.  j  a  v  a 2  s.  co  m
    if (StringUtils.isNotBlank(entry.getType())) {
        jgen.writeStringField(annotationPrefix + ODataConstants.JSON_TYPE, entry.getType());
    }
    if (entry.getId() != null) {
        jgen.writeStringField(annotationPrefix + ODataConstants.JSON_ID, entry.getId());
    }

    if (entry.getSelfLink() != null) {
        jgen.writeStringField(annotationPrefix + ODataConstants.JSON_READ_LINK, entry.getSelfLink().getHref());
    }

    if (entry.getEditLink() != null) {
        jgen.writeStringField(annotationPrefix + ODataConstants.JSON_EDIT_LINK, entry.getEditLink().getHref());
    }

    if (entry.getMediaContentSource() != null) {
        jgen.writeStringField(annotationPrefix + ODataConstants.JSON_MEDIAREAD_LINK,
                entry.getMediaContentSource());
    }
    if (entry.getMediaContentType() != null) {
        jgen.writeStringField(annotationPrefix + ODataConstants.JSON_MEDIA_CONTENT_TYPE,
                entry.getMediaContentType());
    }

    final Map<String, List<String>> entitySetLinks = new HashMap<String, List<String>>();

    for (AbstractLinkResource link : (List<? extends AbstractLinkResource<?, ?>>) entry.getNavigationLinks()) {
        if (link.getInlineEntry() != null) {
            jgen.writeObjectField(link.getTitle(), link.getInlineEntry());
        } else if (link.getInlineFeed() != null) {
            jgen.writeObjectField(link.getTitle(), link.getInlineFeed());
        } else {
            ODataLinkType type = null;
            try {
                type = ODataLinkType.fromString(link.getRel(), link.getType());
            } catch (IllegalArgumentException e) {
                // ignore
            }

            if (type == ODataLinkType.ENTITY_SET_NAVIGATION) {
                final List<String> uris;
                if (entitySetLinks.containsKey(link.getTitle())) {
                    uris = entitySetLinks.get(link.getTitle());
                } else {
                    uris = new ArrayList<String>();
                    entitySetLinks.put(link.getTitle(), uris);
                }
                uris.add(link.getHref());
            } else {
                jgen.writeStringField(link.getTitle() + ODataConstants.JSON_BIND_LINK_SUFFIX, link.getHref());
            }
        }
    }
    for (Map.Entry<String, List<String>> entitySetLink : entitySetLinks.entrySet()) {
        jgen.writeArrayFieldStart(entitySetLink.getKey() + ODataConstants.JSON_BIND_LINK_SUFFIX);
        for (String uri : entitySetLink.getValue()) {
            jgen.writeString(uri);
        }
        jgen.writeEndArray();
    }

    for (AbstractLinkResource link : (List<? extends AbstractLinkResource<?, ?>>) entry.getMediaEditLinks()) {
        if (link.getTitle() == null) {
            jgen.writeStringField(annotationPrefix + ODataConstants.JSON_MEDIAEDIT_LINK, link.getHref());
        }

        if (link.getInlineEntry() != null) {
            jgen.writeObjectField(link.getTitle(), link.getInlineEntry());
        }
        if (link.getInlineFeed() != null) {
            jgen.writeObjectField(link.getTitle(), link.getInlineFeed());
        }
    }

    if (entry.getMediaEntryProperties() == null) {
        DOMTreeUtils.writeSubtree(client, jgen, entry.getContent());
    } else {
        DOMTreeUtils.writeSubtree(client, jgen, entry.getMediaEntryProperties());
    }

    jgen.writeEndObject();
}

From source file:org.neo4j.ontology.server.unmanaged.AnnotationResource.java

private void writeJsonNodeObject(JsonGenerator jg, Node term, Label annotationLabel, List<Long> dataSetsId)
        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(); // [
    for (Long dataSetId : dataSetsId) {
        jg.writeNumber(dataSetId); // 123
    }/*  w w  w.ja  v a 2s . co  m*/
    jg.writeEndArray(); // ]
    writeJsonNodeObjectParents(jg, term, annotationLabel);
    jg.writeEndObject(); // }
}

From source file:org.neo4j.ontology.server.unmanaged.AnnotationResource.java

private void writeJsonNodeObjectifiedObject(JsonGenerator jg, Node term, Label annotationLabel,
        List<Long> dataSetsId) 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.writeStartObject(); // {
    for (Long dataSetId : dataSetsId) {
        jg.writeBooleanField(dataSetId.toString(), true); // 123
    }/*from  w  ww  . ja  v  a 2s .  co m*/
    jg.writeEndObject(); // }
    writeJsonNodeObjectifiedObjectParents(jg, term, annotationLabel);
    jg.writeEndObject(); // }
}

From source file:com.joliciel.jochre.search.highlight.HighlightManagerImpl.java

@Override
public void highlight(Highlighter highlighter, Set<Integer> docIds, Set<String> fields, Writer out) {
    try {//from w ww  .ja va 2s  . c  o m
        Map<Integer, Set<HighlightTerm>> termMap = highlighter.highlight(docIds, fields);
        JsonFactory jsonFactory = new JsonFactory();
        JsonGenerator jsonGen = jsonFactory.createGenerator(out);

        jsonGen.writeStartObject();

        for (int docId : docIds) {
            Document doc = indexSearcher.doc(docId);
            jsonGen.writeObjectFieldStart(doc.get("id"));
            jsonGen.writeStringField("path", doc.get("path"));
            jsonGen.writeNumberField("docId", docId);

            jsonGen.writeArrayFieldStart("terms");
            for (HighlightTerm term : termMap.get(docId)) {
                fields.add(term.getField());
                term.toJson(jsonGen, df);
            }
            jsonGen.writeEndArray();

            if (includeText) {
                for (String field : fields) {
                    jsonGen.writeObjectFieldStart("field" + field);
                    Set<HighlightTerm> terms = termMap.get(docId);
                    jsonGen.writeStringField("contents", this.displayHighlights(docId, field, terms));
                    jsonGen.writeEndObject();
                }
            }

            jsonGen.writeEndObject();
        }

        jsonGen.writeEndObject();
        jsonGen.flush();
    } catch (IOException ioe) {
        LogUtils.logError(LOG, ioe);
        throw new RuntimeException(ioe);
    }
}

From source file:org.fluentd.jvmwatcher.parser.JsonSimpleLogParser.java

/**
 * @param generator/*www.ja va 2s  .  c o  m*/
 * @param state
 * @throws IOException 
 * @throws JsonGenerationException 
 */
private void outSimpleLog(JsonGenerator generator, JvmWatchState state)
        throws JsonGenerationException, IOException {
    Collection<JvmStateLog> logArray = state.getStateLog();

    // convert to JSON stream of JvmStateLog.
    for (JvmStateLog elem : logArray) {
        generator.writeStartObject();
        // Common 
        generator.writeNumberField(LOG_DATETIME, elem.getLogDateTime());
        generator.writeStringField(HOST_NAME, this.getHostName());
        generator.writeStringField(PROC_STATE, elem.getProcState().name());
        generator.writeNumberField(JVM_ID, state.getJvmId());
        generator.writeStringField(SHORT_NAME, state.getShortName());
        generator.writeStringField(DISPRAY_NAME, state.getDisplayName());
        // runtime
        generator.writeNumberField(START_TIME, state.getJvmStartTime());
        generator.writeNumberField(LOG_RUN_UP_TIME, elem.getJvmUpTime());
        // cpu usage
        generator.writeNumberField(LOG_CPU_USAGE, elem.getCpuUsage());
        // Compilation
        generator.writeNumberField(LOG_COMPILE_TIME, elem.getCompileTime());
        // Class loading
        generator.writeNumberField(LOG_CLASS_LOAD_CNT, elem.getClassLoadedCount());
        generator.writeNumberField(LOG_CLASS_UNLOAD_CNT, elem.getClassUnloadedCount());
        generator.writeNumberField(LOG_CLASS_TOTAL_LOAD_CNT, elem.getClassTotalLoadedCount());
        // Thread
        generator.writeNumberField(LOG_THREAD_CNT, elem.getThreadCount());
        generator.writeNumberField(LOG_DAEMON_TH_CNT, elem.getDaemonThreadCount());
        generator.writeNumberField(LOG_PEAK_TH_CNT, elem.getPeakThreadCount());
        // Memory
        if (elem.getHeapSize() != null) {
            generator.writeNumberField(LOG_MEM_HEAP_INIT, elem.getHeapSize().getInit());
            generator.writeNumberField(LOG_MEM_HEAP_USED, elem.getHeapSize().getUsed());
            generator.writeNumberField(LOG_MEM_HEAP_COMMITED, elem.getHeapSize().getCommitted());
            generator.writeNumberField(LOG_MEM_HEAP_MAX, elem.getHeapSize().getMax());
        }
        if (elem.getNotheapSize() != null) {
            generator.writeNumberField(LOG_MEM_NOTHEAP_INIT, elem.getNotheapSize().getInit());
            generator.writeNumberField(LOG_MEM_NOTHEAP_USED, elem.getNotheapSize().getUsed());
            generator.writeNumberField(LOG_MEM_NOTHEAP_COMMITED, elem.getNotheapSize().getCommitted());
            generator.writeNumberField(LOG_MEM_NOTHEAP_MAX, elem.getNotheapSize().getMax());
        }
        generator.writeNumberField(LOG_MEM_PENDING_FIN_CNT, elem.getPendingFinalizationCount_());
        // OS Information
        generator.writeNumberField(LOG_OS_TOTAL_PHY_MEM_SIZE, elem.getTotalPhysicalMemorySize());
        generator.writeNumberField(LOG_OS_TOTAL_SWAP_MEM_SIZE, elem.getTotalSwapSpaceSize());
        generator.writeNumberField(LOG_OS_FREE_PHY_MEM_SIZE, elem.getFreePhysicalMemorySize());
        generator.writeNumberField(LOG_OS_FREE_SWAP_MEM_SIZE, elem.getFreeSwapSpaceSize());
        generator.writeNumberField(LOG_OS_COMMIT_VMEM_SIZE, elem.getCommittedVirtualMemorySize());

        Collection<GarbageCollectorState> gcColl = elem.getGcStateCollection();
        if (null != gcColl) {
            // GC INformation (Array output)
            generator.writeFieldName(LOG_KEY_GC_COLLECT);
            generator.writeStartArray();
            for (GarbageCollectorState gcElem : gcColl) {
                generator.writeStartObject();
                generator.writeStringField(LOG_GC_MEM_MGR_NAME, gcElem.getMemoryManagerName());
                generator.writeNumberField(LOG_GC_COLLECTION_CNT, gcElem.getCollectionCount());
                generator.writeNumberField(LOG_GC_COLLECTION_TIME, gcElem.getCollectionTime());
                generator.writeEndObject();
            }
            generator.writeEndArray();
        }

        generator.writeEndObject();
        generator.writeRaw("\n");
    }
}

From source file:com.palominolabs.crm.sf.rest.HttpApiClient.java

@Nonnull
private String getSObjectFieldsAsJson(@Nonnull SObject sObject) throws IOException {
    StringWriter writer = new StringWriter();
    JsonGenerator jsonGenerator = this.objectMapper.getFactory().createGenerator(writer);

    jsonGenerator.writeStartObject();

    for (Map.Entry<String, String> entry : sObject.getAllFields().entrySet()) {
        if (entry.getValue() == null) {
            jsonGenerator.writeNullField(entry.getKey());
        } else {/*from   w  w  w  .jav  a  2s .  c  o  m*/
            jsonGenerator.writeStringField(entry.getKey(), entry.getValue());
        }
    }

    jsonGenerator.writeEndObject();
    jsonGenerator.close();

    writer.close();

    return writer.toString();
}

From source file:ratpack.codahale.metrics.internal.WebSocketReporter.java

private void writeHistograms(JsonGenerator json, SortedMap<String, Histogram> histograms) throws IOException {
    json.writeArrayFieldStart("histograms");
    for (Map.Entry<String, Histogram> entry : histograms.entrySet()) {
        Histogram histogram = entry.getValue();

        json.writeStartObject();
        json.writeStringField("name", entry.getKey());
        json.writeNumberField("count", histogram.getCount());

        Snapshot snapshot = histogram.getSnapshot();
        json.writeNumberField("min", convertDuration(snapshot.getMin()));
        json.writeNumberField("max", convertDuration(snapshot.getMax()));
        json.writeNumberField("mean", convertDuration(snapshot.getMean()));
        json.writeNumberField("stdDev", convertDuration(snapshot.getStdDev()));
        json.writeNumberField("50thPercentile", convertDuration(snapshot.getMedian()));
        json.writeNumberField("75thPercentile", convertDuration(snapshot.get75thPercentile()));
        json.writeNumberField("95thPercentile", convertDuration(snapshot.get95thPercentile()));
        json.writeNumberField("98thPercentile", convertDuration(snapshot.get98thPercentile()));
        json.writeNumberField("99thPercentile", convertDuration(snapshot.get99thPercentile()));
        json.writeNumberField("999thPercentile", convertDuration(snapshot.get999thPercentile()));
        json.writeEndObject();/*from  w w  w. java  2 s.  c  o  m*/
    }
    json.writeEndArray();
}

From source file:de.escalon.hypermedia.hydra.serialize.JacksonHydraSerializer.java

@Override
public void serialize(Object bean, JsonGenerator jgen, SerializerProvider serializerProvider)
        throws IOException {
    if (!isUnwrappingSerializer()) {
        jgen.writeStartObject();
    }/*  www.  j  av a  2  s .  c  om*/
    Deque<String> deque = (Deque<String>) serializerProvider.getAttribute(KEY_LD_CONTEXT);
    if (deque == null) {
        deque = new ArrayDeque<String>();
        serializerProvider.setAttribute(KEY_LD_CONTEXT, deque);
    }

    serializeContext(bean, jgen, serializerProvider, deque);
    serializeType(bean, jgen, serializerProvider);
    serializeFields(bean, jgen, serializerProvider);
    if (!isUnwrappingSerializer()) {
        jgen.writeEndObject();
    }
    deque = (Deque<String>) serializerProvider.getAttribute(KEY_LD_CONTEXT);
    if (!deque.isEmpty()) {
        deque.pop();
    }
}

From source file:com.predic8.membrane.core.interceptor.administration.AdminRESTInterceptor.java

private void writeExchange(AbstractExchange exc, JsonGenerator gen)
        throws IOException, JsonGenerationException, SQLException {
    gen.writeStartObject();
    gen.writeNumberField("id", exc.getId());
    if (exc.getResponse() != null) {
        gen.writeNumberField("statusCode", exc.getResponse().getStatusCode());
        if (exc.getResponseContentLength() != -1) {
            gen.writeNumberField("respContentLength", exc.getResponseContentLength());
        } else {// ww  w  .j a  v  a  2 s .  co  m
            gen.writeNullField("respContentLength");
        }
    } else {
        gen.writeNullField("statusCode");
        gen.writeNullField("respContentLength");
    }
    gen.writeStringField("time", ExchangesUtil.getTime(exc));
    gen.writeStringField("proxy", exc.getRule().toString());
    gen.writeNumberField("listenPort", exc.getRule().getKey().getPort());
    gen.writeStringField("method", exc.getRequest().getMethod());
    gen.writeStringField("path", exc.getRequest().getUri());
    gen.writeStringField("client", exc.getRemoteAddr());
    gen.writeStringField("server", exc.getServer());
    gen.writeNumberField("serverPort", getServerPort(exc));
    gen.writeStringField("reqContentType", exc.getRequestContentType());
    if (exc.getRequestContentLength() != -1) {
        gen.writeNumberField("reqContentLength", exc.getRequestContentLength());
    } else {
        gen.writeNullField("reqContentLength");
    }

    gen.writeStringField("respContentType", exc.getResponseContentType());
    gen.writeStringField("respContentLength", exc.getResponseContentType());

    gen.writeNumberField("duration", exc.getTimeResReceived() - exc.getTimeReqSent());
    gen.writeStringField("msgFilePath", JDBCUtil.getFilePath(exc));
    gen.writeEndObject();
}

From source file:org.neo4j.ontology.server.unmanaged.AnnotationResource.java

private void writeJsonNodeObjectifiedObjectParents(JsonGenerator jg, Node term, Label annotationLabel)
        throws IOException {
    jg.writeFieldName("parents"); // parents:
    jg.writeStartObject(); // {
    for (Relationship subClassOf : term.getRelationships(SUBCLASS_OF, OUTGOING)) {
        if (subClassOf.getEndNode().hasLabel(annotationLabel)) {
            jg.writeBooleanField(subClassOf.getEndNode().getProperty("uri").toString(), true);
        }//  w w  w.  jav a  2  s  . c o  m
    }
    jg.writeEndObject(); // }
}