Top Description Fields Constructors Methods
com.fasterxml.jackson.dataformat.xml.ser

public Class XmlBeanSerializerModifier

extends BeanSerializerModifier
implements Serializable
Class Inheritance
All Implemented Interfaces
java.io.Serializable
Imports
java.util.*, com.fasterxml.jackson.databind.*, com.fasterxml.jackson.databind.introspect.AnnotatedMember, com.fasterxml.jackson.databind.ser.*, com.fasterxml.jackson.databind.ser.std.BeanSerializerBase, com.fasterxml.jackson.dataformat.xml.util.AnnotationUtil, .TypeUtil, .XmlInfo

We need a BeanSerializerModifier to replace default BeanSerializer with XML-specific one; mostly to ensure that attribute properties are output before element properties.

Field Summary

Modifier and TypeField and Description
private static final long

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public List<BeanPropertyWriter>
changeProperties(SerializationConfig config, BeanDescription beanDesc, List<BeanPropertyWriter> beanProperties)

Overrides com.fasterxml.jackson.databind.ser.BeanSerializerModifier.changeProperties.

First thing to do is to find annotations regarding XML serialization, and wrap collection serializers.

public JsonSerializer<?>
modifySerializer(SerializationConfig config, BeanDescription beanDesc, JsonSerializer<?> serializer)

Overrides com.fasterxml.jackson.databind.ser.BeanSerializerModifier.modifySerializer.

Method called by BeanSerializerFactory after constructing default bean serializer instance with properties collected and ordered earlier.

Inherited from com.fasterxml.jackson.databind.ser.BeanSerializerModifier:
modifyArraySerializermodifyCollectionLikeSerializermodifyCollectionSerializermodifyEnumSerializermodifyKeySerializermodifyMapLikeSerializermodifyMapSerializerorderPropertiesupdateBuilder

Field Detail

serialVersionUIDback to summary
private static final long serialVersionUID

Hides com.fasterxml.jackson.databind.ser.BeanSerializerModifier.serialVersionUID.

Constructor Detail

XmlBeanSerializerModifierback to summary
public XmlBeanSerializerModifier()

Method Detail

changePropertiesback to summary
public List<BeanPropertyWriter> changeProperties(SerializationConfig config, BeanDescription beanDesc, List<BeanPropertyWriter> beanProperties)

Overrides com.fasterxml.jackson.databind.ser.BeanSerializerModifier.changeProperties.

First thing to do is to find annotations regarding XML serialization, and wrap collection serializers.

Annotations
@Override
modifySerializerback to summary
public JsonSerializer<?> modifySerializer(SerializationConfig config, BeanDescription beanDesc, JsonSerializer<?> serializer)

Overrides com.fasterxml.jackson.databind.ser.BeanSerializerModifier.modifySerializer.

Doc from com.fasterxml.jackson.databind.ser.BeanSerializerModifier.modifySerializer.

Method called by BeanSerializerFactory after constructing default bean serializer instance with properties collected and ordered earlier. Implementations can modify or replace given serializer and return serializer to use. Note that although initial serializer being passed is of type BeanSerializer, modifiers may return serializers of other types; and this is why implementations must check for type before casting.

Note

since 2.2, gets called for serializer of those non-POJO types that do not go through any of more specific modifyXxxSerializer methods; mostly for JDK types like java.util.Iterator and such.

Annotations
@Override