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

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

Introduction

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

Prototype

public abstract void writeStartArray() throws IOException, JsonGenerationException;

Source Link

Document

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

Usage

From source file:io.debezium.document.JacksonWriter.java

protected void writeArray(Array array, JsonGenerator generator) throws IOException {
    generator.writeStartArray();
    try {/*from w  ww  .  jav a2 s . com*/
        array.streamValues().forEach((value) -> {
            try {
                writeValue(value, generator);
            } catch (IOException e) {
                throw new WritingError(e);
            }
        });
        generator.writeEndArray();
    } catch (WritingError e) {
        throw e.wrapped();
    }
}

From source file:org.bozzo.ipplan.web.json.StreamSerializer.java

@Override
public void serialize(Stream<?> value, JsonGenerator generator, SerializerProvider serializer)
        throws IOException, JsonProcessingException {
    if (value == null) {
        generator.writeNull();/*from   www.j  a v a2 s  .  c o  m*/
    } else {
        generator.writeStartArray();
        value.forEach(obj -> {
            try {
                generator.writeObject(obj);
            } catch (IOException e) {
                throw new UncheckedIOException(e);
            }
        });
        generator.writeEndArray();
    }
}

From source file:com.proofpoint.event.client.EventFieldMetadata.java

private void writeArray(JsonGenerator jsonGenerator, Iterable<?> value, Deque<Object> objectStack)
        throws IOException {
    jsonGenerator.writeStartArray();
    for (Object item : value) {
        writeFieldValue(jsonGenerator, item, objectStack);
    }//  w  w w .  ja  va 2  s . c om
    jsonGenerator.writeEndArray();
}

From source file:io.gravitee.definition.jackson.datatype.api.ser.RuleSerializer.java

@Override
public void serialize(Rule rule, JsonGenerator jgen, SerializerProvider provider) throws IOException {
    if (rule.getPolicy() != null) {
        jgen.writeStartObject();/*from  w ww  .j a  v a 2  s  . c  om*/

        jgen.writeFieldName("methods");

        jgen.writeStartArray();
        for (HttpMethod method : rule.getMethods()) {
            jgen.writeString(method.toString().toUpperCase());
        }
        jgen.writeEndArray();

        jgen.writeObject(rule.getPolicy());

        if (rule.getDescription() != null) {
            jgen.writeStringField("description", rule.getDescription());
        }

        jgen.writeBooleanField("enabled", rule.isEnabled());

        jgen.writeEndObject();
    }
}

From source file:org.rgiskard.jackson.ModuleJsonSerializer.java

@Override
public void serialize(Module module, JsonGenerator jg, SerializerProvider sp)
        throws IOException, JsonProcessingException {
    jg.writeStartObject();/*from  w w w .j a v a 2  s  .co  m*/
    jg.writeStringField("code", module.getCode());
    jg.writeFieldName("results");
    jg.writeStartArray();
    for (Result result : module.getResults()) {
        jg.writeStartObject();
        jg.writeNumberField("grade", result.getGrade());
        jg.writeEndObject();
    }
    jg.writeEndArray();
    jg.writeEndObject();
}

From source file:be.dnsbelgium.rdap.jackson.ContactSerializer.java

@Override
public void serialize(Contact contact, JsonGenerator jsonGenerator, SerializerProvider serializerProvider)
        throws IOException {
    jsonGenerator.writeStartArray();
    // start write version
    jsonGenerator.writeStartArray();/*from  www  .j a va  2s.co  m*/
    jsonGenerator.writeString("version");
    jsonGenerator.writeStartObject();
    jsonGenerator.writeEndObject();
    jsonGenerator.writeString("text");
    jsonGenerator.writeString("4.0");
    jsonGenerator.writeEndArray();
    // end write version
    for (Contact.Property property : contact.getProperties()) {
        // start write property
        jsonGenerator.writeStartArray();
        // start write property name
        String key = (property.getGroup() == null) ? property.getName()
                : property.getGroup() + "." + property.getName();
        jsonGenerator.writeString(property.getName().toLowerCase(Locale.ENGLISH));
        // end write property name
        // start write property parameters
        jsonGenerator.writeStartObject();
        if (property.getGroup() != null) {
            jsonGenerator.writeFieldName("group");
            jsonGenerator.writeString(property.getGroup());
        }
        if (property.getParameters() != null) {

            Iterator<String> it = property.getParameters().keys();
            while (it.hasNext()) {
                String k = it.next();
                if (k.equalsIgnoreCase("value")) {
                    continue;
                }
                Set<String> values = property.getParameters().get(k);
                if (values.size() == 0) {
                    // no parameters for this property, skip this step
                    continue;
                }
                jsonGenerator.writeFieldName(k.toLowerCase(Locale.ENGLISH));
                if (values.size() == 1) {
                    jsonGenerator.writeString(values.toArray(new String[values.size()])[0]);
                    continue;
                }
                // start write all property parameter values (array)
                jsonGenerator.writeStartArray();
                for (String str : property.getParameters().get(k)) {
                    jsonGenerator.writeString(str);
                }
                jsonGenerator.writeEndArray();
                // end write all property parameter values (array)

            }
        }
        jsonGenerator.writeEndObject();
        // end write property parameters
        // start write property type
        String value = "text";
        if (property.getParameters() != null) {
            Set<String> types = property.getParameters().get("VALUE");
            if (types != null) {
                value = types.iterator().next();
            }
        }
        jsonGenerator.writeString(value);
        // end write property type
        // start write property value
        JsonSerializer s = serializerProvider.findValueSerializer(property.getValue().getClass(), null);
        s.serialize(property.getValue(), jsonGenerator, serializerProvider);
        // end write property value
        jsonGenerator.writeEndArray();
        // end write property
    }
    jsonGenerator.writeEndArray();
}

From source file:com.basistech.rosette.dm.jackson.array.TempAttributeMapSerializer.java

@Override
public void serialize(Map<String, Attribute> value, JsonGenerator jgen, SerializerProvider provider)
        throws IOException {
    jgen.writeStartObject();//from  w ww .  j a  v a  2  s. c  o m
    for (Map.Entry<String, Attribute> me : value.entrySet()) {
        jgen.writeFieldName(me.getKey());
        jgen.writeStartArray();
        jgen.writeString(resolver.idFromValue(me.getValue()));
        // this will write out in array notation due to the annotation
        provider.defaultSerializeValue(me.getValue(), jgen);
        jgen.writeEndArray();
    }
    jgen.writeEndObject();
}

From source file:ijfx.service.overlay.io.OverlaySerializer.java

private void writeDoubleArray(JsonGenerator jg, String fieldName, double[] array) throws IOException {
    jg.writeFieldName(fieldName);/*from   w  w  w  .j av a 2s .com*/
    jg.writeStartArray();
    for (double d : array) {
        jg.writeNumber(d);
    }
    jg.writeEndArray();
}

From source file:org.killbill.billing.plugin.meter.api.user.JsonSamplesOutputer.java

protected void output(final OutputStream output, final List<Integer> sourceIds, final List<Integer> metricIds,
        final DateTime startTime, final DateTime endTime) throws IOException {
    // Setup Jackson
    final JsonGenerator generator = objectMapper.getJsonFactory().createJsonGenerator(output);

    generator.writeStartArray();

    // First, return all data stored in the database
    writeJsonForStoredChunks(generator, sourceIds, metricIds, startTime, endTime);

    // Now return all data in memory
    writeJsonForInMemoryChunks(generator, sourceIds, metricIds, startTime, endTime);

    // Allow implementers to flush their buffers
    writeRemainingData(generator);/* www. j  a  va2  s .c o m*/

    generator.writeEndArray();

    generator.flush();
    generator.close();
}

From source file:ijfx.service.overlay.io.OverlaySerializer.java

private void writeNumberArray(JsonGenerator jg, String arrayName, Number[] numbers) throws IOException {

    jg.writeFieldName(arrayName);/*from ww  w .ja v  a 2  s.c om*/
    jg.writeStartArray();
    for (Number n : numbers) {
        jg.writeNumber(n.doubleValue());
    }
    jg.writeEndArray();
}