private void printProperty()

in src/main/java/com/amazonaws/services/neptune/propertygraph/io/JsonPropertyGraphPrinter.java [124:154]


    private void printProperty(Object value, DataType dataType, String formattedKey, boolean forceMultiValue) throws IOException {

        if (forceMultiValue) {

            List<?> values = isList(value) ? (List<?>) value : Collections.singletonList(value);

            generator.writeFieldName(formattedKey);
            generator.writeStartArray();
            for (Object v : values) {
                dataType.printTo(generator, v);
            }
            generator.writeEndArray();

        } else {
            if (isList(value)) {
                List<?> values = (List<?>) value;
                if (values.size() != 1 || printerOptions.json().strictCardinality()) {
                    generator.writeFieldName(formattedKey);
                    generator.writeStartArray();
                    for (Object v : values) {
                        dataType.printTo(generator, v);
                    }
                    generator.writeEndArray();
                } else {
                    dataType.printTo(generator, formattedKey, values.get(0));
                }
            } else {
                dataType.printTo(generator, formattedKey, value);
            }
        }
    }