Top Description Fields Constructors Methods
tools.jackson.dataformat.xml.ser

public Class XmlBeanSerializerModifier

extends ValueSerializerModifier
implements Serializable
Class Inheritance
All Implemented Interfaces
java.io.Serializable
Imports
java.util.*, tools.jackson.databind.*, tools.jackson.databind.introspect.AnnotatedMember, tools.jackson.databind.ser.*, tools.jackson.databind.ser.bean.BeanSerializerBase, tools.jackson.dataformat.xml.util.AnnotationUtil, .TypeUtil, .XmlInfo

We need a ValueSerializerModifier 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.Supplier beanDescRef, List<BeanPropertyWriter> beanProperties)

Overrides tools.jackson.databind.ser.ValueSerializerModifier.changeProperties.

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

public ValueSerializer<?>
modifySerializer(SerializationConfig config, BeanDescription.Supplier beanDescRefc, ValueSerializer<?> serializer)

Overrides tools.jackson.databind.ser.ValueSerializerModifier.modifySerializer.

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

Inherited from tools.jackson.databind.ser.ValueSerializerModifier:
modifyArraySerializermodifyCollectionLikeSerializermodifyCollectionSerializermodifyEnumSerializermodifyKeySerializermodifyMapLikeSerializermodifyMapSerializerorderPropertiesupdateBuilder

Field Detail

serialVersionUIDback to summary
private static final long serialVersionUID

Hides tools.jackson.databind.ser.ValueSerializerModifier.serialVersionUID.

Constructor Detail

XmlBeanSerializerModifierback to summary
public XmlBeanSerializerModifier()

Method Detail

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

Overrides tools.jackson.databind.ser.ValueSerializerModifier.changeProperties.

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

Annotations
@Override
modifySerializerback to summary
public ValueSerializer<?> modifySerializer(SerializationConfig config, BeanDescription.Supplier beanDescRefc, ValueSerializer<?> serializer)

Overrides tools.jackson.databind.ser.ValueSerializerModifier.modifySerializer.

Doc from tools.jackson.databind.ser.ValueSerializerModifier.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

this method 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