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

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

Introduction

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

Prototype

public abstract void writeEndArray() throws IOException, JsonGenerationException;

Source Link

Document

Method for writing closing marker of a JSON Array value (character ']'; plus possible white space decoration if pretty-printing is enabled).

Usage

From source file:com.msopentech.odatajclient.engine.data.json.GeospatialJSONHandler.java

private static void serializeLineString(final JsonGenerator jgen, final Element node) throws IOException {
    for (Element element : XMLUtils.getChildElements(node, ODataConstants.ELEM_POS)) {
        jgen.writeStartArray();//  w  w w  . jav  a  2 s  .  c  o  m
        serializePoint(jgen, element);
        jgen.writeEndArray();
    }
}

From source file:net.echinopsii.ariane.community.core.directory.wat.json.ds.organisational.TeamJSON.java

public final static void team2JSON(Team team, JsonGenerator jgenerator) throws IOException {
    jgenerator.writeStartObject();/*from   w ww . j  a  va 2  s .c om*/
    jgenerator.writeNumberField(TEAM_ID, team.getId());
    jgenerator.writeNumberField(TEAM_VERSION, team.getVersion());
    jgenerator.writeStringField(TEAM_NAME, team.getName());
    jgenerator.writeStringField(TEAM_DESCRIPTION, team.getDescription());
    jgenerator.writeStringField(TEAM_COLOR_CODE, team.getColorCode());
    jgenerator.writeArrayFieldStart(TEAM_OSI_ID);
    for (OSInstance osi : team.getOsInstances())
        jgenerator.writeNumber(osi.getId());
    jgenerator.writeEndArray();
    jgenerator.writeArrayFieldStart(TEAM_APP_ID);
    for (Application app : team.getApplications())
        jgenerator.writeNumber(app.getId());
    jgenerator.writeEndArray();
    jgenerator.writeEndObject();
}

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

public static Agenda createAgenda(Agenda create) throws IOException {
    Agenda newAgenda = new Agenda(create);
    // Server URL setup
    String _url = getBaseUri().build().toString();
    // Establish connection
    URL url = new URL(_url);
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();

    // add request header
    conn.setRequestMethod(IRequest.POST);
    addRequestHeader(conn, true);/*  w  w  w.  j  a v a 2  s  . c  o m*/

    // prepare POST payload
    ByteArrayOutputStream json = new ByteArrayOutputStream();
    // this type of print stream allows us to get a string easily
    PrintStream ps = new PrintStream(json);
    // Create a generator to build the JSON string
    JsonGenerator jgen = JFACTORY.createGenerator(ps, JsonEncoding.UTF8);

    // Build JSON Object
    jgen.writeStartObject(); // start agenda
    jgen.writeStringField(Keys.Agenda.TITLE, create.getTitle());
    jgen.writeStringField(Keys.Agenda.MEETING, create.getAttachedMeetingID());
    jgen.writeArrayFieldStart(Keys.Agenda.TOPIC); // start topics
    MAPPER.writeValue(jgen, create.getTopics()); // recursively does
    // subtopics
    jgen.writeEndArray(); // end topics
    jgen.writeEndObject(); // end agenda
    jgen.close();

    // Get JSON Object payload from print stream
    String payload = json.toString("UTF8");
    ps.close();

    // Send payload
    int responseCode = sendPostPayload(conn, payload);
    String response = getServerResponse(conn);

    newAgenda = parseAgenda(MAPPER.readTree(response));
    return newAgenda;
}

From source file:com.infinities.skyport.util.JsonUtil.java

public static String toLegendJson(Throwable e) {
    StringWriter wtr = new StringWriter();
    try {/*  ww  w  .ja v  a  2s  .  co m*/
        JsonGenerator g = new JsonFactory().createGenerator(wtr);
        g.writeStartArray();
        g.writeStartObject();
        g.writeStringField("RES", "FALSE");
        g.writeStringField("REASON", e.toString());
        // g.writeStringField("REASON", Objects.firstNonNull(e.getMessage(),
        // e.toString()));
        g.writeEndObject();
        g.writeEndArray();
        g.close();
    } catch (Exception ee) {
        ArrayNode array = getObjectMapper().createArrayNode();
        ObjectNode reason = getObjectMapper().createObjectNode();
        ObjectNode status = getObjectMapper().createObjectNode();

        status.put(JsonConstants.STATUS, String.valueOf("FALSE"));
        reason.put(JsonConstants.REASON, "an unexpected error occurred");
        array.add(status).add(reason);

        // "[{\"RES\":\"FALSE\"}, {\"REASON\":\"an unexpected error occurred\"}]";
        return array.toString();
    }

    return wtr.toString();
}

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

public static Group createGroup(Group g) throws IOException, MalformedURLException {
    // Server URL setup
    String _url = getBaseUri().build().toString();

    // establish connection
    URL url = new URL(_url);
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();

    conn.setRequestMethod("POST");
    addRequestHeader(conn, true);/*w  ww  . j  av  a  2s. c  om*/

    // prepare POST payload
    ByteArrayOutputStream json = new ByteArrayOutputStream();
    // this type of print stream allows us to get a string easily
    PrintStream ps = new PrintStream(json);
    // Create a generator to build the JSON string
    JsonGenerator jgen = JFACTORY.createGenerator(ps, JsonEncoding.UTF8);

    // Build JSON Object
    jgen.writeStartObject();
    jgen.writeStringField(Keys.Group.TITLE, g.getGroupTitle());
    jgen.writeArrayFieldStart(Keys.Group.MEMBERS);
    for (User member : g.getMembers()) {
        jgen.writeStartObject();
        jgen.writeStringField(Keys.User.ID, member.getID());
        jgen.writeEndObject();

    }
    jgen.writeEndArray();
    jgen.writeEndObject();
    jgen.close();

    // Get JSON Object payload from print stream
    String payload = json.toString("UTF8");
    ps.close();

    // send payload
    int responseCode = sendPostPayload(conn, payload);
    String response = getServerResponse(conn);

    // prepare to get the id of the created Meeting
    // Map<String, String> responseMap = new HashMap<String, String>();

    /*
     * result should get valid={"meetingID":"##"}
     */
    String result = new String();
    if (!response.isEmpty()) {
        // responseMap = MAPPER.readValue(response,
        // new TypeReference<HashMap<String, String>>() {
        // });
        JsonNode groupNode = MAPPER.readTree(response);
        if (!groupNode.has(Keys.Group.ID)) {
            result = "invalid";
        } else
            result = groupNode.get(Keys.Group.ID).asText();
    }

    if (!result.equalsIgnoreCase("invalid"))
        g.setID(result);

    conn.disconnect();
    return g;
}

From source file:org.mashti.jetson.util.JsonGeneratorUtil.java

/**
 * Writes the given {@code values} as a JSON array with the given field name and serialises each value as a provided type.
 * An {@link ObjectMapper} must be present as the {@code generator}'s {@link JsonGenerator#getCodec() codec}.
 * For each value in the given {@code values}, a type must be provided under the same index in {@code value_types}.
 * This method supports parameterised types.
 *
 * @param generator the JSON generator/* w  w  w.j a  va  2 s .  com*/
 * @param field_name the field name of the JSON array
 * @param value_types the types of the values
 * @param values the values
 * @throws IOException Signals that an I/O exception has occurred.
 */
public static void writeValuesAs(final JsonGenerator generator, final String field_name,
        final Type[] value_types, final Object[] values) throws IOException {

    generator.writeArrayFieldStart(field_name);
    if (values != null && values.length > 0) {
        final ObjectMapper mapper = (ObjectMapper) generator.getCodec();
        int i = 0;
        for (final Object value : values) {
            final Type value_type = value_types[i++];
            final ObjectWriter writer = mapper.writerWithType(JsonParserUtil.toTypeReference(value_type));
            writer.writeValue(generator, value);
        }
    }
    generator.writeEndArray();
}

From source file:io.protostuff.JsonIOUtil.java

/**
 * Serializes the {@code messages} into the generator using the given schema.
 */// w ww .  j  a v a 2s . c om
public static <T> void writeListTo(JsonGenerator generator, List<T> messages, Schema<T> schema, boolean numeric)
        throws IOException {
    generator.writeStartArray();
    if (messages.isEmpty()) {
        generator.writeEndArray();
        return;
    }

    final JsonOutput output = new JsonOutput(generator, numeric, schema);

    for (T m : messages) {
        generator.writeStartObject();

        schema.writeTo(output, m);
        if (output.isLastRepeated())
            generator.writeEndArray();

        generator.writeEndObject();
        output.reset();
    }

    generator.writeEndArray();
}

From source file:net.echinopsii.ariane.community.core.directory.wat.json.ds.technical.system.OSTypeJSON.java

public final static void osType2JSON(OSType osType, JsonGenerator jgenerator) throws IOException {
    jgenerator.writeStartObject();/*from   w  ww  .j  a v a 2s .  c o m*/
    jgenerator.writeNumberField(OST_ID, osType.getId());
    jgenerator.writeNumberField(OST_VERSION, osType.getVersion());
    jgenerator.writeStringField(OST_NAME, osType.getName());
    jgenerator.writeStringField(OST_ARCHITECTURE, osType.getArchitecture());
    jgenerator.writeNumberField(OST_CMP_ID, ((osType.getCompany() != null) ? osType.getCompany().getId() : -1));
    jgenerator.writeArrayFieldStart(OST_OSI_ID);
    for (OSInstance osi : osType.getOsInstances())
        jgenerator.writeNumber(osi.getId());
    jgenerator.writeEndArray();
    jgenerator.writeEndObject();
}

From source file:org.bndtools.rt.repository.marshall.CapReqJson.java

public static void writeCapability(Capability capability, JsonGenerator generator) throws IOException {
    generator.writeStartObject();/*from  ww w.  j  av a 2  s.com*/
    generator.writeStringField("ns", capability.getNamespace());

    Map<String, Object> attrs = capability.getAttributes();
    if (!attrs.isEmpty()) {
        generator.writeArrayFieldStart("attrs");
        for (Entry<String, Object> entry : attrs.entrySet()) {
            writeAttribute(entry.getKey(), entry.getValue(), generator);
        }
        generator.writeEndArray();
    }

    Map<String, String> dirs = capability.getDirectives();
    if (!dirs.isEmpty()) {
        generator.writeArrayFieldStart("dirs");
        for (Entry<String, String> entry : dirs.entrySet()) {
            writeDirective(entry.getKey(), entry.getValue(), generator);
        }
        generator.writeEndArray();
    }

    generator.writeEndObject();
}

From source file:org.bndtools.rt.repository.marshall.CapReqJson.java

public static void writeRequirement(Requirement requirement, JsonGenerator generator) throws IOException {
    generator.writeStartObject();// w w  w.  java2 s  . c om
    generator.writeStringField("ns", requirement.getNamespace());

    Map<String, Object> attrs = requirement.getAttributes();
    if (!attrs.isEmpty()) {
        generator.writeArrayFieldStart("attrs");
        for (Entry<String, Object> entry : attrs.entrySet()) {
            writeAttribute(entry.getKey(), entry.getValue(), generator);
        }
        generator.writeEndArray();
    }

    Map<String, String> dirs = requirement.getDirectives();
    if (!dirs.isEmpty()) {
        generator.writeArrayFieldStart("dirs");
        for (Entry<String, String> entry : dirs.entrySet()) {
            writeDirective(entry.getKey(), entry.getValue(), generator);
        }
        generator.writeEndArray();
    }

    generator.writeEndObject();
}