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

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

Introduction

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

Prototype

public void writeStringField(String fieldName, String value) throws IOException, JsonGenerationException 

Source Link

Document

Convenience method for outputting a field entry ("member") that has a String value.

Usage

From source file:org.apache.olingo.client.core.serialization.JsonSerializer.java

private void complexValue(final JsonGenerator jgen, final EdmTypeInfo typeInfo, final List<Property> value,
        final Linked linked) throws IOException, EdmPrimitiveTypeException {
    jgen.writeStartObject();/*from  w w w. j a v  a 2  s . com*/

    if (typeInfo != null && !isODataMetadataNone(contentType)) {
        jgen.writeStringField(Constants.JSON_TYPE, typeInfo.external());
    }

    for (Property property : value) {
        valuable(jgen, property, property.getName());
    }
    if (linked != null) {
        links(linked, jgen);
    }

    jgen.writeEndObject();
}

From source file:io.mesosphere.mesos.frameworks.cassandra.scheduler.api.NodeController.java

private Response nodeUpdateSeed(final String node, final boolean seed) {
    final CassandraFrameworkProtos.CassandraNode cassandraNode = cluster.findNode(node);
    if (cassandraNode == null) {
        return Response.status(404).build();
    }//from  w ww  .  j av  a 2s. c  o m

    try {
        final boolean seedChanged = cluster.setNodeSeed(cassandraNode, seed);

        return JaxRsUtils.buildStreamingResponse(factory, new StreamingJsonResponse() {
            @Override
            public void write(final JsonGenerator json) throws IOException {
                json.writeStringField("ip", cassandraNode.getIp());
                json.writeStringField("hostname", cassandraNode.getHostname());
                if (!cassandraNode.hasCassandraNodeExecutor()) {
                    json.writeNullField("executorId");
                } else {
                    json.writeStringField("executorId",
                            cassandraNode.getCassandraNodeExecutor().getExecutorId());
                }
                json.writeBooleanField("oldSeedState", cassandraNode.getSeed());

                if (seedChanged) {
                    json.writeBooleanField("success", true);
                    json.writeBooleanField("seedState", seed);
                } else {
                    json.writeBooleanField("success", false);
                    json.writeBooleanField("seedState", cassandraNode.getSeed());
                }

            }
        });
    } catch (final SeedChangeException e) {
        return JaxRsUtils.buildStreamingResponse(factory, Response.Status.BAD_REQUEST,
                new StreamingJsonResponse() {
                    @Override
                    public void write(final JsonGenerator json) throws IOException {
                        json.writeStringField("ip", cassandraNode.getIp());
                        json.writeStringField("hostname", cassandraNode.getHostname());
                        if (!cassandraNode.hasCassandraNodeExecutor()) {
                            json.writeNullField("executorId");
                        } else {
                            json.writeStringField("executorId",
                                    cassandraNode.getCassandraNodeExecutor().getExecutorId());
                        }
                        json.writeBooleanField("oldSeedState", cassandraNode.getSeed());

                        json.writeBooleanField("success", false);
                        json.writeStringField("error", e.getMessage());
                    }
                });
    }

}

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 w  w.  j av  a  2  s  . 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.apache.olingo.commons.core.serialization.JsonSerializer.java

protected void serverLinks(final Linked linked, final JsonGenerator jgen)
        throws IOException, EdmPrimitiveTypeException {
    if (linked instanceof Entity) {
        for (Link link : ((Entity) linked).getMediaEditLinks()) {
            if (StringUtils.isNotBlank(link.getHref())) {
                jgen.writeStringField(
                        link.getTitle() + StringUtils.prependIfMissing(
                                version.getJsonName(ODataServiceVersion.JsonKey.MEDIA_EDIT_LINK), "@"),
                        link.getHref());
            }//from   w  w w . j av  a2s .  co m
        }
    }

    for (Link link : linked.getAssociationLinks()) {
        if (StringUtils.isNotBlank(link.getHref())) {
            jgen.writeStringField(
                    link.getTitle() + version.getJsonName(ODataServiceVersion.JsonKey.ASSOCIATION_LINK),
                    link.getHref());
        }
    }

    for (Link link : linked.getNavigationLinks()) {
        for (Annotation annotation : link.getAnnotations()) {
            valuable(jgen, annotation, link.getTitle() + "@" + annotation.getTerm());
        }

        if (StringUtils.isNotBlank(link.getHref())) {
            jgen.writeStringField(
                    link.getTitle() + version.getJsonName(ODataServiceVersion.JsonKey.NAVIGATION_LINK),
                    link.getHref());
        }

        if (link.getInlineEntity() != null) {
            jgen.writeFieldName(link.getTitle());
            new JsonEntitySerializer(version, serverMode).doSerialize(link.getInlineEntity(), jgen);
        } else if (link.getInlineEntitySet() != null) {
            jgen.writeArrayFieldStart(link.getTitle());
            JsonEntitySerializer entitySerializer = new JsonEntitySerializer(version, serverMode);
            for (Entity subEntry : link.getInlineEntitySet().getEntities()) {
                entitySerializer.doSerialize(subEntry, jgen);
            }
            jgen.writeEndArray();
        }
    }
}

From source file:org.apache.olingo.client.core.serialization.JsonSerializer.java

protected void serverLinks(final Linked linked, final JsonGenerator jgen)
        throws IOException, EdmPrimitiveTypeException {
    if (linked instanceof Entity) {
        for (Link link : ((Entity) linked).getMediaEditLinks()) {
            if (StringUtils.isNotBlank(link.getHref())) {
                jgen.writeStringField(
                        link.getTitle() + StringUtils.prependIfMissing(Constants.JSON_MEDIA_EDIT_LINK, "@"),
                        link.getHref());
            }//from  ww  w .j  av a  2s . com
        }
    }

    for (Link link : linked.getAssociationLinks()) {
        if (StringUtils.isNotBlank(link.getHref())) {
            jgen.writeStringField(link.getTitle() + Constants.JSON_ASSOCIATION_LINK, link.getHref());
        }
    }

    for (Link link : linked.getNavigationLinks()) {
        for (Annotation annotation : link.getAnnotations()) {
            valuable(jgen, annotation, link.getTitle() + "@" + annotation.getTerm());
        }

        if (StringUtils.isNotBlank(link.getHref())) {
            jgen.writeStringField(link.getTitle() + Constants.JSON_NAVIGATION_LINK, link.getHref());
        }

        if (link.getInlineEntity() != null) {
            jgen.writeFieldName(link.getTitle());
            new JsonEntitySerializer(serverMode, contentType).doSerialize(link.getInlineEntity(), jgen);
        } else if (link.getInlineEntitySet() != null) {
            jgen.writeArrayFieldStart(link.getTitle());
            JsonEntitySerializer entitySerializer = new JsonEntitySerializer(serverMode, contentType);
            for (Entity subEntry : link.getInlineEntitySet().getEntities()) {
                entitySerializer.doSerialize(subEntry, jgen);
            }
            jgen.writeEndArray();
        }
    }
}

From source file:org.jmxtrans.embedded.output.StackdriverWriter.java

/**
 * Put the values into the JSON format expected by the Stackdriver custom metrics gateway
 *
  * @param results/* w ww. j a v  a  2s .c  o  m*/
  *            Iterable collection of data points (gauges and counters)
 * @param out
 *            OutputStream to write JSON to
 * @throws IOException
 */
public void serialize(@Nonnull Iterable<QueryResult> results, @Nonnull OutputStream out) throws IOException {
    JsonGenerator g = jsonFactory.createGenerator(out, JsonEncoding.UTF8);
    g.writeStartObject();
    g.writeNumberField("timestamp", System.currentTimeMillis() / 1000);
    g.writeNumberField("proto_version", STACKDRIVER_PROTOCOL_VERSION);
    g.writeArrayFieldStart("data");

    for (QueryResult metric : results) {
        g.writeStartObject();
        g.writeStringField("name", metric.getName());
        if (instanceId != null && !instanceId.isEmpty()) {
            g.writeStringField("instance", instanceId);
        }
        g.writeNumberField("collected_at", metric.getEpoch(TimeUnit.SECONDS));
        if (metric.getValue() instanceof Integer) {
            g.writeNumberField("value", (Integer) metric.getValue());
        } else if (metric.getValue() instanceof Long) {
            g.writeNumberField("value", (Long) metric.getValue());
        } else if (metric.getValue() instanceof Float) {
            g.writeNumberField("value", (Float) metric.getValue());
        } else if (metric.getValue() instanceof Double) {
            g.writeNumberField("value", (Double) metric.getValue());
        }
        g.writeEndObject();
    }

    g.writeEndArray();
    g.writeEndObject();
    g.flush();
    g.close();
}

From source file:com.jxt.web.vo.AgentActiveThreadCountList.java

@Override
public void serialize(AgentActiveThreadCountList agentActiveThreadStatusList, JsonGenerator jgen,
        SerializerProvider provider) throws IOException, JsonProcessingException {
    List<AgentActiveThreadCount> agentActiveThreadRepository = agentActiveThreadStatusList
            .getAgentActiveThreadRepository();

    jgen.writeStartObject();/*w ww.  j a v a2 s.  c  o m*/

    for (AgentActiveThreadCount agentActiveThread : agentActiveThreadRepository) {
        jgen.writeFieldName(agentActiveThread.getAgentId());
        jgen.writeStartObject();

        jgen.writeNumberField("code", agentActiveThread.getCode());
        jgen.writeStringField("message", agentActiveThread.getCodeMessage());

        TCmdActiveThreadCountRes activeThreadCount = agentActiveThread.getActiveThreadCount();
        if (activeThreadCount != null) {
            if (activeThreadCount.getActiveThreadCountSize() >= 4) {
                List<Integer> values = activeThreadCount.getActiveThreadCount();

                jgen.writeFieldName("status");
                jgen.writeStartArray();
                jgen.writeNumber(values.get(0));
                jgen.writeNumber(values.get(1));
                jgen.writeNumber(values.get(2));
                jgen.writeNumber(values.get(3));
                jgen.writeEndArray();
            }
        }

        jgen.writeEndObject();
    }

    jgen.writeEndObject();
}

From source file:io.mesosphere.mesos.frameworks.cassandra.scheduler.api.NodeController.java

/**
 * Update node with specified parameters. Note: node should be restarted for changes to take effect.
 *///from  w  ww .j a v  a2  s.co m
@POST
@Path("/{node}/rackdc")
public Response nodeRackDc(@PathParam("node") String id, RackDcParams params) {
    CassandraFrameworkProtos.CassandraNode node = cluster.findNode(id);
    if (node == null)
        return Response.status(404).build();

    final CassandraFrameworkProtos.CassandraNode.Builder copy = CassandraFrameworkProtos.CassandraNode
            .newBuilder(node);
    CassandraFrameworkProtos.RackDc.Builder rackDc = CassandraFrameworkProtos.RackDc
            .newBuilder(node.getRackDc());

    if (params.rack != null)
        rackDc.setRack(params.rack);
    if (params.dc != null)
        rackDc.setDc(params.dc);

    copy.setRackDc(rackDc);
    cluster.getClusterState().addOrSetNode(copy.build());

    return JaxRsUtils.buildStreamingResponse(factory, new StreamingJsonResponse() {
        @Override
        public void write(final JsonGenerator json) throws IOException {
            json.writeBooleanField("success", true);
            json.writeStringField("rack", copy.getRackDc().getRack());
            json.writeStringField("dc", copy.getRackDc().getDc());
        }
    });
}

From source file:org.h2gis.drivers.geojson.GeoJsonWriteDriver.java

/**
 * Write a GeoJSON feature.//from w  w  w .  j a v  a  2s. com
 *
 * Features in GeoJSON contain a geometry object and additional properties,
 * and a feature collection represents a list of features.
 *
 * A complete GeoJSON data structure is always an object (in JSON terms). In
 * GeoJSON, an object consists of a collection of name/value pairs -- also
 * called members. For each member, the name is always a string. Member
 * values are either a string, number, object, array or one of the literals:
 * true, false, and null. An array consists of elements where each element
 * is a value as described above.
 *
 * Syntax:
 *
 * { "type": "Feature", "geometry":{"type": "Point", "coordinates": [102.0,
 * 0.5]}, "properties": {"prop0": "value0"} }
 *
 * @param writer
 * @param resultSetMetaData
 * @param geoFieldIndex
 */
private void writeFeature(JsonGenerator jsonGenerator, ResultSet rs, int geoFieldIndex)
        throws IOException, SQLException {
    // feature header
    jsonGenerator.writeStartObject();
    jsonGenerator.writeStringField("type", "Feature");
    //Write the first geometry
    writeGeometry((Geometry) rs.getObject(geoFieldIndex), jsonGenerator);
    //Write the properties
    writeProperties(jsonGenerator, rs);
    // feature footer
    jsonGenerator.writeEndObject();
}

From source file:com.cloudera.nav.sdk.client.writer.serde.EntityV9Serializer.java

@Override
protected void writeProperties(Entity t, JsonGenerator jg) throws IOException {
    Map<String, Map<String, Object>> customProperties = Maps.newHashMap();
    for (MPropertyEntry p : registry.getProperties(t.getClass())) {
        MProperty ann = p.getAnnotation();
        if (ann.register()) {
            addCustom(customProperties, p, t);
        } else {/*from w  ww.j a  va2  s  . c om*/
            Object v = p.getValue(t);
            if (v != null) {
                jg.writeObjectField(p.getAttribute(), p.getValue(t));
            }
        }
    }
    String modelName = t.getClass().getAnnotation(MClass.class).model();
    jg.writeStringField("internalType", modelName);

    jg.writeStringField("metaClassName", modelName);
    if (MapUtils.isNotEmpty(customProperties)) {
        jg.writeObjectField("customProperties", customProperties);
    }
}