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:org.solmix.datax.wmix.serializer.DataServiceInfoSerializer.java

/**
 * {@inheritDoc}//ww w  .j  av a 2 s.  c om
 * 
 * @see com.fasterxml.jackson.databind.JsonSerializer#serialize(java.lang.Object, com.fasterxml.jackson.core.JsonGenerator, com.fasterxml.jackson.databind.SerializerProvider)
 */
@Override
public void serialize(DataServiceInfo value, JsonGenerator jgen, SerializerProvider provider)
        throws IOException, JsonProcessingException {
    jgen.writeStartObject();
    jgen.writeStringField("ID", value.getId());
    //        jgen.writeStringField("recordXPath", "/data");
    jgen.writeStringField("dataFormat", "json");
    jgen.writeBooleanField("clientOnly", false);
    List<FieldInfo> fields = value.getFields();
    if (DataUtils.isNotNullAndEmpty(fields)) {
        jgen.writeFieldName("fields");
        jgen.writeStartArray();

        for (FieldInfo f : fields) {
            jgen.writeObject(convertFiledToMap(f));

        }
        jgen.writeEndArray();
    }
    Collection<OperationInfo> operations = value.getOperations();
    if (operations != null) {
        Iterator<OperationInfo> it = operations.iterator();
        jgen.writeFieldName("operationBindings");
        jgen.writeStartArray();
        while (it.hasNext()) {
            OperationInfo oi = it.next();
            jgen.writeStartObject();
            jgen.writeStringField("operationType", oi.getType().value());
            jgen.writeStringField("operationId", oi.getId());
            jgen.writeEndObject();
        }
        jgen.writeEndArray();
    }
    jgen.writeEndObject();
}

From source file:org.eclipse.winery.common.json.TTopologyTemplateSerializer.java

/**
 * Does NOT wrap the result into an object. Assumes that the current
 * position at jgen is in an object/*from  w w  w  . j ava 2s . c o  m*/
 *
 * @param value the list of entity templates to serialize
 */
public void serialize(List<TEntityTemplate> value, JsonGenerator jgen, SerializerProvider provider)
        throws IOException {
    List<TRelationshipTemplate> relationshipTemplates = new ArrayList<>();

    jgen.writeFieldName("nodeTemplates");
    jgen.writeStartObject();
    for (TEntityTemplate template : value) {
        if (template instanceof TNodeTemplate) {
            // write out as <id> : <default serialization>
            jgen.writeFieldName(template.getId());
            provider.defaultSerializeValue(template, jgen);

        } else {
            assert (template instanceof TRelationshipTemplate);
            relationshipTemplates.add((TRelationshipTemplate) template);
        }
    }
    jgen.writeEndObject();

    jgen.writeFieldName("relationshipTemplates");
    jgen.writeStartObject();
    for (TRelationshipTemplate template : relationshipTemplates) {
        // write out as <id> : <default serialization>
        jgen.writeFieldName(template.getId());
        provider.defaultSerializeValue(template, jgen);
    }
    jgen.writeEndObject();
}

From source file:com.baasbox.configuration.PropertiesConfigurationHelper.java

public static String dumpConfigurationSectionAsFlatJson(String section) {
    Class en = CONFIGURATION_SECTIONS.get(section);
    try {//from  www . j  a  va  2s .  co  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.ntsync.shared.RawContact.java

private static void writeAddress(StringBuilder hashValue, JsonGenerator g, List<RawAddressData> list)
        throws IOException {
    if (list != null) {
        g.writeArrayFieldStart(ContactConstants.STRUCTUREDPOSTAL);
        for (RawAddressData listItem : list) {
            g.writeStartObject();
            g.writeStringField(ContactConstants.TYPE, String.valueOf(listItem.getType().getVal()));
            writeField(g, ContactConstants.LABEL, listItem.getLabel());

            writeField(g, ContactConstants.STREET, listItem.getStreet());
            writeField(g, ContactConstants.POBOX, listItem.getPobox());
            writeField(g, ContactConstants.POSTCODE, listItem.getPostcode());
            writeField(g, ContactConstants.COUNTRY, listItem.getCountry());
            writeField(g, ContactConstants.CITY, listItem.getCity());
            writeField(g, ContactConstants.REGION, listItem.getRegion());
            writeField(g, ContactConstants.NEIGHBORHOOD, listItem.getNeighborhood());

            if (listItem.isSuperPrimary()) {
                g.writeBooleanField(ContactConstants.SUPERPRIMARY, true);
            }//  w  w  w  . ja va  2  s.  c o  m
            if (listItem.isPrimary()) {
                g.writeBooleanField(ContactConstants.PRIMARY, true);
            }
            g.writeEndObject();

            hashValue.append(listItem.getStreet());
            hashValue.append(':');
            hashValue.append(listItem.getType().getVal());
        }
        g.writeEndArray();
    }
}

From source file:com.attribyte.essem.es.BooleanQuery.java

public void generate(final JsonGenerator generator) throws IOException {

    if (isEmpty()) {
        return; //Write nothing...there's no constraint.
    }//from  w  w  w.  j a  va  2  s  .  c  o m

    generator.writeStartObject();
    {
        generator.writeObjectFieldStart("bool");
        {
            if (mustTerms.size() > 0) {
                generator.writeArrayFieldStart("must");
                for (QueryComponent query : mustTerms) {
                    query.generate(generator);
                }
                generator.writeEndArray();
            }

            if (mustNotTerms.size() > 0) {
                generator.writeArrayFieldStart("must_not");
                for (QueryComponent query : mustNotTerms) {
                    query.generate(generator);
                }
                generator.writeEndArray();
            }

            if (shouldTerms.size() > 0) {
                generator.writeArrayFieldStart("should");
                for (QueryComponent query : shouldTerms) {
                    query.generate(generator);
                }
                generator.writeEndArray();
            }
        }
        generator.writeEndObject();
    }
    generator.writeEndObject();

}

From source file:com.cloudera.exhibit.server.json.ExhibitSerializer.java

@Override
public void serialize(Exhibit exhibit, JsonGenerator gen, SerializerProvider provider) throws IOException {
    ExhibitDescriptor desc = exhibit.descriptor();
    // start object
    gen.writeStartObject();

    // Write attrs
    gen.writeObjectFieldStart("attrs");
    serializeObs(exhibit.attributes(), exhibit.attributes().descriptor(), gen);
    gen.writeEndObject();//from  w w  w  .  j a  va2s.  co m

    // Write frame column names
    gen.writeObjectFieldStart("columns");
    for (Map.Entry<String, ObsDescriptor> fd : desc.frames().entrySet()) {
        gen.writeArrayFieldStart(fd.getKey());
        for (ObsDescriptor.Field f : fd.getValue()) {
            // TODO: type info?
            gen.writeString(f.name);
        }
        gen.writeEndArray();
    }
    gen.writeEndObject();

    // Write frame obs
    gen.writeObjectFieldStart("frames");
    for (Map.Entry<String, ObsDescriptor> fd : desc.frames().entrySet()) {
        gen.writeArrayFieldStart(fd.getKey());
        ObsDescriptor od = fd.getValue();
        for (Obs obs : exhibit.frames().get(fd.getKey())) {
            gen.writeStartArray();
            serializeObsArray(obs, fd.getValue(), gen);
            gen.writeEndArray();
        }
        gen.writeEndArray();
    }
    gen.writeEndObject();

    // finish object
    gen.writeEndObject();
}

From source file:org.springframework.data.couchbase.core.convert.translation.JacksonTranslationService.java

/**
 * Recursively iterates through the sources and adds it to the JSON generator.
 *
 * @param source the source document/*www. jav a 2  s.  c o m*/
 * @param generator the JSON generator.
 *
 * @throws IOException
 */
private void encodeRecursive(final CouchbaseStorable source, final JsonGenerator generator) throws IOException {
    generator.writeStartObject();

    for (Map.Entry<String, Object> entry : ((CouchbaseDocument) source).export().entrySet()) {
        String key = entry.getKey();
        Object value = entry.getValue();
        generator.writeFieldName(key);
        if (value instanceof CouchbaseDocument) {
            encodeRecursive((CouchbaseDocument) value, generator);
            continue;
        }

        final Class<?> clazz = value.getClass();

        if (simpleTypeHolder.isSimpleType(clazz) && !isEnumOrClass(clazz)) {
            generator.writeObject(value);
        } else {
            objectMapper.writeValue(generator, value);
        }

    }

    generator.writeEndObject();
}

From source file:com.ntsync.shared.RawContact.java

private static void writeList(StringBuilder hashValue, JsonGenerator g, String key,
        List<? extends IListRawData<?>> list, boolean hashRel) throws IOException {
    if (list != null) {
        g.writeArrayFieldStart(key);//from  w w  w.  ja  va  2s.c  om
        for (IListRawData<?> listItem : list) {
            g.writeStartObject();
            writeField(g, ContactConstants.DATA, listItem.getData());
            g.writeStringField(ContactConstants.TYPE, String.valueOf(listItem.getType().getVal()));
            writeField(g, ContactConstants.LABEL, listItem.getLabel());
            if (listItem.isSuperPrimary()) {
                g.writeBooleanField(ContactConstants.SUPERPRIMARY, true);
            }
            if (listItem.isPrimary()) {
                g.writeBooleanField(ContactConstants.PRIMARY, true);
            }
            g.writeEndObject();

            if (hashRel) {
                hashValue.append(listItem.getData());
                hashValue.append(':');
                hashValue.append(listItem.getType().getVal());
            }
        }
        g.writeEndArray();
    }
}

From source file:com.strategicgains.hyperexpress.serialization.siren.jackson.SirenResourceSerializer.java

@Override
public void serialize(SirenResource resource, JsonGenerator jgen, SerializerProvider provider)
        throws IOException, JsonProcessingException {
    jgen.writeStartObject();
    renderJson(resource, jgen);//from  w w w.j a va2 s .com
    jgen.writeEndObject();
}

From source file:com.viridiansoftware.metrics.elasticsearch.ElasticsearchReporter.java

private void reportCounter(String index, long timestamp, String name, Counter counter) throws IOException {
    StringWriter writer = new StringWriter();
    JsonGenerator jsonGenerator = jsonFactory.createGenerator(writer);
    jsonGenerator.writeStartObject();
    jsonGenerator.writeNumberField(timestampFieldName, timestamp);
    jsonGenerator.writeStringField("@name", prefixMetricName(name));
    jsonGenerator.writeNumberField("count", counter.getCount());
    jsonGenerator.writeEndObject();//from  w ww  .j  a v  a2 s .co  m
    jsonGenerator.flush();
    addReportToBulkRequest(index, MetricElasticsearchTypes.COUNTER, writer.toString());
}