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

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

Introduction

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

Prototype

public abstract void writeObject(Object pojo) throws IOException, JsonProcessingException;

Source Link

Document

Method for writing given Java object (POJO) as Json.

Usage

From source file:org.pentaho.metaverse.impl.model.kettle.json.AbstractStepMetaJsonSerializer.java

protected void writeFields(JsonGenerator json, List<RowMetaInterface> fieldMetaList, String arrayObjectName)
        throws IOException {
    json.writeArrayFieldStart(arrayObjectName);
    for (RowMetaInterface fields : fieldMetaList) {
        List<ValueMetaInterface> valueMetaInterfaces = fields.getValueMetaList();
        for (ValueMetaInterface valueMetaInterface : valueMetaInterfaces) {
            FieldInfo fieldInfo = new FieldInfo(valueMetaInterface);
            json.writeObject(fieldInfo);
        }//from w  ww . j a  v  a  2s.  co m
    }
    json.writeEndArray();
}

From source file:org.solmix.datax.wmix.serializer.DataServiceInfoSerializer.java

/**
 * {@inheritDoc}//  w  ww .  jav a 2 s  .c  o m
 * 
 * @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.pentaho.metaverse.impl.model.kettle.json.TransMetaJsonSerializer.java

@Override
protected void serializeSteps(TransMeta meta, JsonGenerator json) throws IOException {
    json.writeArrayFieldStart(JSON_PROPERTY_STEPS);
    for (StepMeta stepMeta : meta.getSteps()) {
        BaseStepMeta step = getBaseStepMetaFromStepMeta(stepMeta);
        LineageRepository repo = getLineageRepository();
        String id = stepMeta.getObjectId() == null ? stepMeta.getName() : stepMeta.getObjectId().toString();
        ObjectId stepId = new StringObjectId(id);
        try {/*w ww .j  a  va 2s.  c  o m*/
            step.saveRep(repo, null, null, stepId);
        } catch (KettleException e) {
            LOGGER.warn(Messages.getString("INFO.Serialization.Trans.Step", stepMeta.getName()), e);
        }
        json.writeObject(step);
    }
    json.writeEndArray();
}

From source file:org.eclipse.winery.repository.resources.entitytypes.relationshiptypes.VisualAppearanceResource.java

@GET
@RestDoc(methodDescription = "@return JSON object to be used at jsPlumb.registerConnectionType('NAME', <data>)")
@Produces(MediaType.APPLICATION_JSON)/*from   w  w w . ja v  a  2s  .c  o  m*/
public Response getConnectionTypeForJsPlumbData() {
    JsonFactory jsonFactory = new JsonFactory();
    StringWriter sw = new StringWriter();
    try {
        JsonGenerator jg = jsonFactory.createGenerator(sw);
        jg.writeStartObject();

        jg.writeFieldName("connector");
        jg.writeString("Flowchart");

        jg.writeFieldName("paintStyle");
        jg.writeStartObject();
        jg.writeFieldName("lineWidth");
        jg.writeNumber(this.getLineWidth());
        jg.writeFieldName("strokeStyle");
        jg.writeObject(this.getColor());
        String dash = this.getDash();
        if (!StringUtils.isEmpty(dash)) {
            String dashStyle = null;
            switch (dash) {
            case "dotted":
                dashStyle = "1 5";
                break;
            case "dotted2":
                dashStyle = "3 4";
                break;
            case "plain":
                // default works
                // otherwise, "1 0" can be used
                break;
            }
            if (dashStyle != null) {
                jg.writeStringField("dashstyle", dashStyle);
            }
        }
        jg.writeEndObject();

        jg.writeFieldName("hoverPaintStyle");
        jg.writeStartObject();
        jg.writeFieldName("strokeStyle");
        jg.writeObject(this.getHoverColor());
        jg.writeEndObject();

        // BEGIN: Overlays

        jg.writeFieldName("overlays");
        jg.writeStartArray();

        // source arrow head
        String head = this.getSourceArrowHead();
        if (!head.equals("none")) {
            jg.writeStartArray();
            jg.writeString(head);

            jg.writeStartObject();

            jg.writeFieldName("location");
            jg.writeNumber(0);

            // arrow should point towards the node and not away from it
            jg.writeFieldName("direction");
            jg.writeNumber(-1);

            jg.writeFieldName("width");
            jg.writeNumber(20);

            jg.writeFieldName("length");
            jg.writeNumber(12);

            jg.writeEndObject();
            jg.writeEndArray();
        }

        // target arrow head
        head = this.getTargetArrowHead();
        if (!head.equals("none")) {
            jg.writeStartArray();
            jg.writeString(head);
            jg.writeStartObject();
            jg.writeFieldName("location");
            jg.writeNumber(1);
            jg.writeFieldName("width");
            jg.writeNumber(20);
            jg.writeFieldName("length");
            jg.writeNumber(12);
            jg.writeEndObject();
            jg.writeEndArray();
        }

        // Type in brackets on the arrow
        jg.writeStartArray();
        jg.writeString("Label");
        jg.writeStartObject();
        jg.writeStringField("id", "label");
        //jg.writeStringField("label", "(" + ((RelationshipTypeResource) this.res).getName() + ")");
        jg.writeStringField("label", "");
        jg.writeStringField("cssClass", "relationshipTypeLabel");
        jg.writeFieldName("location");
        jg.writeNumber(0.5);
        jg.writeEndObject();
        jg.writeEndArray();

        jg.writeEndArray();

        // END: Overlays

        jg.writeEndObject();

        jg.close();
    } catch (Exception e) {
        VisualAppearanceResource.logger.error(e.getMessage(), e);
        return Response.status(Status.INTERNAL_SERVER_ERROR).entity(e).build();
    }
    String res = sw.toString();
    return Response.ok(res).build();
}

From source file:org.pentaho.metaverse.impl.model.kettle.json.AbstractJobEntryJsonSerializer.java

protected void writeExternalResources(T meta, JsonGenerator json, SerializerProvider serializerProvider)
        throws IOException, JsonGenerationException {

    json.writeArrayFieldStart(JSON_PROPERTY_EXTERNAL_RESOURCES);
    JobMeta jobMeta = new JobMeta();
    if (meta.getParentJob() != null && meta.getParentJob().getJobMeta() != null) {
        jobMeta = meta.getParentJob().getJobMeta();
    }/* w  w w .j  a v  a  2  s. c om*/
    List<ResourceReference> dependencies = meta.getResourceDependencies(jobMeta);
    for (ResourceReference dependency : dependencies) {
        for (ResourceEntry resourceEntry : dependency.getEntries()) {
            IExternalResourceInfo resourceInfo = ExternalResourceInfoFactory.createResource(resourceEntry);
            json.writeObject(resourceInfo);
        }
    }
    json.writeEndArray();
}

From source file:org.pentaho.metaverse.impl.model.kettle.json.AbstractStepMetaJsonSerializer.java

protected void writeFieldTransforms(T meta, JsonGenerator json, SerializerProvider serializerProvider)
        throws IOException, JsonGenerationException {

    json.writeArrayFieldStart(JSON_PROPERTY_TRANSFORMS);

    IFieldLineageMetadataProvider mapper = getFieldLineageMetadataProvider(meta);
    try {//from  w  w w  .j a  va2 s . c  om
        Set<ComponentDerivationRecord> changes = mapper.getChangeRecords(meta);
        if (changes != null) {
            for (ComponentDerivationRecord change : changes) {
                if (change.hasDelta()) {
                    json.writeObject(change);
                }
            }
        }
    } catch (MetaverseAnalyzerException e) {
        LOGGER.warn(Messages.getString("WARNING.Serialization.Step.WriteFieldTransforms",
                meta.getParentStepMeta().getName()), e);
    }

    json.writeEndArray();

}

From source file:org.solmix.datax.wmix.serializer.DSResponseSerializer.java

@Override
public void serialize(ResultObject response, JsonGenerator jgen, SerializerProvider provider)
        throws IOException, JsonProcessingException {
    if (response.isDSResponse()) {
        jgen.writeStartObject();/*from   w w w . j  a v a2  s  .  c  o  m*/
        jgen.writeFieldName(RESPONSE);
        serialize((DSResponse) response.getReal(), jgen, provider);
        jgen.writeEndObject();
    } else if (response.isDSResponseList()) {
        List<DSResponse> res = (List<DSResponse>) response.getReal();
        jgen.writeStartObject();
        jgen.writeArrayFieldStart(RESPONSES);
        for (DSResponse re : res) {
            serialize(re, jgen, provider);
        }
        jgen.writeEndArray();
        jgen.writeEndObject();

    } else {
        jgen.writeObject(response.getReal());
    }

}

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// ww w . j av  a2  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:de.fraunhofer.iosb.ilt.sta.serialize.DataArrayValueSerializer.java

@Override
public void serialize(DataArrayValue value, JsonGenerator gen, SerializerProvider serializers)
        throws IOException, JsonProcessingException {
    gen.writeStartObject();//from  w  w  w  . j a v a  2  s.c o  m
    Datastream datastream = value.getDatastream();
    if (datastream != null) {
        gen.writeStringField("Datastream@iot.navigationLink", datastream.getNavigationLink());
    }
    MultiDatastream multiDatastream = value.getMultiDatastream();
    if (multiDatastream != null) {
        gen.writeStringField("MultiDatastream@iot.navigationLink", multiDatastream.getNavigationLink());
    }
    gen.writeObjectField("components", value.getComponents());
    int count = value.getDataArray().size();
    if (count >= 0) {
        gen.writeNumberField("dataArray@iot.count", count);
    }
    gen.writeFieldName("dataArray");
    gen.writeObject(value.getDataArray());
    gen.writeEndObject();
}

From source file:org.jfrog.build.extractor.clientConfiguration.client.ArtifactoryBuildInfoClient.java

String toJsonString(Object object) throws IOException {
    JsonFactory jsonFactory = httpClient.createJsonFactory();
    StringWriter writer = new StringWriter();
    JsonGenerator jsonGenerator = jsonFactory.createJsonGenerator(writer);
    jsonGenerator.useDefaultPrettyPrinter();
    jsonGenerator.writeObject(object);
    String result = writer.getBuffer().toString();
    return result;
}