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.viridiansoftware.metrics.elasticsearch.ElasticsearchReporter.java

private void reportGauge(String index, long timestamp, String name, Gauge gauge) throws IOException {
    Object value = gauge.getValue();
    if (value == null) {
        return;/*from   w  w w.j  a v a2  s .  co  m*/
    }
    StringWriter writer = new StringWriter();
    JsonGenerator jsonGenerator = jsonFactory.createGenerator(writer);
    jsonGenerator.writeStartObject();
    jsonGenerator.writeNumberField(timestampFieldName, timestamp);
    jsonGenerator.writeStringField("@name", prefixMetricName(name));

    if (value instanceof Float) {
        jsonGenerator.writeNumberField("floatValue", (Float) value);
    } else if (value instanceof Double) {
        jsonGenerator.writeNumberField("doubleValue", (Double) value);
    } else if (value instanceof Byte) {
        jsonGenerator.writeNumberField("byteValue", ((Byte) value).intValue());
    } else if (value instanceof Short) {
        jsonGenerator.writeNumberField("shortValue", (Short) value);
    } else if (value instanceof Integer) {
        jsonGenerator.writeNumberField("integerValue", (Integer) value);
    } else if (value instanceof Long) {
        jsonGenerator.writeNumberField("longValue", (Long) value);
    } else {
        jsonGenerator.writeStringField("stringValue", value.toString());
    }

    jsonGenerator.writeEndObject();
    jsonGenerator.flush();
    addReportToBulkRequest(index, MetricElasticsearchTypes.GAUGE, writer.toString());
}

From source file:jp.classmethod.aws.brian.utils.TriggerSerializer.java

@Override
public void serialize(Trigger value, JsonGenerator jgen, SerializerProvider provider)
        throws IOException, JsonProcessingException {
    if (value == null) {
        jgen.writeNull();/* w  w w .  j av a  2  s .c o  m*/
        return;
    }

    jgen.writeStartObject();
    if (value.getKey() != null) {
        if (value.getKey().getGroup() != null)
            jgen.writeStringField("group", value.getKey().getGroup());
        if (value.getKey().getName() != null)
            jgen.writeStringField("name", value.getKey().getName());
    }
    if (value.getDescription() != null) {
        jgen.writeStringField("description", value.getDescription());
    }
    if (value.getStartTime() != null) {
        jgen.writeFieldName("startTime");
        provider.defaultSerializeDateValue(value.getStartTime(), jgen);
    }
    if (value.getEndTime() != null) {
        jgen.writeFieldName("endTime");
        provider.defaultSerializeDateValue(value.getEndTime(), jgen);
    }
    if (value.getNextFireTime() != null) {
        jgen.writeFieldName("nextFireTime");
        provider.defaultSerializeDateValue(value.getNextFireTime(), jgen);
    }
    if (value.getJobDataMap() != null) {
        jgen.writeObjectField("jobDataMap", value.getJobDataMap().getWrappedMap());
    }
    jgen.writeNumberField("misfireInstruction", value.getMisfireInstruction());
    jgen.writeNumberField("priority", value.getPriority());

    if (value instanceof CronTrigger) {
        CronTrigger cronTrigger = (CronTrigger) value;
        jgen.writeFieldName("cronEx");
        jgen.writeStartObject();
        if (cronTrigger.getCronExpression() != null) {
            jgen.writeStringField("cronExpression", cronTrigger.getCronExpression());
        }
        if (cronTrigger.getTimeZone() != null) {
            provider.defaultSerializeField("timeZone", cronTrigger.getTimeZone(), jgen);
        }
        jgen.writeEndObject();
    }
    if (value instanceof SimpleTrigger) {
        SimpleTrigger simpleTrigger = (SimpleTrigger) value;
        jgen.writeFieldName("simple");
        jgen.writeStartObject();
        jgen.writeNumberField("repeatInterval", simpleTrigger.getRepeatInterval());
        jgen.writeNumberField("repeatCount", simpleTrigger.getRepeatCount());
        jgen.writeNumberField("timesTriggered", simpleTrigger.getTimesTriggered());
        jgen.writeEndObject();
    }

    jgen.writeEndObject();
}

From source file:com.proofpoint.event.client.EventFieldMetadata.java

private void writeObject(JsonGenerator jsonGenerator, Object value, Deque<Object> objectStack)
        throws IOException {
    checkForCycles(value, objectStack);//from w  ww  .  j  a  v a2s.  c o m
    objectStack.push(value);
    jsonGenerator.writeStartObject();
    for (EventFieldMetadata field : nestedType.getFields()) {
        field.writeField(jsonGenerator, value, objectStack);
    }
    jsonGenerator.writeEndObject();
    objectStack.pop();
}

From source file:models.GroupSerializer.java

@Override
public void serialize(Group group, JsonGenerator jgen, SerializerProvider provider) throws IOException {
    jgen.writeStartObject();
    jgen.writeStringField("id", group.getId());
    jgen.writeStringField("comment", parseReferencesInComment(group));
    jgen.writeStringField("label", group.getLabel());
    jgen.writeFieldName("unit");
    jgen.writeObject(group.getUnit());/*w  ww  . j  av  a 2s  . c o m*/
    jgen.writeFieldName("type");
    jgen.writeObject(group.getType());

    jgen.writeFieldName("commonKeywords");
    jgen.writeObject(group.getCommonKeywords());

    jgen.writeFieldName("dimensions");
    jgen.writeStartArray();
    for (Dimension dim : group.getDimSet().dimensions) {
        jgen.writeStartObject();
        jgen.writeFieldName("id");
        jgen.writeObject(dim.getId());
        jgen.writeFieldName("keywords");
        jgen.writeObject(dim.keywords);
        jgen.writeFieldName("keywordsPosition");
        jgen.writeObject(dim.keywordsPosition);
        jgen.writeFieldName("orientation");
        jgen.writeObject(group.getDimSet().getDimensionOrientation(dim));
        jgen.writeEndObject();
    }
    jgen.writeEndArray();

    jgen.writeFieldName("overlap");
    jgen.writeStartArray();
    for (Group otherGroup : group.getOverlappingGroups()) {
        jgen.writeStartObject();
        jgen.writeStringField("id", otherGroup.getId());
        jgen.writeStringField("label", otherGroup.getLabel());
        jgen.writeEndObject();
    }
    jgen.writeEndArray();

    jgen.writeFieldName("references");
    jgen.writeStartArray();
    for (Reference ref : group.getReferences()) {
        jgen.writeObject(ref);
    }
    jgen.writeEndArray();

    jgen.writeFieldName("sourceRelations");
    jgen.writeStartArray();
    for (SourceRelation sourceRelation : group.getSourceRelations()) {
        jgen.writeObject(sourceRelation);
    }
    jgen.writeEndArray();

    jgen.writeFieldName("elementsURI");
    jgen.writeStartObject();
    for (SingleElement element : group.getElements()) {
        jgen.writeStringField(StringUtils.join(element.getKeywords(), "+") + "+" + element.getUnit().getId(),
                element.getId());
    }
    jgen.writeEndObject();

    if (group.getType() == Type.COEFFICIENT) {
        jgen.writeFieldName("elementsValue");
        jgen.writeStartObject();
        for (SingleElement element : group.getElements()) {
            Coefficient coeff = (Coefficient) element;
            jgen.writeFieldName(StringUtils.join(element.getKeywords(), "+") + "+" + element.getUnit().getId());
            jgen.writeStartObject();
            jgen.writeNumberField("value", coeff.getValue().value);
            jgen.writeNumberField("uncertainty", coeff.getValue().uncertainty);
            jgen.writeEndObject();
        }
        jgen.writeEndObject();
    } else {
        jgen.writeFieldName("elementsImpactsAndFlows");
        jgen.writeStartObject();
        for (SingleElement element : group.getElements()) {
            Process process = (Process) element;
            jgen.writeFieldName(StringUtils.join(element.getKeywords(), "+") + "+" + element.getUnit().getId());
            jgen.writeStartObject();
            for (ElementaryFlow flow : process.getCalculatedFlows().values()) {
                jgen.writeFieldName(flow.getType().getId());
                jgen.writeStartObject();
                jgen.writeNumberField("value", flow.getValue().value);
                jgen.writeNumberField("uncertainty", flow.getValue().uncertainty);
                jgen.writeEndObject();
            }
            for (Impact impact : process.getImpacts().values()) {
                jgen.writeFieldName(impact.getType().getId());
                jgen.writeStartObject();
                jgen.writeNumberField("value", impact.getValue().value);
                jgen.writeNumberField("uncertainty", impact.getValue().uncertainty);
                jgen.writeEndObject();
            }
            jgen.writeEndObject();
        }
        jgen.writeEndObject();
    }

    jgen.writeEndObject();
}

From source file:de.rallye.mapper.GroupPositionsSerializer.java

@Override
public void serialize(Map<Integer, Node> value, JsonGenerator jgen, SerializerProvider provider)
        throws IOException/*,
                          JsonProcessingException*/ {

    jgen.writeStartArray();/*from  w  w w  .  j ava  2s.c o m*/

    for (Integer groupId : value.keySet()) {
        int nodeId = value.get(groupId).nodeID;

        jgen.writeStartObject();

        jgen.writeFieldName(Group.GROUP_ID);
        jgen.writeNumber(groupId);

        jgen.writeFieldName(Node.NODE_ID);
        jgen.writeNumber(nodeId);

        jgen.writeEndObject();

    }

    jgen.writeEndArray();

}

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

public void toJson(JsonGenerator jsonGen, DecimalFormat df) {
    try {//from ww w  . j  a v a  2 s. c  o 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.microsoft.azure.storage.core.EncryptionData.java

public String serialize() throws IOException {

    final StringWriter strWriter = new StringWriter();
    JsonGenerator generator = Utility.getJsonGenerator(strWriter);

    try {/*from   ww w  . j  av  a2  s  .  c om*/
        // start object
        generator.writeStartObject();

        this.serialize(generator);

        // end object
        generator.writeEndObject();
    } finally {
        generator.close();
    }

    return strWriter.toString();
}

From source file:de.escalon.hypermedia.spring.de.escalon.hypermedia.spring.jackson.ResourcesSerializer.java

@Override
public void serialize(Resources value, JsonGenerator jgen, SerializerProvider provider) throws IOException {

    final SerializationConfig config = provider.getConfig();
    JavaType javaType = config.constructType(value.getClass());

    JsonSerializer<Object> serializer = BeanSerializerFactory.instance.createSerializer(provider, javaType);

    jgen.writeStartObject();
    serializer.serialize(value, jgen, provider);
    jgen.writeEndObject();//  www .ja v  a 2s  .c o m

}

From source file:de.escalon.hypermedia.spring.hydra.ResourceSerializer.java

@Override
public void serialize(Resource value, JsonGenerator jgen, SerializerProvider provider) throws IOException {

    final SerializationConfig config = provider.getConfig();
    JavaType javaType = config.constructType(value.getClass());

    JsonSerializer<Object> serializer = BeanSerializerFactory.instance.createSerializer(provider, javaType);

    jgen.writeStartObject();
    serializer.unwrappingSerializer(NameTransformer.NOP).serialize(value, jgen, provider);

    jgen.writeEndObject();//from  w w w . j a  v a 2s  .  com

}

From source file:com.zenesis.qx.remote.ProxyMethod.java

@Override
public void serialize(JsonGenerator jgen, SerializerProvider provider)
        throws IOException, JsonProcessingException {
    jgen.writeStartObject();

    // Write the return type
    Class clazz = arrayType != null ? arrayType : method.getReturnType();
    if (Proxied.class.isAssignableFrom(clazz)) {
        ProxyType type = ProxyTypeManager.INSTANCE.getProxyType(clazz);
        jgen.writeObjectField("returnType", type);
    } else if (isMap) {
        jgen.writeBooleanField("map", true);
    }//from w ww  . j ava 2 s  .  co  m
    if (cacheResult)
        jgen.writeBooleanField("cacheResult", true);
    if (staticMethod)
        jgen.writeBooleanField("staticMethod", true);

    // Whether to wrap the return
    if (array != null)
        jgen.writeObjectField("returnArray", array.toString().toLowerCase());

    // The parameters - if any are Proxied objects, we need to write their class
    Class[] parameters = method.getParameterTypes();
    if (parameters.length > 0) {
        jgen.writeArrayFieldStart("parameters");
        for (int i = 0; i < parameters.length; i++) {
            if (Proxied.class.isAssignableFrom(parameters[i]))
                jgen.writeObject(ProxyTypeManager.INSTANCE.getProxyType(parameters[i]));
            else
                jgen.writeNull();
        }
        jgen.writeEndArray();
    }

    jgen.writeEndObject();
}