public class XmlFactory
extends com.fasterxml.jackson.core.JsonFactory
FromXmlParser
and ToXmlGenerator
instances.
Implements JsonFactory
since interface for constructing XML backed
parsers and generators is quite similar to dealing with JSON.
Modifier and Type | Field and Description |
---|---|
protected String |
_cfgNameForTextElement |
protected String |
_jdkXmlInFactory
Hiding place for JDK-serialization unthawed factories...
|
protected String |
_jdkXmlOutFactory
Hiding place for JDK-serialization unthawed factories...
|
protected XmlNameProcessor |
_nameProcessor |
protected int |
_xmlGeneratorFeatures |
protected XMLInputFactory |
_xmlInputFactory |
protected XMLOutputFactory |
_xmlOutputFactory |
protected int |
_xmlParserFeatures |
static String |
FORMAT_NAME_XML
Name used to identify XML format
(and returned by
getFormatName() |
_byteSymbolCanonicalizer, _characterEscapes, _factoryFeatures, _generatorFeatures, _inputDecorator, _maximumNonEscapedChar, _objectCodec, _outputDecorator, _parserFeatures, _quoteChar, _rootCharSymbols, _rootValueSeparator, DEFAULT_FACTORY_FEATURE_FLAGS, DEFAULT_GENERATOR_FEATURE_FLAGS, DEFAULT_PARSER_FEATURE_FLAGS, DEFAULT_QUOTE_CHAR, DEFAULT_ROOT_VALUE_SEPARATOR, FORMAT_NAME_JSON
Modifier | Constructor and Description |
---|---|
|
XmlFactory()
Default constructor used to create factory instances.
|
|
XmlFactory(com.fasterxml.jackson.core.ObjectCodec oc) |
|
XmlFactory(com.fasterxml.jackson.core.ObjectCodec oc,
int xpFeatures,
int xgFeatures,
XMLInputFactory xmlIn,
XMLOutputFactory xmlOut,
String nameForTextElem) |
protected |
XmlFactory(com.fasterxml.jackson.core.ObjectCodec oc,
int xpFeatures,
int xgFeatures,
XMLInputFactory xmlIn,
XMLOutputFactory xmlOut,
String nameForTextElem,
XmlNameProcessor nameProcessor) |
|
XmlFactory(com.fasterxml.jackson.core.ObjectCodec oc,
XMLInputFactory xmlIn,
XMLOutputFactory xmlOut) |
protected |
XmlFactory(XmlFactoryBuilder b)
Constructors used by
JsonFactoryBuilder for instantiation. |
protected |
XmlFactory(XmlFactory src,
com.fasterxml.jackson.core.ObjectCodec oc) |
|
XmlFactory(XMLInputFactory xmlIn) |
|
XmlFactory(XMLInputFactory xmlIn,
XMLOutputFactory xmlOut) |
Modifier and Type | Method and Description |
---|---|
protected com.fasterxml.jackson.core.JsonGenerator |
_createGenerator(Writer out,
com.fasterxml.jackson.core.io.IOContext ctxt) |
protected FromXmlParser |
_createParser(byte[] data,
int offset,
int len,
com.fasterxml.jackson.core.io.IOContext ctxt) |
protected FromXmlParser |
_createParser(char[] data,
int offset,
int len,
com.fasterxml.jackson.core.io.IOContext ctxt,
boolean recycleBuffer) |
protected FromXmlParser |
_createParser(InputStream in,
com.fasterxml.jackson.core.io.IOContext ctxt) |
protected FromXmlParser |
_createParser(Reader r,
com.fasterxml.jackson.core.io.IOContext ctxt) |
protected XMLStreamWriter |
_createXmlWriter(com.fasterxml.jackson.core.io.IOContext ctxt,
OutputStream out) |
protected XMLStreamWriter |
_createXmlWriter(com.fasterxml.jackson.core.io.IOContext ctxt,
Writer w) |
protected OutputStream |
_decorate(com.fasterxml.jackson.core.io.IOContext ioCtxt,
OutputStream out) |
protected Writer |
_decorate(com.fasterxml.jackson.core.io.IOContext ioCtxt,
Writer out) |
protected void |
_initFactories(XMLInputFactory xmlIn,
XMLOutputFactory xmlOut) |
protected XMLStreamReader |
_initializeXmlReader(XMLStreamReader sr) |
protected XMLStreamWriter |
_initializeXmlWriter(XMLStreamWriter sw) |
static XmlFactoryBuilder |
builder() |
boolean |
canUseCharArrays()
As of 2.4, we do have actual capability for passing char arrays
efficiently, but unfortunately
have no working mechanism for recycling buffers.
|
XmlFactory |
configure(FromXmlParser.Feature f,
boolean state)
Method for enabling or disabling specified XML parser feature.
|
XmlFactory |
configure(ToXmlGenerator.Feature f,
boolean state)
Method for enabling or disabling specified XML generator feature.
|
XmlFactory |
copy()
Note: compared to base implementation by
JsonFactory ,
here the copy will actually share underlying XML input and
output factories, as there is no way to make copies of those. |
ToXmlGenerator |
createGenerator(File f,
com.fasterxml.jackson.core.JsonEncoding enc) |
ToXmlGenerator |
createGenerator(OutputStream out) |
ToXmlGenerator |
createGenerator(OutputStream out,
com.fasterxml.jackson.core.JsonEncoding enc) |
ToXmlGenerator |
createGenerator(Writer out) |
ToXmlGenerator |
createGenerator(XMLStreamWriter sw)
Factory method that wraps given
XMLStreamWriter , usually to allow
incremental serialization to compose large output by serializing a sequence
of individual objects. |
com.fasterxml.jackson.core.JsonParser |
createParser(String content)
Overridden just to prevent trying to optimize access via char array;
while nice idea, problem is that we don't have proper hooks to ensure
that temporary buffer gets recycled; so let's just use StringReader.
|
FromXmlParser |
createParser(XMLStreamReader sr)
Factory method that wraps given
XMLStreamReader , usually to allow
partial data-binding. |
XmlFactory |
disable(FromXmlParser.Feature f)
Method for disabling specified XML parser feature.
|
XmlFactory |
disable(ToXmlGenerator.Feature f)
Method for disabling specified XML generator feature.
|
XmlFactory |
enable(FromXmlParser.Feature f)
Method for enabling specified XML parser feature.
|
XmlFactory |
enable(ToXmlGenerator.Feature f)
Method for enabling specified XML generator feature.
|
int |
getFormatGeneratorFeatures() |
String |
getFormatName()
Method that returns short textual id identifying format
this factory supports.
|
int |
getFormatParserFeatures() |
Class<FromXmlParser.Feature> |
getFormatReadFeatureType() |
Class<ToXmlGenerator.Feature> |
getFormatWriteFeatureType() |
XMLInputFactory |
getXMLInputFactory() |
XmlNameProcessor |
getXmlNameProcessor() |
XMLOutputFactory |
getXMLOutputFactory() |
String |
getXMLTextElementName() |
com.fasterxml.jackson.core.format.MatchStrength |
hasFormat(com.fasterxml.jackson.core.format.InputAccessor acc) |
static com.fasterxml.jackson.core.format.MatchStrength |
hasXMLFormat(com.fasterxml.jackson.core.format.InputAccessor acc)
Method that tries to figure out if content seems to be in some kind
of XML format.
|
boolean |
isEnabled(FromXmlParser.Feature f)
Checked whether specified XML parser feature is enabled.
|
boolean |
isEnabled(ToXmlGenerator.Feature f)
Check whether specified XML generator feature is enabled.
|
protected Object |
readResolve()
Method that we need to override to actually make restoration go
through constructors etc.
|
XmlFactoryBuilder |
rebuild() |
boolean |
requiresCustomCodec()
XML format does require support from custom
ObjectCodec
(that is, XmlMapper ), so need to return true here. |
void |
setXMLInputFactory(XMLInputFactory f)
Deprecated.
Since 2.12 -- should be set as part of build process
(either in builder, or constructor)
|
void |
setXmlNameProcessor(XmlNameProcessor processor) |
void |
setXMLOutputFactory(XMLOutputFactory f)
Deprecated.
Since 2.12 -- should be set as part of build process
(either in builder, or constructor)
|
void |
setXMLTextElementName(String name) |
com.fasterxml.jackson.core.Version |
version() |
_checkInvalidCopy, _createContentReference, _createContentReference, _createContext, _createContext, _createNonBlockingContext, _createParser, _createUTF8Generator, _createWriter, _decorate, _decorate, _decorate, _decorate, _decorate, _getBufferRecycler, canHandleBinaryNatively, canParseAsync, canUseSchema, configure, configure, configure, createGenerator, createGenerator, createJsonGenerator, createJsonGenerator, createJsonGenerator, createJsonParser, createJsonParser, createJsonParser, createJsonParser, createJsonParser, createJsonParser, createJsonParser, createNonBlockingByteArrayParser, createNonBlockingByteBufferParser, createParser, createParser, createParser, createParser, createParser, createParser, createParser, createParser, createParser, disable, disable, disable, enable, enable, enable, getCharacterEscapes, getCodec, getGeneratorFeatures, getInputDecorator, getOutputDecorator, getParserFeatures, getRootValueSeparator, hasJSONFormat, isEnabled, isEnabled, isEnabled, isEnabled, isEnabled, requiresPropertyOrdering, setCharacterEscapes, setCodec, setInputDecorator, setOutputDecorator, setRootValueSeparator
public static final String FORMAT_NAME_XML
getFormatName()
protected int _xmlParserFeatures
protected int _xmlGeneratorFeatures
protected transient XMLInputFactory _xmlInputFactory
protected transient XMLOutputFactory _xmlOutputFactory
protected String _cfgNameForTextElement
protected XmlNameProcessor _nameProcessor
protected transient String _jdkXmlInFactory
protected transient String _jdkXmlOutFactory
public XmlFactory()
public XmlFactory(com.fasterxml.jackson.core.ObjectCodec oc)
public XmlFactory(XMLInputFactory xmlIn)
public XmlFactory(XMLInputFactory xmlIn, XMLOutputFactory xmlOut)
public XmlFactory(com.fasterxml.jackson.core.ObjectCodec oc, XMLInputFactory xmlIn, XMLOutputFactory xmlOut)
public XmlFactory(com.fasterxml.jackson.core.ObjectCodec oc, int xpFeatures, int xgFeatures, XMLInputFactory xmlIn, XMLOutputFactory xmlOut, String nameForTextElem)
protected XmlFactory(com.fasterxml.jackson.core.ObjectCodec oc, int xpFeatures, int xgFeatures, XMLInputFactory xmlIn, XMLOutputFactory xmlOut, String nameForTextElem, XmlNameProcessor nameProcessor)
protected XmlFactory(XmlFactory src, com.fasterxml.jackson.core.ObjectCodec oc)
protected XmlFactory(XmlFactoryBuilder b)
JsonFactoryBuilder
for instantiation.public static XmlFactoryBuilder builder()
public XmlFactoryBuilder rebuild()
rebuild
in class com.fasterxml.jackson.core.JsonFactory
protected void _initFactories(XMLInputFactory xmlIn, XMLOutputFactory xmlOut)
public XmlFactory copy()
JsonFactory
,
here the copy will actually share underlying XML input and
output factories, as there is no way to make copies of those.copy
in class com.fasterxml.jackson.core.JsonFactory
public com.fasterxml.jackson.core.Version version()
version
in interface com.fasterxml.jackson.core.Versioned
version
in class com.fasterxml.jackson.core.JsonFactory
protected Object readResolve()
readResolve
in class com.fasterxml.jackson.core.JsonFactory
public void setXMLTextElementName(String name)
public String getXMLTextElementName()
public final XmlFactory configure(FromXmlParser.Feature f, boolean state)
public XmlFactory enable(FromXmlParser.Feature f)
public XmlFactory disable(FromXmlParser.Feature f)
public final boolean isEnabled(FromXmlParser.Feature f)
public int getFormatParserFeatures()
getFormatParserFeatures
in class com.fasterxml.jackson.core.JsonFactory
public int getFormatGeneratorFeatures()
getFormatGeneratorFeatures
in class com.fasterxml.jackson.core.JsonFactory
public XmlNameProcessor getXmlNameProcessor()
public void setXmlNameProcessor(XmlNameProcessor processor)
public final XmlFactory configure(ToXmlGenerator.Feature f, boolean state)
public XmlFactory enable(ToXmlGenerator.Feature f)
public XmlFactory disable(ToXmlGenerator.Feature f)
public final boolean isEnabled(ToXmlGenerator.Feature f)
public XMLInputFactory getXMLInputFactory()
@Deprecated public void setXMLInputFactory(XMLInputFactory f)
public XMLOutputFactory getXMLOutputFactory()
@Deprecated public void setXMLOutputFactory(XMLOutputFactory f)
public String getFormatName()
Note: sub-classes should override this method; default implementation will return null for all sub-classes
getFormatName
in class com.fasterxml.jackson.core.JsonFactory
public com.fasterxml.jackson.core.format.MatchStrength hasFormat(com.fasterxml.jackson.core.format.InputAccessor acc) throws IOException
hasFormat
in class com.fasterxml.jackson.core.JsonFactory
IOException
public boolean requiresCustomCodec()
ObjectCodec
(that is, XmlMapper
), so need to return true here.requiresCustomCodec
in class com.fasterxml.jackson.core.JsonFactory
public boolean canUseCharArrays()
canUseCharArrays
in class com.fasterxml.jackson.core.JsonFactory
public Class<FromXmlParser.Feature> getFormatReadFeatureType()
getFormatReadFeatureType
in class com.fasterxml.jackson.core.JsonFactory
public Class<ToXmlGenerator.Feature> getFormatWriteFeatureType()
getFormatWriteFeatureType
in class com.fasterxml.jackson.core.JsonFactory
public com.fasterxml.jackson.core.JsonParser createParser(String content) throws IOException
createParser
in class com.fasterxml.jackson.core.JsonFactory
IOException
public ToXmlGenerator createGenerator(OutputStream out) throws IOException
createGenerator
in class com.fasterxml.jackson.core.JsonFactory
IOException
public ToXmlGenerator createGenerator(OutputStream out, com.fasterxml.jackson.core.JsonEncoding enc) throws IOException
createGenerator
in class com.fasterxml.jackson.core.JsonFactory
IOException
public ToXmlGenerator createGenerator(Writer out) throws IOException
createGenerator
in class com.fasterxml.jackson.core.JsonFactory
IOException
public ToXmlGenerator createGenerator(File f, com.fasterxml.jackson.core.JsonEncoding enc) throws IOException
createGenerator
in class com.fasterxml.jackson.core.JsonFactory
IOException
public FromXmlParser createParser(XMLStreamReader sr) throws IOException
XMLStreamReader
, usually to allow
partial data-binding.IOException
public ToXmlGenerator createGenerator(XMLStreamWriter sw) throws IOException
XMLStreamWriter
, usually to allow
incremental serialization to compose large output by serializing a sequence
of individual objects.IOException
protected FromXmlParser _createParser(InputStream in, com.fasterxml.jackson.core.io.IOContext ctxt) throws IOException
_createParser
in class com.fasterxml.jackson.core.JsonFactory
IOException
protected FromXmlParser _createParser(Reader r, com.fasterxml.jackson.core.io.IOContext ctxt) throws IOException
_createParser
in class com.fasterxml.jackson.core.JsonFactory
IOException
protected FromXmlParser _createParser(char[] data, int offset, int len, com.fasterxml.jackson.core.io.IOContext ctxt, boolean recycleBuffer) throws IOException
_createParser
in class com.fasterxml.jackson.core.JsonFactory
IOException
protected FromXmlParser _createParser(byte[] data, int offset, int len, com.fasterxml.jackson.core.io.IOContext ctxt) throws IOException
_createParser
in class com.fasterxml.jackson.core.JsonFactory
IOException
protected com.fasterxml.jackson.core.JsonGenerator _createGenerator(Writer out, com.fasterxml.jackson.core.io.IOContext ctxt) throws IOException
_createGenerator
in class com.fasterxml.jackson.core.JsonFactory
IOException
protected XMLStreamWriter _createXmlWriter(com.fasterxml.jackson.core.io.IOContext ctxt, OutputStream out) throws IOException
IOException
protected XMLStreamWriter _createXmlWriter(com.fasterxml.jackson.core.io.IOContext ctxt, Writer w) throws IOException
IOException
protected final XMLStreamWriter _initializeXmlWriter(XMLStreamWriter sw) throws IOException
IOException
protected final XMLStreamReader _initializeXmlReader(XMLStreamReader sr) throws IOException
IOException
public static com.fasterxml.jackson.core.format.MatchStrength hasXMLFormat(com.fasterxml.jackson.core.format.InputAccessor acc) throws IOException
IOException
protected OutputStream _decorate(com.fasterxml.jackson.core.io.IOContext ioCtxt, OutputStream out) throws IOException
IOException
protected Writer _decorate(com.fasterxml.jackson.core.io.IOContext ioCtxt, Writer out) throws IOException
IOException
Copyright © 2022 FasterXML. All rights reserved.