Example usage for com.fasterxml.jackson.dataformat.xml.ser ToXmlGenerator writeObject

List of usage examples for com.fasterxml.jackson.dataformat.xml.ser ToXmlGenerator writeObject

Introduction

In this page you can find the example usage for com.fasterxml.jackson.dataformat.xml.ser ToXmlGenerator writeObject.

Prototype

@Override
    public void writeObject(Object value) throws IOException, JsonProcessingException 

Source Link

Usage

From source file:com.ning.billing.recurly.model.jackson.RecurlyObjectsSerializer.java

@Override
public void serialize(final T values, final JsonGenerator jgen, final SerializerProvider provider)
        throws IOException {
    if (values.isEmpty()) {
        jgen.writeStartArray();/*from  w w  w  . ja v a  2  s  .com*/
        jgen.writeEndArray();
        return;
    }

    final ToXmlGenerator xmlgen = (ToXmlGenerator) jgen;
    // Nested RecurlyObjects
    final boolean shouldSkipWritingFieldName = xmlgen.getOutputContext()
            .writeFieldName(elementName) == JsonWriteContext.STATUS_EXPECT_VALUE;
    boolean firstValue = true;
    for (final U value : values) {
        if (!shouldSkipWritingFieldName && firstValue) {
            xmlgen.setNextName(new QName(null, elementName));
        } else if (!shouldSkipWritingFieldName) {
            xmlgen.writeFieldName(elementName);
        }
        firstValue = false;

        xmlgen.writeObject(value);
    }
}