Top Description Fields Constructors Methods
com.ctc.wstx.api

public final Class WriterConfig

extends CommonConfig
implements OutputConfigFlags
Class Inheritance
All Implemented Interfaces
com.ctc.wstx.cfg.OutputConfigFlags
Imports
java.lang.ref.SoftReference, java.util.HashMap, javax.xml.stream.XMLOutputFactory, .XMLReporter, org.codehaus.stax2.XMLOutputFactory2, .XMLStreamProperties, org.codehaus.stax2.io.EscapingWriterFactory, com.ctc.wstx.cfg.OutputConfigFlags, com.ctc.wstx.io.BufferRecycler, com.ctc.wstx.util.ArgUtil, .DataUtil

Simple configuration container class; passed by writer factory to writer instance created.

Field Summary

Modifier and TypeField and Description
pack-priv static final boolean
DEFAULT_ADD_SPACE_AFTER_EMPTY_ELEM

09-Aug-2007, TSa: Space has always been added after empty element (before closing "/>"), but now it is configurable.

protected static final String
pack-priv static final boolean
pack-priv static final boolean
pack-priv static final boolean
DEFAULT_FIX_CONTENT

As per [WSTX-120], default was changed to false, from true (default prior to wstx 4.0)

pack-priv static final int
DEFAULT_FLAGS_FULL

For now, full instances start with same settings as J2ME subset

pack-priv static final int
DEFAULT_FLAGS_J2ME

Default config flags are converted from individual settings, to conform to Stax 1.0 specifications.

pack-priv static final boolean
pack-priv static final boolean
pack-priv static final boolean
pack-priv static final boolean
pack-priv static final boolean
pack-priv static final boolean
protected int
pack-priv BufferRecycler
mCurrRecycler

This is the actually container of the recyclable buffers.

pack-priv final boolean
pack-priv static final ThreadLocal<SoftReference<BufferRecycler>>
mRecyclerRef

This ThreadLocal contains a SoftRerefence to a BufferRecycler used to provide a low-cost buffer recycling between Reader instances.

pack-priv Object[]
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
pack-priv static final HashMap<String, Integer>
sProperties

Map to use for converting from String property ids to ints described above; useful to allow use of switch later on.

Inherited from com.ctc.wstx.api.CommonConfig:
CPROP_IMPL_NAMECPROP_IMPL_VERSIONCPROP_RETURN_NULL_FOR_DEFAULT_NAMESPACECPROP_SUPPORT_XMLIDCPROP_SUPPORTS_XML11IMPL_NAMEIMPL_VERSIONmReturnNullForDefaultNamespacesStdProperties

Constructor Summary

AccessConstructor and Description
private
WriterConfig(WriterConfig base, boolean j2meSubset, int flags, Object[] specProps)

Method Summary

Modifier and TypeMethod and Description
public byte[]
allocFullBBuffer(int minSize)

public char[]
allocFullCBuffer(int minSize)

public char[]
allocMediumCBuffer(int minSize)

Method called to allocate intermediate recyclable copy buffers

public boolean
public boolean
public boolean
public void
configureForRobustness()

For Woodstox, this profile enables all basic well-formedness checks, including checking for name validity, and also enables all matching "fix-me" properties (currently only content-fixing property exists).

public void
configureForSpeed()

For Woodstox, setting this profile disables most checks for validity; specifically anything that can have measurable performance impact.

public void
configureForXmlConformance()

For Woodstox, this profile enables all basic well-formedness checks, including checking for name validity.

public static WriterConfig
public static WriterConfig
public WriterConfig
private BufferRecycler
public void
doAddSpaceAfterEmptyElem(boolean state)

public void
doAutoCloseOutput(boolean state)

public void
doCopyDefaultAttrs(boolean state)

public void
doEscapeCr(boolean state)

public void
doFixContent(boolean state)

public void
doOutputCDataAsText(boolean state)

public void
doSupportNamespaces(boolean state)

public void
public void
doValidateAttributes(boolean state)

public void
doValidateContent(boolean state)

public void
doValidateNames(boolean state)

public void
doValidateStructure(boolean state)

public void
public void
public void
protected int
public void
freeFullBBuffer(byte[] buffer)

public void
freeFullCBuffer(char[] buffer)

public void
freeMediumCBuffer(char[] buffer)

public EscapingWriterFactory
public String

Returns:

Prefix to use as the base for automatically generated namespace prefixes ("namespace prefix prefix", so to speak). Defaults to "wstxns".
getAutomaticNsPrefix
()

public int
public EmptyElementHandler
public InvalidCharHandler
public XMLReporter
public Object
private final Object
public EscapingWriterFactory
private final boolean
hasConfigFlag(int flag)

public void
public void
setAutomaticNsPrefix(String
Prefix to use as the base for automatically generated namespace prefixes ("namespace prefix prefix", so to speak).
prefix
)

private void
setConfigFlag(int flag, boolean state)

public void
public void
public void
public boolean

Returns:

True, if the specified property was succesfully set to specified value; false if its value was not changed
setProperty
(String name, int id, Object value)

Implements abstract com.ctc.wstx.api.CommonConfig.setProperty.

private final void
setSpecialProperty(int ix, Object value)

public void
public boolean
public boolean
public boolean
public boolean
public boolean
public boolean
public boolean
public boolean
public boolean
public boolean
public boolean
public boolean
Inherited from com.ctc.wstx.api.CommonConfig:
doesSupportXml11doesSupportXmlIdfindStdPropertyIdgetImplNamegetImplVersiongetPropertygetStdPropertyisPropertySupportedreportUnknownPropertyreturnNullForDefaultNamespacesafeGetPropertysetPropertysetStdProperty

Field Detail

DEFAULT_ADD_SPACE_AFTER_EMPTY_ELEMback to summary
pack-priv static final boolean DEFAULT_ADD_SPACE_AFTER_EMPTY_ELEM

09-Aug-2007, TSa: Space has always been added after empty element (before closing "/>"), but now it is configurable. 31-Dec-2009, TSa: Intention was to leave it enabled for backwards compatibility: but due to a bug this was NOT the case... ugh.

DEFAULT_AUTOMATIC_NS_PREFIXback to summary
protected static final String DEFAULT_AUTOMATIC_NS_PREFIX
DEFAULT_COPY_DEFAULT_ATTRSback to summary
pack-priv static final boolean DEFAULT_COPY_DEFAULT_ATTRS
DEFAULT_ESCAPE_CRback to summary
pack-priv static final boolean DEFAULT_ESCAPE_CR
DEFAULT_FIX_CONTENTback to summary
pack-priv static final boolean DEFAULT_FIX_CONTENT

As per [WSTX-120], default was changed to false, from true (default prior to wstx 4.0)

DEFAULT_FLAGS_FULLback to summary
pack-priv static final int DEFAULT_FLAGS_FULL

For now, full instances start with same settings as J2ME subset

DEFAULT_FLAGS_J2MEback to summary
pack-priv static final int DEFAULT_FLAGS_J2ME

Default config flags are converted from individual settings, to conform to Stax 1.0 specifications.

DEFAULT_OUTPUT_CDATA_AS_TEXTback to summary
pack-priv static final boolean DEFAULT_OUTPUT_CDATA_AS_TEXT
DEFAULT_USE_DOUBLE_QUOTES_IN_XML_DECLback to summary
pack-priv static final boolean DEFAULT_USE_DOUBLE_QUOTES_IN_XML_DECL
DEFAULT_VALIDATE_ATTRback to summary
pack-priv static final boolean DEFAULT_VALIDATE_ATTR
DEFAULT_VALIDATE_CONTENTback to summary
pack-priv static final boolean DEFAULT_VALIDATE_CONTENT
DEFAULT_VALIDATE_NAMESback to summary
pack-priv static final boolean DEFAULT_VALIDATE_NAMES
DEFAULT_VALIDATE_STRUCTUREback to summary
pack-priv static final boolean DEFAULT_VALIDATE_STRUCTURE
mConfigFlagsback to summary
protected int mConfigFlags
mCurrRecyclerback to summary
pack-priv BufferRecycler mCurrRecycler

This is the actually container of the recyclable buffers. It is obtained via ThreadLocal/SoftReference combination, if one exists, when Config instance is created. If one does not exists, it will created first time a buffer is returned.

mIsJ2MESubsetback to summary
pack-priv final boolean mIsJ2MESubset
mRecyclerRefback to summary
pack-priv static final ThreadLocal<SoftReference<BufferRecycler>> mRecyclerRef

This ThreadLocal contains a SoftRerefence to a BufferRecycler used to provide a low-cost buffer recycling between Reader instances.

mSpecialPropertiesback to summary
pack-priv Object[] mSpecialProperties
PROP_ADD_SPACE_AFTER_EMPTY_ELEMback to summary
pack-priv static final int PROP_ADD_SPACE_AFTER_EMPTY_ELEM
PROP_ATTR_VALUE_ESCAPERback to summary
pack-priv static final int PROP_ATTR_VALUE_ESCAPER
PROP_AUTO_CLOSE_OUTPUTback to summary
pack-priv static final int PROP_AUTO_CLOSE_OUTPUT
PROP_AUTOMATIC_EMPTY_ELEMENTSback to summary
pack-priv static final int PROP_AUTOMATIC_EMPTY_ELEMENTS
PROP_AUTOMATIC_END_ELEMENTSback to summary
pack-priv static final int PROP_AUTOMATIC_END_ELEMENTS
PROP_AUTOMATIC_NSback to summary
pack-priv static final int PROP_AUTOMATIC_NS
PROP_AUTOMATIC_NS_PREFIXback to summary
pack-priv static final int PROP_AUTOMATIC_NS_PREFIX
PROP_COPY_DEFAULT_ATTRSback to summary
pack-priv static final int PROP_COPY_DEFAULT_ATTRS
PROP_ENABLE_NSback to summary
pack-priv static final int PROP_ENABLE_NS
PROP_ESCAPE_CRback to summary
pack-priv static final int PROP_ESCAPE_CR
PROP_FIX_CONTENTback to summary
pack-priv static final int PROP_FIX_CONTENT
PROP_OUTPUT_CDATA_AS_TEXTback to summary
pack-priv static final int PROP_OUTPUT_CDATA_AS_TEXT
PROP_OUTPUT_EMPTY_ELEMENT_HANDLERback to summary
pack-priv static final int PROP_OUTPUT_EMPTY_ELEMENT_HANDLER
PROP_OUTPUT_INVALID_CHAR_HANDLERback to summary
pack-priv static final int PROP_OUTPUT_INVALID_CHAR_HANDLER
PROP_PROBLEM_REPORTERback to summary
pack-priv static final int PROP_PROBLEM_REPORTER
PROP_TEXT_ESCAPERback to summary
pack-priv static final int PROP_TEXT_ESCAPER
PROP_UNDERLYING_STREAMback to summary
pack-priv static final int PROP_UNDERLYING_STREAM
PROP_UNDERLYING_WRITERback to summary
pack-priv static final int PROP_UNDERLYING_WRITER
PROP_USE_DOUBLE_QUOTES_IN_XML_DECLback to summary
pack-priv static final int PROP_USE_DOUBLE_QUOTES_IN_XML_DECL
PROP_VALIDATE_ATTRback to summary
pack-priv static final int PROP_VALIDATE_ATTR
PROP_VALIDATE_CONTENTback to summary
pack-priv static final int PROP_VALIDATE_CONTENT
PROP_VALIDATE_NAMESback to summary
pack-priv static final int PROP_VALIDATE_NAMES
PROP_VALIDATE_STRUCTUREback to summary
pack-priv static final int PROP_VALIDATE_STRUCTURE
SP_IX_ATTR_VALUE_ESCAPER_FACTORYback to summary
private static final int SP_IX_ATTR_VALUE_ESCAPER_FACTORY
SP_IX_AUTO_NS_PREFIXback to summary
private static final int SP_IX_AUTO_NS_PREFIX
SP_IX_EMPTY_ELEMENT_HANDLERback to summary
private static final int SP_IX_EMPTY_ELEMENT_HANDLER
SP_IX_INVALID_CHAR_HANDLERback to summary
private static final int SP_IX_INVALID_CHAR_HANDLER
SP_IX_PROBLEM_REPORTERback to summary
private static final int SP_IX_PROBLEM_REPORTER
SP_IX_TEXT_ESCAPER_FACTORYback to summary
private static final int SP_IX_TEXT_ESCAPER_FACTORY
SPEC_PROC_COUNTback to summary
private static final int SPEC_PROC_COUNT
sPropertiesback to summary
pack-priv static final HashMap<String, Integer> sProperties

Map to use for converting from String property ids to ints described above; useful to allow use of switch later on.

Constructor Detail

WriterConfigback to summary
private WriterConfig(WriterConfig base, boolean j2meSubset, int flags, Object[] specProps)

Method Detail

allocFullBBufferback to summary
public byte[] allocFullBBuffer(int minSize)
allocFullCBufferback to summary
public char[] allocFullCBuffer(int minSize)
allocMediumCBufferback to summary
public char[] allocMediumCBuffer(int minSize)

Method called to allocate intermediate recyclable copy buffers

automaticEmptyElementsEnabledback to summary
public boolean automaticEmptyElementsEnabled()
automaticEndElementsEnabledback to summary
public boolean automaticEndElementsEnabled()
automaticNamespacesEnabledback to summary
public boolean automaticNamespacesEnabled()
configureForRobustnessback to summary
public void configureForRobustness()

For Woodstox, this profile enables all basic well-formedness checks, including checking for name validity, and also enables all matching "fix-me" properties (currently only content-fixing property exists).

configureForSpeedback to summary
public void configureForSpeed()

For Woodstox, setting this profile disables most checks for validity; specifically anything that can have measurable performance impact.

configureForXmlConformanceback to summary
public void configureForXmlConformance()

For Woodstox, this profile enables all basic well-formedness checks, including checking for name validity.

createFullDefaultsback to summary
public static WriterConfig createFullDefaults()
createJ2MEDefaultsback to summary
public static WriterConfig createJ2MEDefaults()
createNonSharedback to summary
public WriterConfig createNonShared()
createRecyclerback to summary
private BufferRecycler createRecycler()
doAddSpaceAfterEmptyElemback to summary
public void doAddSpaceAfterEmptyElem(boolean state)
doAutoCloseOutputback to summary
public void doAutoCloseOutput(boolean state)
doCopyDefaultAttrsback to summary
public void doCopyDefaultAttrs(boolean state)
doEscapeCrback to summary
public void doEscapeCr(boolean state)
doFixContentback to summary
public void doFixContent(boolean state)
doOutputCDataAsTextback to summary
public void doOutputCDataAsText(boolean state)
doSupportNamespacesback to summary
public void doSupportNamespaces(boolean state)
doUseDoubleQuotesInXmlDeclback to summary
public void doUseDoubleQuotesInXmlDecl(boolean state)
Since
4.2.2
doValidateAttributesback to summary
public void doValidateAttributes(boolean state)
doValidateContentback to summary
public void doValidateContent(boolean state)
doValidateNamesback to summary
public void doValidateNames(boolean state)
doValidateStructureback to summary
public void doValidateStructure(boolean state)
enableAutomaticEmptyElementsback to summary
public void enableAutomaticEmptyElements(boolean state)
enableAutomaticEndElementsback to summary
public void enableAutomaticEndElements(boolean state)
enableAutomaticNamespacesback to summary
public void enableAutomaticNamespaces(boolean state)
findPropertyIdback to summary
protected int findPropertyId(String propName)

Implements abstract com.ctc.wstx.api.CommonConfig.findPropertyId.

Returns:int

Doc from com.ctc.wstx.api.CommonConfig.findPropertyId.

Internal enumerated int matching the String name of the property, if one found: -1 to indicate no match was found.

Annotations
@Override
freeFullBBufferback to summary
public void freeFullBBuffer(byte[] buffer)
freeFullCBufferback to summary
public void freeFullCBuffer(char[] buffer)
freeMediumCBufferback to summary
public void freeMediumCBuffer(char[] buffer)
getAttrValueEscaperFactoryback to summary
public EscapingWriterFactory getAttrValueEscaperFactory()
getAutomaticNsPrefixback to summary
public String getAutomaticNsPrefix()
Returns:String

Prefix to use as the base for automatically generated namespace prefixes ("namespace prefix prefix", so to speak). Defaults to "wstxns".

getConfigFlagsback to summary
public int getConfigFlags()
getEmptyElementHandlerback to summary
public EmptyElementHandler getEmptyElementHandler()
getInvalidCharHandlerback to summary
public InvalidCharHandler getInvalidCharHandler()
getProblemReporterback to summary
public XMLReporter getProblemReporter()
getPropertyback to summary
public Object getProperty(int id)

Implements abstract com.ctc.wstx.api.CommonConfig.getProperty.

Annotations
@Override
getSpecialPropertyback to summary
private final Object getSpecialProperty(int ix)
getTextEscaperFactoryback to summary
public EscapingWriterFactory getTextEscaperFactory()
hasConfigFlagback to summary
private final boolean hasConfigFlag(int flag)
setAttrValueEscaperFactoryback to summary
public void setAttrValueEscaperFactory(EscapingWriterFactory f)
setAutomaticNsPrefixback to summary
public void setAutomaticNsPrefix(String prefix)
Parameters
prefix:String

Prefix to use as the base for automatically generated namespace prefixes ("namespace prefix prefix", so to speak).

setConfigFlagback to summary
private void setConfigFlag(int flag, boolean state)
setEmptyElementHandlerback to summary
public void setEmptyElementHandler(EmptyElementHandler h)
setInvalidCharHandlerback to summary
public void setInvalidCharHandler(InvalidCharHandler h)
setProblemReporterback to summary
public void setProblemReporter(XMLReporter rep)
setPropertyback to summary
public boolean setProperty(String name, int id, Object value)

Implements abstract com.ctc.wstx.api.CommonConfig.setProperty.

Returns:boolean

True, if the specified property was succesfully set to specified value; false if its value was not changed

Annotations
@Override
setSpecialPropertyback to summary
private final void setSpecialProperty(int ix, Object value)
setTextEscaperFactoryback to summary
public void setTextEscaperFactory(EscapingWriterFactory f)
willAddSpaceAfterEmptyElemback to summary
public boolean willAddSpaceAfterEmptyElem()
willAutoCloseOutputback to summary
public boolean willAutoCloseOutput()
willCopyDefaultAttrsback to summary
public boolean willCopyDefaultAttrs()
willEscapeCrback to summary
public boolean willEscapeCr()
willFixContentback to summary
public boolean willFixContent()
willOutputCDataAsTextback to summary
public boolean willOutputCDataAsText()
willSupportNamespacesback to summary
public boolean willSupportNamespaces()
willUseDoubleQuotesInXmlDeclback to summary
public boolean willUseDoubleQuotesInXmlDecl()
Since
4.2.2
willValidateAttributesback to summary
public boolean willValidateAttributes()
willValidateContentback to summary
public boolean willValidateContent()
willValidateNamesback to summary
public boolean willValidateNames()
willValidateStructureback to summary
public boolean willValidateStructure()