Class XmlMapper.Builder

java.lang.Object
tools.jackson.databind.cfg.MapperBuilder<XmlMapper,XmlMapper.Builder>
tools.jackson.dataformat.xml.XmlMapper.Builder
Enclosing class:
XmlMapper

public static class XmlMapper.Builder extends tools.jackson.databind.cfg.MapperBuilder<XmlMapper,XmlMapper.Builder>
Builder implementation for constructing XmlMapper instances.
Since:
3.0
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected boolean
     
    protected String
     

    Fields inherited from class tools.jackson.databind.cfg.MapperBuilder

    _abstractTypeResolvers, _baseSettings, _classIntrospector, _coercionConfigs, _configOverrides, _datatypeFeatures, _defaultAttributes, _defaultPrettyPrinter, _deserFeatures, _deserializationContexts, _deserializerFactory, _filterProvider, _formatReadFeatures, _formatWriteFeatures, _injectableValues, _mapperFeatures, _mixInHandler, _modules, _problemHandlers, _savedState, _serFeatures, _serializationContexts, _serializerFactory, _streamFactory, _streamReadFeatures, _streamWriteFeatures, _subtypeResolver, _typeFactory, _typeResolverProvider, DEFAULT_ACCESSOR_NAMING, DEFAULT_ANNOTATION_INTROSPECTOR, DEFAULT_BASE_SETTINGS, DEFAULT_DESER_FEATURES, DEFAULT_MAPPER_FEATURES, DEFAULT_PRETTY_PRINTER, DEFAULT_SER_FEATURES, DEFAULT_TYPE_RESOLVER_PROVIDER, DEFAULT_TYPE_VALIDATOR, NO_ABSTRACT_TYPE_RESOLVERS
  • Constructor Summary

    Constructors
    Constructor
    Description
     
    NOTE: despite being public not exposed as part of API
  • Method Summary

    Modifier and Type
    Method
    Description
    protected tools.jackson.databind.jsontype.TypeResolverBuilder<?>
    _defaultDefaultTypingResolver(tools.jackson.databind.jsontype.PolymorphicTypeValidator ptv, tools.jackson.databind.DefaultTyping applicability, com.fasterxml.jackson.annotation.JsonTypeInfo.As includeAs)
     
    protected tools.jackson.databind.jsontype.TypeResolverBuilder<?>
    _defaultDefaultTypingResolver(tools.jackson.databind.jsontype.PolymorphicTypeValidator ptv, tools.jackson.databind.DefaultTyping applicability, String propertyName)
     
    protected tools.jackson.databind.cfg.DeserializationContexts
     
    protected tools.jackson.core.PrettyPrinter
    Overridden to (try to) ensure we use XML-compatible default indenter
    protected tools.jackson.databind.cfg.SerializationContexts
     
    protected tools.jackson.databind.cfg.MapperBuilderState
     
    activateDefaultTyping(tools.jackson.databind.jsontype.PolymorphicTypeValidator ptv, tools.jackson.databind.DefaultTyping dti)
     
     
    configure(XmlReadFeature feature, boolean state)
     
    configure(XmlWriteFeature feature, boolean state)
     
    The builder returned uses default settings more closely matching the default configs used in Jackson 2.x versions.
    boolean
     
    defaultUseWrapper(boolean b)
    Determination of whether indexed properties (arrays, Lists) that are not explicitly annotated (with JacksonXmlElementWrapper or equivalent) should default to using implicit wrapper (with same name as property) or not.
    disable(XmlReadFeature... features)
     
    disable(XmlWriteFeature... features)
     
    enable(XmlReadFeature... features)
     
    enable(XmlWriteFeature... features)
     
     
    Name used for pseudo-property used for returning XML Text value (cdata within element, which does not have actual element name to use) as a named value (since JSON data model just has named values, except for arrays).

    Methods inherited from class tools.jackson.databind.cfg.MapperBuilder

    _constructModuleContext, _defaultClassIntrospector, _defaultDefaultAttributes, _defaultMixInHandler, _defaultSerializerFactory, _defaultSubtypeResolver, _defaultTypeFactory, _defaultTypeResolverProvider, _this, accessorNaming, activateDefaultTyping, activateDefaultTyping, activateDefaultTypingAsProperty, addAbstractTypeResolver, addHandler, addMixIn, addMixIns, addModule, addModules, addModules, addTypeModifier, annotationIntrospector, annotationIntrospector, baseSettings, baseSettings, buildDeserializationConfig, buildSerializationConfig, cacheProvider, changeDefaultNullHandling, changeDefaultPropertyInclusion, changeDefaultVisibility, classIntrospector, classIntrospector, clearProblemHandlers, configure, configure, configure, configure, configure, configure, constructorDetector, datatypeFeatures, deactivateDefaultTyping, defaultAttributes, defaultAttributes, defaultBase64Variant, defaultDateFormat, defaultLeniency, defaultLocale, defaultMergeable, defaultPrettyPrinter, defaultPrettyPrinter, defaultTimeZone, deserializationContexts, deserializationContexts, deserializationProblemHandlers, deserializerFactory, deserializerFactory, disable, disable, disable, disable, disable, disable, enable, enable, enable, enable, enable, enable, enumNamingStrategy, filterProvider, filterProvider, findAndAddModules, findAndAddModules, findModules, findModules, handlerInstantiator, injectableValues, injectableValues, isEnabled, isEnabled, isEnabled, isEnabled, isEnabled, isEnabled, mixInHandler, mixInHandler, mixInOverrides, nodeFactory, polymorphicTypeValidator, propertyNamingStrategy, registerSubtypes, registerSubtypes, registerSubtypes, removeAllModules, removeMixIn, saveStateApplyModules, serializationContexts, serializationContexts, serializerFactory, serializerFactory, setDefaultTyping, streamFactory, subtypeResolver, subtypeResolver, typeFactory, typeFactory, typeResolverProvider, typeResolverProvider, withAllCoercionConfigs, withAllConfigOverrides, withCoercionConfig, withCoercionConfig, withCoercionConfigDefaults, withConfigOverride, withModules

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • _defaultUseWrapper

      protected boolean _defaultUseWrapper
    • _nameForTextElement

      protected String _nameForTextElement
  • Constructor Details

    • Builder

      public Builder(XmlFactory f)
    • Builder

      public Builder(XmlMapper.XmlBuilderState state)
      NOTE: despite being public not exposed as part of API
      Parameters:
      state - State to restore builder from
  • Method Details

    • build

      public XmlMapper build()
      Specified by:
      build in class tools.jackson.databind.cfg.MapperBuilder<XmlMapper,XmlMapper.Builder>
    • _saveState

      protected tools.jackson.databind.cfg.MapperBuilderState _saveState()
      Specified by:
      _saveState in class tools.jackson.databind.cfg.MapperBuilder<XmlMapper,XmlMapper.Builder>
    • _defaultSerializationContexts

      protected tools.jackson.databind.cfg.SerializationContexts _defaultSerializationContexts()
      Overrides:
      _defaultSerializationContexts in class tools.jackson.databind.cfg.MapperBuilder<XmlMapper,XmlMapper.Builder>
    • _defaultDeserializationContexts

      protected tools.jackson.databind.cfg.DeserializationContexts _defaultDeserializationContexts()
      Overrides:
      _defaultDeserializationContexts in class tools.jackson.databind.cfg.MapperBuilder<XmlMapper,XmlMapper.Builder>
    • _defaultPrettyPrinter

      protected tools.jackson.core.PrettyPrinter _defaultPrettyPrinter()
      Overridden to (try to) ensure we use XML-compatible default indenter
      Overrides:
      _defaultPrettyPrinter in class tools.jackson.databind.cfg.MapperBuilder<XmlMapper,XmlMapper.Builder>
    • _defaultDefaultTypingResolver

      protected tools.jackson.databind.jsontype.TypeResolverBuilder<?> _defaultDefaultTypingResolver(tools.jackson.databind.jsontype.PolymorphicTypeValidator ptv, tools.jackson.databind.DefaultTyping applicability, com.fasterxml.jackson.annotation.JsonTypeInfo.As includeAs)
      Overrides:
      _defaultDefaultTypingResolver in class tools.jackson.databind.cfg.MapperBuilder<XmlMapper,XmlMapper.Builder>
    • _defaultDefaultTypingResolver

      protected tools.jackson.databind.jsontype.TypeResolverBuilder<?> _defaultDefaultTypingResolver(tools.jackson.databind.jsontype.PolymorphicTypeValidator ptv, tools.jackson.databind.DefaultTyping applicability, String propertyName)
      Overrides:
      _defaultDefaultTypingResolver in class tools.jackson.databind.cfg.MapperBuilder<XmlMapper,XmlMapper.Builder>
    • activateDefaultTyping

      public XmlMapper.Builder activateDefaultTyping(tools.jackson.databind.jsontype.PolymorphicTypeValidator ptv, tools.jackson.databind.DefaultTyping dti)
      Overrides:
      activateDefaultTyping in class tools.jackson.databind.cfg.MapperBuilder<XmlMapper,XmlMapper.Builder>
    • enable

      public XmlMapper.Builder enable(XmlReadFeature... features)
    • disable

      public XmlMapper.Builder disable(XmlReadFeature... features)
    • configure

      public XmlMapper.Builder configure(XmlReadFeature feature, boolean state)
    • enable

      public XmlMapper.Builder enable(XmlWriteFeature... features)
    • disable

      public XmlMapper.Builder disable(XmlWriteFeature... features)
    • configure

      public XmlMapper.Builder configure(XmlWriteFeature feature, boolean state)
    • configureForJackson2

      public XmlMapper.Builder configureForJackson2()
      The builder returned uses default settings more closely matching the default configs used in Jackson 2.x versions.

      This method is still a work in progress and may not yet fully replicate the default settings of Jackson 2.x.

      Overrides:
      configureForJackson2 in class tools.jackson.databind.cfg.MapperBuilder<XmlMapper,XmlMapper.Builder>
    • defaultUseWrapper

      public boolean defaultUseWrapper()
    • defaultUseWrapper

      public XmlMapper.Builder defaultUseWrapper(boolean b)
      Determination of whether indexed properties (arrays, Lists) that are not explicitly annotated (with JacksonXmlElementWrapper or equivalent) should default to using implicit wrapper (with same name as property) or not. If enabled, wrapping is used by default; if false, it is not.

      Note that JAXB annotation introspector always assumes "do not wrap by default". Jackson annotations have different default due to backwards compatibility.

    • nameForTextElement

      public String nameForTextElement()
    • nameForTextElement

      public XmlMapper.Builder nameForTextElement(String elem)
      Name used for pseudo-property used for returning XML Text value (cdata within element, which does not have actual element name to use) as a named value (since JSON data model just has named values, except for arrays). Defaults to empty String, but may be changed for interoperability reasons: JAXB, for example, uses "value" as name.