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

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

Introduction

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

Prototype

public final void writeObjectField(String fieldName, Object pojo) throws IOException, JsonProcessingException 

Source Link

Document

Convenience method for outputting a field entry ("member") that has contents of specific Java object as its value.

Usage

From source file:io.swagger.inflector.processors.JsonNodeExampleSerializer.java

public void writeValue(JsonGenerator jgen, String field, Example o) throws IOException {
    if (o instanceof ArrayExample) {
        ArrayExample obj = (ArrayExample) o;
        jgen.writeArrayFieldStart(field);
        for (Example item : obj.getItems()) {
            if (item.getName() != null) {
                jgen.writeStartObject();
                writeTo(jgen, item);//from  w w w.j  a  va2 s  . c  o m
                jgen.writeEndObject();
            } else {
                writeTo(jgen, item);
            }
        }
        jgen.writeEndArray();
    } else if (o instanceof BooleanExample) {
        BooleanExample obj = (BooleanExample) o;
        if (field != null) {
            jgen.writeBooleanField(field, obj.getValue());
        } else {
            jgen.writeBoolean(obj.getValue());
        }
    } else if (o instanceof DecimalExample) {
        DecimalExample obj = (DecimalExample) o;
        if (field != null) {
            jgen.writeNumberField(field, obj.getValue());
        } else {
            jgen.writeNumber(obj.getValue());
        }
    } else if (o instanceof DoubleExample) {
        DoubleExample obj = (DoubleExample) o;
        if (field != null) {
            jgen.writeNumberField(field, obj.getValue());
        } else {
            jgen.writeNumber(obj.getValue());
        }
    } else if (o instanceof FloatExample) {
        FloatExample obj = (FloatExample) o;
        if (field != null) {
            jgen.writeNumberField(field, obj.getValue());
        } else {
            jgen.writeNumber(obj.getValue());
        }
    } else if (o instanceof IntegerExample) {
        IntegerExample obj = (IntegerExample) o;
        if (field != null) {
            jgen.writeNumberField(field, obj.getValue());
        } else {
            jgen.writeNumber(obj.getValue());
        }
    } else if (o instanceof LongExample) {
        LongExample obj = (LongExample) o;
        if (field != null) {
            jgen.writeNumberField(field, obj.getValue());
        } else {
            jgen.writeNumber(obj.getValue());
        }
    } else if (o instanceof ObjectExample) {
        ObjectExample obj = (ObjectExample) o;
        if (field != null) {
            jgen.writeObjectField(field, obj);
        }
    } else if (o instanceof StringExample) {
        StringExample obj = (StringExample) o;
        if (field != null) {
            jgen.writeStringField(field, obj.getValue());
        } else {
            jgen.writeString(obj.getValue());
        }
    }
}

From source file:com.baidubce.services.bmr.BmrClient.java

/**
 * Create a cluster with the specified options.
 *
 * @param request The request containing all options for creating a BMR cluster.
 * @return The response containing the ID of the newly created cluster.
 *//*from   w  w w  .ja  v  a2 s .  c  o m*/
public CreateClusterResponse createCluster(CreateClusterRequest request) {
    checkNotNull(request, "request should not be null.");
    checkStringNotEmpty(request.getImageType(), "The imageType should not be null or empty string.");
    checkStringNotEmpty(request.getImageVersion(), "The imageVersion should not be null or empty string.");
    checkNotNull(request.getInstanceGroups(), "The instanceGroups should not be null.");

    StringWriter writer = new StringWriter();
    try {
        JsonGenerator jsonGenerator = JsonUtils.jsonGeneratorOf(writer);
        jsonGenerator.writeStartObject();
        jsonGenerator.writeStringField("imageType", request.getImageType());
        jsonGenerator.writeStringField("imageVersion", request.getImageVersion());
        jsonGenerator.writeArrayFieldStart("instanceGroups");
        for (InstanceGroupConfig instanceGroup : request.getInstanceGroups()) {
            jsonGenerator.writeStartObject();
            if (instanceGroup.getName() != null) {
                jsonGenerator.writeStringField("name", instanceGroup.getName());
            }
            jsonGenerator.writeStringField("type", instanceGroup.getType());
            jsonGenerator.writeStringField("instanceType", instanceGroup.getInstanceType());
            jsonGenerator.writeNumberField("instanceCount", instanceGroup.getInstanceCount());
            jsonGenerator.writeEndObject();
        }
        jsonGenerator.writeEndArray();
        if (request.getName() != null) {
            jsonGenerator.writeStringField("name", request.getName());
        }
        if (request.getLogUri() != null) {
            jsonGenerator.writeStringField("logUri", request.getLogUri());
        }
        jsonGenerator.writeBooleanField("autoTerminate", request.getAutoTerminate());

        if (request.getApplications() != null) {
            jsonGenerator.writeArrayFieldStart("applications");
            for (ApplicationConfig application : request.getApplications()) {
                jsonGenerator.writeStartObject();
                jsonGenerator.writeStringField("name", application.getName());
                jsonGenerator.writeStringField("version", application.getVersion());
                if (application.getProperties() != null) {
                    jsonGenerator.writeObjectFieldStart("properties");
                    for (Map.Entry<String, Object> entry : application.getProperties().entrySet()) {
                        jsonGenerator.writeObjectField(entry.getKey(), entry.getValue());
                    }
                    jsonGenerator.writeEndObject();
                }
                jsonGenerator.writeEndObject();
            }
            jsonGenerator.writeEndArray();
        }

        if (request.getSteps() != null) {
            jsonGenerator.writeArrayFieldStart("steps");
            for (StepConfig step : request.getSteps()) {
                jsonGenerator.writeStartObject();
                if (step.getName() != null) {
                    jsonGenerator.writeStringField("name", step.getName());
                }
                jsonGenerator.writeStringField("type", step.getType());
                jsonGenerator.writeStringField("actionOnFailure", step.getActionOnFailure());
                jsonGenerator.writeObjectFieldStart("properties");
                for (Map.Entry<String, String> entry : step.getProperties().entrySet()) {
                    jsonGenerator.writeStringField(entry.getKey(), entry.getValue());
                }
                jsonGenerator.writeEndObject();
                jsonGenerator.writeEndObject();
            }
            jsonGenerator.writeEndArray();
        }

        jsonGenerator.writeEndObject();
        jsonGenerator.close();
    } catch (IOException e) {
        throw new BceClientException("Fail to generate json", e);
    }

    byte[] json = null;
    try {
        json = writer.toString().getBytes(DEFAULT_ENCODING);
    } catch (UnsupportedEncodingException e) {
        throw new BceClientException("Fail to get UTF-8 bytes", e);
    }

    InternalRequest internalRequest = this.createRequest(request, HttpMethodName.POST, CLUSTER);
    internalRequest.addHeader(Headers.CONTENT_LENGTH, String.valueOf(json.length));
    internalRequest.addHeader(Headers.CONTENT_TYPE, "application/json");
    internalRequest.setContent(RestartableInputStream.wrap(json));

    if (request.getClientToken() != null) {
        internalRequest.addParameter("clientToken", request.getClientToken());
    }

    return this.invokeHttpClient(internalRequest, CreateClusterResponse.class);
}

From source file:org.apache.olingo.commons.core.serialization.JsonEntitySerializer.java

protected void doContainerSerialize(final ResWrap<Entity> container, final JsonGenerator jgen)
        throws IOException, EdmPrimitiveTypeException {

    final Entity entity = container.getPayload();

    jgen.writeStartObject();/*from ww w  . jav a  2s. c o  m*/

    if (serverMode) {
        if (container.getContextURL() != null) {
            jgen.writeStringField(version.compareTo(ODataServiceVersion.V40) >= 0 ? Constants.JSON_CONTEXT
                    : Constants.JSON_METADATA, container.getContextURL().toASCIIString());
        }
        if (version.compareTo(ODataServiceVersion.V40) >= 0
                && StringUtils.isNotBlank(container.getMetadataETag())) {
            jgen.writeStringField(Constants.JSON_METADATA_ETAG, container.getMetadataETag());
        }

        if (StringUtils.isNotBlank(entity.getETag())) {
            jgen.writeStringField(version.getJsonName(ODataServiceVersion.JsonKey.ETAG), entity.getETag());
        }
    }

    if (StringUtils.isNotBlank(entity.getType())) {
        jgen.writeStringField(version.getJsonName(ODataServiceVersion.JsonKey.TYPE),
                new EdmTypeInfo.Builder().setTypeExpression(entity.getType()).build().external(version));
    }

    if (entity.getId() != null) {
        jgen.writeStringField(version.getJsonName(ODataServiceVersion.JsonKey.ID),
                entity.getId().toASCIIString());
    }

    for (Annotation annotation : entity.getAnnotations()) {
        valuable(jgen, annotation, "@" + annotation.getTerm());
    }

    for (Property property : entity.getProperties()) {
        valuable(jgen, property, property.getName());
    }

    if (serverMode && entity.getEditLink() != null && StringUtils.isNotBlank(entity.getEditLink().getHref())) {
        jgen.writeStringField(version.getJsonName(ODataServiceVersion.JsonKey.EDIT_LINK),
                entity.getEditLink().getHref());

        if (entity.isMediaEntity()) {
            jgen.writeStringField(version.getJsonName(ODataServiceVersion.JsonKey.MEDIA_READ_LINK),
                    entity.getEditLink().getHref() + "/$value");
        }
    }

    links(entity, jgen);

    for (Link link : entity.getMediaEditLinks()) {
        if (link.getTitle() == null) {
            jgen.writeStringField(version.getJsonName(ODataServiceVersion.JsonKey.MEDIA_EDIT_LINK),
                    link.getHref());
        }

        if (link.getInlineEntity() != null) {
            jgen.writeObjectField(link.getTitle(), link.getInlineEntity());
        }
        if (link.getInlineEntitySet() != null) {
            jgen.writeArrayFieldStart(link.getTitle());
            for (Entity subEntry : link.getInlineEntitySet().getEntities()) {
                jgen.writeObject(subEntry);
            }
            jgen.writeEndArray();
        }
    }

    if (serverMode) {
        for (ODataOperation operation : entity.getOperations()) {
            jgen.writeObjectFieldStart(
                    "#" + StringUtils.substringAfterLast(operation.getMetadataAnchor(), "#"));
            jgen.writeStringField(Constants.ATTR_TITLE, operation.getTitle());
            jgen.writeStringField(Constants.ATTR_TARGET, operation.getTarget().toASCIIString());
            jgen.writeEndObject();
        }
    }

    jgen.writeEndObject();
}

From source file:com.rhfung.P2PDictionary.DataConnection.java

private void WriteJSONForEntry(JsonGenerator jg, DataEntry d) throws JsonGenerationException, IOException {
    //                        writer.write(d.key + "\t" + d.lastOwnerID + "\t" + d.lastOwnerRevision + "\t" 
    //                          + permissions + "\t" + d.getMime() + d.GetMimeSimpleData() + "\t"
    //                        + GetStringOf(d.senderPath) + NEWLINE);

    jg.writeStartObject();/*w  w  w.ja v  a2s  .  c o m*/
    jg.writeObjectField("key", d.key);
    jg.writeObjectField("owner", d.lastOwnerID);
    jg.writeObjectField("revision", d.lastOwnerRevision);
    jg.writeObjectField("type", d.getMime());

    if (d.subscribed) {

        if (DataMissing.isSingleton(d.value)) {
            jg.writeObjectField("status", "-W");
        } else {
            jg.writeObjectField("status", "RW");
        }
    } else {

        if (DataMissing.isSingleton(d.value)) {
            jg.writeObjectField("status", "--");
        } else {
            jg.writeObjectField("status", "=-");

        }

    }

    jg.writeEndObject();

}

From source file:org.jbpm.designer.bpmn2.impl.Bpmn2JsonMarshaller.java

protected void marshallCallableElement(CallableElement callableElement, Definitions def,
        JsonGenerator generator) throws JsonGenerationException, IOException {
    generator.writeStartObject();/*from   w ww.ja  va 2  s.  co m*/
    generator.writeObjectField("resourceId", callableElement.getId());

    if (callableElement instanceof Choreography) {
        marshallChoreography((Choreography) callableElement, generator);
    } else if (callableElement instanceof Conversation) {
        marshallConversation((Conversation) callableElement, generator);
    } else if (callableElement instanceof GlobalChoreographyTask) {
        marshallGlobalChoreographyTask((GlobalChoreographyTask) callableElement, generator);
    } else if (callableElement instanceof GlobalTask) {
        marshallGlobalTask((GlobalTask) callableElement, generator);
    } else if (callableElement instanceof Process) {
        marshallProcess((Process) callableElement, def, generator, "");
    } else {
        throw new UnsupportedOperationException("TODO"); //TODO!
    }
    generator.writeEndObject();
}

From source file:org.jbpm.designer.bpmn2.impl.Bpmn2JsonMarshaller.java

protected void marshallStencil(String stencilId, JsonGenerator generator)
        throws JsonGenerationException, IOException {
    generator.writeObjectFieldStart("stencil");
    generator.writeObjectField("id", stencilId);
    generator.writeEndObject();//w  w w  .  j a va2s  .c  om
}

From source file:org.jbpm.designer.bpmn2.impl.Bpmn2JsonMarshaller.java

protected void marshallArtifact(Artifact artifact, BPMNPlane plane, JsonGenerator generator, float xOffset,
        float yOffset, String preProcessingData, Definitions def) throws IOException {
    generator.writeStartObject();/*from  w  w w  . j  ava2s .com*/
    generator.writeObjectField("resourceId", artifact.getId());
    if (artifact instanceof Association) {
        marshallAssociation((Association) artifact, plane, generator, xOffset, yOffset, preProcessingData, def);
    } else if (artifact instanceof Group) {
        marshallGroup((Group) artifact, plane, generator, xOffset, yOffset, preProcessingData, def);
    }
    generator.writeEndObject();
}

From source file:org.jbpm.designer.bpmn2.impl.Bpmn2JsonMarshaller.java

protected void marshallProperties(Map<String, Object> properties, JsonGenerator generator)
        throws JsonGenerationException, IOException {
    generator.writeObjectFieldStart("properties");
    for (Entry<String, Object> entry : properties.entrySet()) {
        generator.writeObjectField(entry.getKey(), String.valueOf(entry.getValue()));
    }/*from  w ww  . j a va 2  s.  c o  m*/
    generator.writeEndObject();
}

From source file:com.rhfung.P2PDictionary.DataConnection.java

private byte[] GetDictionaryAsJson() {
    ByteArrayOutputStream stream = new ByteArrayOutputStream();
    JsonFactory jsonFactory = new JsonFactory(); // or, for data binding, org.codehaus.jackson.mapper.MappingJsonFactory 
    JsonGenerator jg;
    try {//w  w  w. j  a  va 2  s  .  c om
        jg = jsonFactory.createJsonGenerator(stream, JsonEncoding.UTF8);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        return new byte[0];
    } // or Stream, Reader

    List<DataEntry> entries; // make a local copy for access without worry about changes thereafter
    this.dataLock.readLock().lock();
    try {
        entries = new Vector<DataEntry>(this.data.size());
        //entries.AddRange(this.data.Values.Where(x => x.subscribed));
        entries.addAll(this.data.values());
    } finally {
        this.dataLock.readLock().unlock();
    }

    // write count of data entries
    //writer.write(DATA_NAMESPACE + "/\t" + this.local_uid + "\t0\tRW\t" + entries.size() + "\t" + this.local_uid + NEWLINE) ;
    try {
        jg.writeStartObject();
        jg.writeObjectField("size", entries.size());
        jg.writeObjectField("localid", this.local_uid);

        jg.writeArrayFieldStart("keys");

        // write each data entry, converting simple data immediately
        // (pretend i don't know about these non-subscribed entries)
        for (DataEntry d : entries) {
            WriteJSONForEntry(jg, d);
        }

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

        jg.close();
    } catch (JsonGenerationException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    return stream.toByteArray();
}