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

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

Introduction

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

Prototype

public final void writeArrayFieldStart(String fieldName) throws IOException, JsonGenerationException 

Source Link

Document

Convenience method for outputting a field entry ("member") (that will contain a JSON Array value), and the START_ARRAY marker.

Usage

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

protected void serializeVariables(T meta, JsonGenerator json) throws IOException {
    json.writeArrayFieldStart(JSON_PROPERTY_VARIABLES);
    List<String> variables = getUsedVariables(meta);
    if (variables != null) {
        for (String param : variables) {
            ParamInfo paramInfo = new ParamInfo(param, meta.getVariable(param));
            json.writeObject(paramInfo);
        }/* ww  w  .  j a v a 2  s.c o  m*/
    }
    json.writeEndArray();
}

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

protected void serializeParameters(T meta, JsonGenerator json) throws IOException {
    json.writeArrayFieldStart(JSON_PROPERTY_PARAMETERS);
    String[] parameters = meta.listParameters();
    if (parameters != null) {
        for (String param : parameters) {
            try {
                ParamInfo paramInfo = new ParamInfo(param, null, meta.getParameterDefault(param),
                        meta.getParameterDescription(param));
                json.writeObject(paramInfo);
            } catch (UnknownParamException e) {
                LOGGER.warn(Messages.getString("WARNING.Serialization.Trans.Param", param), e);
            }/*from  w  w  w. j  a  va  2  s.  co m*/
        }
    }
    json.writeEndArray();
}

From source file:com.navercorp.pinpoint.web.view.ApplicationAgentHostListSerializer.java

private void writeApplication(String applicationName, List<AgentInfo> agentInfoList,
        JsonGenerator jsonGenerator) throws IOException {
    jsonGenerator.writeStringField("applicationName", applicationName);

    jsonGenerator.writeArrayFieldStart("agents");
    writeAgentList(agentInfoList, jsonGenerator);
    jsonGenerator.writeEndArray();/*from w ww.  j ava2 s . c om*/
}

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);
        for (IListRawData<?> listItem : list) {
            g.writeStartObject();//from  ww w .j av  a 2 s.com
            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:org.elasticsearch.client.sniff.ElasticsearchHostsSnifferTests.java

private static SniffResponse buildSniffResponse(ElasticsearchHostsSniffer.Scheme scheme) throws IOException {
    int numNodes = RandomNumbers.randomIntBetween(getRandom(), 1, 5);
    List<HttpHost> hosts = new ArrayList<>(numNodes);
    JsonFactory jsonFactory = new JsonFactory();
    StringWriter writer = new StringWriter();
    JsonGenerator generator = jsonFactory.createGenerator(writer);
    generator.writeStartObject();/*  w w w  .  j a  va 2s . c om*/
    if (getRandom().nextBoolean()) {
        generator.writeStringField("cluster_name", "elasticsearch");
    }
    if (getRandom().nextBoolean()) {
        generator.writeObjectFieldStart("bogus_object");
        generator.writeEndObject();
    }
    generator.writeObjectFieldStart("nodes");
    for (int i = 0; i < numNodes; i++) {
        String nodeId = RandomStrings.randomAsciiOfLengthBetween(getRandom(), 5, 10);
        generator.writeObjectFieldStart(nodeId);
        if (getRandom().nextBoolean()) {
            generator.writeObjectFieldStart("bogus_object");
            generator.writeEndObject();
        }
        if (getRandom().nextBoolean()) {
            generator.writeArrayFieldStart("bogus_array");
            generator.writeStartObject();
            generator.writeEndObject();
            generator.writeEndArray();
        }
        boolean isHttpEnabled = rarely() == false;
        if (isHttpEnabled) {
            String host = "host" + i;
            int port = RandomNumbers.randomIntBetween(getRandom(), 9200, 9299);
            HttpHost httpHost = new HttpHost(host, port, scheme.toString());
            hosts.add(httpHost);
            generator.writeObjectFieldStart("http");
            if (getRandom().nextBoolean()) {
                generator.writeArrayFieldStart("bound_address");
                generator.writeString("[fe80::1]:" + port);
                generator.writeString("[::1]:" + port);
                generator.writeString("127.0.0.1:" + port);
                generator.writeEndArray();
            }
            if (getRandom().nextBoolean()) {
                generator.writeObjectFieldStart("bogus_object");
                generator.writeEndObject();
            }
            generator.writeStringField("publish_address", httpHost.toHostString());
            if (getRandom().nextBoolean()) {
                generator.writeNumberField("max_content_length_in_bytes", 104857600);
            }
            generator.writeEndObject();
        }
        if (getRandom().nextBoolean()) {
            String[] roles = { "master", "data", "ingest" };
            int numRoles = RandomNumbers.randomIntBetween(getRandom(), 0, 3);
            Set<String> nodeRoles = new HashSet<>(numRoles);
            for (int j = 0; j < numRoles; j++) {
                String role;
                do {
                    role = RandomPicks.randomFrom(getRandom(), roles);
                } while (nodeRoles.add(role) == false);
            }
            generator.writeArrayFieldStart("roles");
            for (String nodeRole : nodeRoles) {
                generator.writeString(nodeRole);
            }
            generator.writeEndArray();
        }
        int numAttributes = RandomNumbers.randomIntBetween(getRandom(), 0, 3);
        Map<String, String> attributes = new HashMap<>(numAttributes);
        for (int j = 0; j < numAttributes; j++) {
            attributes.put("attr" + j, "value" + j);
        }
        if (numAttributes > 0) {
            generator.writeObjectFieldStart("attributes");
        }
        for (Map.Entry<String, String> entry : attributes.entrySet()) {
            generator.writeStringField(entry.getKey(), entry.getValue());
        }
        if (numAttributes > 0) {
            generator.writeEndObject();
        }
        generator.writeEndObject();
    }
    generator.writeEndObject();
    generator.writeEndObject();
    generator.close();
    return SniffResponse.buildResponse(writer.toString(), hosts);
}

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

protected void serializeConnections(T meta, JsonGenerator json) throws IOException {
    // connections
    json.writeArrayFieldStart(JSON_PROPERTY_CONNECTIONS);
    for (DatabaseMeta dbmeta : meta.getDatabases()) {
        BaseResourceInfo resourceInfo = (BaseResourceInfo) ExternalResourceInfoFactory
                .createDatabaseResource(dbmeta);
        resourceInfo.setInput(true);//from www  . ja  v  a2  s.  co m
        json.writeObject(resourceInfo);
    }
    json.writeEndArray();
}

From source file:com.google.openrtb.json.AbstractOpenRtbJsonWriter.java

/**
 * Writes an array of ContentCategory if not empty.
 *
 * @see #writeContentCategory(String, JsonGenerator)
 *//* w ww . ja v a 2  s  .  c o m*/
protected final void writeContentCategories(String fieldName, List<String> cats, JsonGenerator gen)
        throws IOException {
    if (!cats.isEmpty()) {
        gen.writeArrayFieldStart(fieldName);
        for (String cat : cats) {
            writeContentCategory(cat, gen);
        }
        gen.writeEndArray();
    }
}

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();
    }/* ww  w  . j  a va 2s.co  m*/
    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:com.googlecode.jmxtrans.model.output.LibratoWriter2.java

@Override
public void write(@Nonnull Writer writer, @Nonnull Server server, @Nonnull Query query,
        @Nonnull Iterable<Result> results) throws IOException {
    Closer closer = Closer.create();/*from   ww  w  .jav  a 2s  .  co m*/
    try {
        JsonGenerator g = closer.register(jsonFactory.createGenerator(writer));
        g.writeStartObject();
        g.writeArrayFieldStart("counters");
        g.writeEndArray();

        String source = getSource(server);

        g.writeArrayFieldStart("gauges");
        for (Result result : results) {
            Map<String, Object> resultValues = result.getValues();
            for (Map.Entry<String, Object> values : resultValues.entrySet()) {
                if (isNumeric(values.getValue())) {
                    g.writeStartObject();
                    g.writeStringField("name", KeyUtils.getKeyString(query, result, values, typeNames));
                    if (source != null && !source.isEmpty()) {
                        g.writeStringField("source", source);
                    }
                    g.writeNumberField("measure_time", SECONDS.convert(result.getEpoch(), MILLISECONDS));
                    Object value = values.getValue();
                    if (value instanceof Integer) {
                        g.writeNumberField("value", (Integer) value);
                    } else if (value instanceof Long) {
                        g.writeNumberField("value", (Long) value);
                    } else if (value instanceof Float) {
                        g.writeNumberField("value", (Float) value);
                    } else if (value instanceof Double) {
                        g.writeNumberField("value", (Double) value);
                    }
                    g.writeEndObject();
                }
            }
        }
        g.writeEndArray();
        g.writeEndObject();
        g.flush();
    } catch (Throwable t) {
        throw closer.rethrow(t);
    } finally {
        closer.close();
    }
}

From source file:com.meetingninja.csse.database.ProjectDatabaseAdapter.java

public static void updateProject(Project p) throws IOException {
    ByteArrayOutputStream json = new ByteArrayOutputStream();
    // this type of print stream allows us to get a string easily
    PrintStream ps = new PrintStream(json);
    JsonGenerator jgen = JFACTORY.createGenerator(ps, JsonEncoding.UTF8);
    // Build JSON Object for Title
    jgen.writeStartObject();// w ww . j  ava2 s .c  o  m
    jgen.writeStringField(Keys.Project.ID, p.getProjectID());
    jgen.writeStringField("field", Keys.Project.TITLE);
    jgen.writeStringField("value", p.getProjectTitle());
    jgen.writeEndObject();
    jgen.close();
    String payloadTitle = json.toString("UTF8");
    ps.close();

    json = new ByteArrayOutputStream();
    // this type of print stream allows us to get a string easily
    ps = new PrintStream(json);
    jgen = JFACTORY.createGenerator(ps, JsonEncoding.UTF8);
    // Build JSON Object for Project members
    jgen.writeStartObject();
    jgen.writeStringField(Keys.Project.ID, p.getProjectID());
    jgen.writeStringField("field", Keys.Project.MEETINGS);
    jgen.writeArrayFieldStart("value");
    for (Meeting meeting : p.getMeetings()) {
        jgen.writeStartObject();
        jgen.writeStringField(Keys.Meeting.ID, meeting.getID());
        jgen.writeEndObject();

    }
    jgen.writeEndArray();
    jgen.writeEndObject();
    jgen.close();
    String payloadMeetings = json.toString("UTF8");
    ps.close();

    json = new ByteArrayOutputStream();
    // this type of print stream allows us to get a string easily
    ps = new PrintStream(json);
    jgen = JFACTORY.createGenerator(ps, JsonEncoding.UTF8);
    // Build JSON Object for Project members
    jgen.writeStartObject();
    jgen.writeStringField(Keys.Project.ID, p.getProjectID());
    jgen.writeStringField("field", Keys.Project.NOTES);
    jgen.writeArrayFieldStart("value");
    for (Note note : p.getNotes()) {
        jgen.writeStartObject();
        jgen.writeStringField(Keys.Note.ID, note.getID());
        jgen.writeEndObject();

    }
    jgen.writeEndArray();
    jgen.writeEndObject();
    jgen.close();
    String payloadNotes = json.toString("UTF8");
    ps.close();

    json = new ByteArrayOutputStream();
    // this type of print stream allows us to get a string easily
    ps = new PrintStream(json);
    jgen = JFACTORY.createGenerator(ps, JsonEncoding.UTF8);
    // Build JSON Object for Project members
    jgen.writeStartObject();
    jgen.writeStringField(Keys.Project.ID, p.getProjectID());
    jgen.writeStringField("field", Keys.Project.MEMBERS);
    jgen.writeArrayFieldStart("value");
    for (User member : p.getMembers()) {
        jgen.writeStartObject();
        jgen.writeStringField(Keys.User.ID, member.getID());
        jgen.writeEndObject();

    }
    jgen.writeEndArray();
    jgen.writeEndObject();
    jgen.close();
    String payloadMembers = json.toString("UTF8");
    ps.close();

    // Establish connection
    updateHelper(payloadTitle);
    updateHelper(payloadMeetings);
    updateHelper(payloadNotes);
    System.out.println(updateHelper(payloadMembers));

}