XmlModule.java
package tools.jackson.dataformat.xml;
import tools.jackson.core.Version;
import tools.jackson.databind.JacksonModule;
import tools.jackson.dataformat.xml.deser.XmlBeanDeserializerModifier;
import tools.jackson.dataformat.xml.ser.XmlBeanSerializerModifier;
public class XmlModule
extends JacksonModule
implements java.io.Serializable
{
private static final long serialVersionUID = 3L;
public XmlModule() { }
@Override
public String getModuleName() {
return getClass().getName();
}
@Override
public Version version() {
return PackageVersion.VERSION;
}
@Override
public void setupModule(SetupContext context)
{
context.addSerializerModifier(new XmlBeanSerializerModifier());
// and then bit trickier, need to add a modifier...
// Need to modify BeanDeserializer, BeanSerializer that are used
XmlMapper.Builder builder = (XmlMapper.Builder) context.getOwner();
final String textElemName = builder.nameForTextElement();
context.addDeserializerModifier(new XmlBeanDeserializerModifier(textElemName));
}
}