Package com.bea.xml.stream
Class XMLWriterBase
- java.lang.Object
-
- com.bea.xml.stream.ReaderToWriter
-
- com.bea.xml.stream.XMLWriterBase
-
- All Implemented Interfaces:
javax.xml.stream.XMLStreamWriter
- Direct Known Subclasses:
XMLStreamRecorder
public class XMLWriterBase extends ReaderToWriter implements javax.xml.stream.XMLStreamWriter
The base output class.
-
-
Field Summary
Fields Modifier and Type Field Description protected NamespaceContextImplcontextprotected static java.lang.StringDEFAULTNS
-
Constructor Summary
Constructors Constructor Description XMLWriterBase()XMLWriterBase(java.io.Writer writer)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Close this writer and free any resources associated with the writer.protected voidcloseEndTag()protected voidcloseStartElement()protected voidcloseStartTag()voidflush()Write any cached data to the underlying output mechanism.javax.xml.namespace.NamespaceContextgetNamespaceContext()Returns the current namespace context.java.lang.StringgetPrefix(java.lang.String uri)Gets the prefix the uri is bound tojava.lang.ObjectgetProperty(java.lang.String name)Get the value of a feature/property from the underlying implementationprotected java.lang.StringgetURIInternal(java.lang.String prefix)protected booleanisOpen()static voidmain(java.lang.String[] args)protected voidopenEndTag()protected voidopenStartTag()voidsetConfigurationContext(ConfigurationContextBase c)voidsetDefaultNamespace(java.lang.String uri)Binds a URI to the default namespace This URI is bound in the scope of the current START_ELEMENT / END_ELEMENT pair.voidsetNamespaceContext(javax.xml.namespace.NamespaceContext context)Sets the current namespace context for prefix and uri bindings.voidsetPrefix(java.lang.String prefix, java.lang.String uri)Sets the prefix the uri is bound to.voidsetWriter(java.io.Writer writer)protected voidwrite(char c)protected voidwrite(char[] c)protected voidwrite(char[] c, int start, int len)protected voidwrite(java.lang.String s)voidwriteAttribute(java.lang.String localName, java.lang.String value)Writes an attribute to the output stream without a prefix.voidwriteAttribute(java.lang.String namespaceURI, java.lang.String localName, java.lang.String value)Writes an attribute to the output streamvoidwriteAttribute(java.lang.String prefix, java.lang.String namespaceURI, java.lang.String localName, java.lang.String value)Writes an attribute to the output streamvoidwriteCData(java.lang.String data)Writes a CData sectionvoidwriteCharacters(char[] text, int start, int len)Write text to the outputvoidwriteCharacters(java.lang.String text)Write text to the outputprotected voidwriteCharactersInternal(char[] characters, int start, int length, boolean isAttributeValue)voidwriteComment(java.lang.String data)Writes an xml comment with the data enclosedvoidwriteDefaultNamespace(java.lang.String namespaceURI)Writes the default namespace to the streamvoidwriteDTD(java.lang.String dtd)Write a DTD section.voidwriteEmptyElement(java.lang.String localName)Writes an empty element tag to the outputvoidwriteEmptyElement(java.lang.String namespaceURI, java.lang.String localName)Writes an empty element tag to the outputvoidwriteEmptyElement(java.lang.String prefix, java.lang.String localName, java.lang.String namespaceURI)Writes an empty element tag to the outputvoidwriteEndDocument()Closes any start tags and writes corresponding end tags.voidwriteEndElement()Writes an end tag to the output relying on the internal state of the writer to determine the prefix and local name of the event.voidwriteEntityRef(java.lang.String name)Writes an entity referenceprotected java.lang.StringwriteName(java.lang.String prefix, java.lang.String namespaceURI, java.lang.String localName)voidwriteNamespace(java.lang.String prefix, java.lang.String namespaceURI)Writes a namespace to the output stream If the prefix argument to this method is the empty string, "xmlns", or null this method will delegate to writeDefaultNamespacevoidwriteProcessingInstruction(java.lang.String target)Writes a processing instructionvoidwriteProcessingInstruction(java.lang.String target, java.lang.String text)Writes a processing instructionvoidwriteRaw(java.lang.String data)voidwriteStartDocument()Write the XML Declaration.voidwriteStartDocument(java.lang.String version)Write the XML Declaration.voidwriteStartDocument(java.lang.String encoding, java.lang.String version)Write the XML Declaration.voidwriteStartElement(java.lang.String localName)Writes a start tag to the output.voidwriteStartElement(java.lang.String namespaceURI, java.lang.String localName)Writes a start tag to the outputvoidwriteStartElement(java.lang.String prefix, java.lang.String localName, java.lang.String namespaceURI)Writes a start tag to the outputprotected voidwriteStartElementInternal(java.lang.String namespaceURI, java.lang.String localName)-
Methods inherited from class com.bea.xml.stream.ReaderToWriter
setStreamWriter, write, writeAll
-
-
-
-
Field Detail
-
DEFAULTNS
protected static final java.lang.String DEFAULTNS
- See Also:
- Constant Field Values
-
context
protected NamespaceContextImpl context
-
-
Method Detail
-
setWriter
public void setWriter(java.io.Writer writer)
-
setConfigurationContext
public void setConfigurationContext(ConfigurationContextBase c)
-
write
protected void write(java.lang.String s) throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
write
protected void write(char c) throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
write
protected void write(char[] c) throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
write
protected void write(char[] c, int start, int len) throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
writeCharactersInternal
protected void writeCharactersInternal(char[] characters, int start, int length, boolean isAttributeValue) throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
closeStartElement
protected void closeStartElement() throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
isOpen
protected boolean isOpen()
-
closeStartTag
protected void closeStartTag() throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
writeName
protected java.lang.String writeName(java.lang.String prefix, java.lang.String namespaceURI, java.lang.String localName) throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
getURIInternal
protected java.lang.String getURIInternal(java.lang.String prefix)
-
openStartTag
protected void openStartTag() throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
writeStartElementInternal
protected void writeStartElementInternal(java.lang.String namespaceURI, java.lang.String localName) throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
writeStartElement
public void writeStartElement(java.lang.String namespaceURI, java.lang.String localName) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites a start tag to the output- Specified by:
writeStartElementin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
namespaceURI- the namespaceURI of the prefix to use, may not be nulllocalName- local name of the tag, may not be null- Throws:
javax.xml.stream.XMLStreamException- if the namespace URI has not been bound to a prefix and javax.xml.stream.isPrefixDefaulting has not been set to true
-
writeStartElement
public void writeStartElement(java.lang.String prefix, java.lang.String localName, java.lang.String namespaceURI) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites a start tag to the output- Specified by:
writeStartElementin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
prefix- the prefix of the tag, may not be nulllocalName- local name of the tag, may not be nullnamespaceURI- the uri to bind the prefix to, may not be null- Throws:
javax.xml.stream.XMLStreamException
-
writeStartElement
public void writeStartElement(java.lang.String localName) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites a start tag to the output. All writeStartElement methods open a new scope in the internal namespace context. Writing the corresponding EndElement causes the scope to be closed.- Specified by:
writeStartElementin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
localName- local name of the tag, may not be null- Throws:
javax.xml.stream.XMLStreamException
-
writeEmptyElement
public void writeEmptyElement(java.lang.String namespaceURI, java.lang.String localName) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites an empty element tag to the output- Specified by:
writeEmptyElementin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
namespaceURI- the uri to bind the tag to, may not be nulllocalName- local name of the tag, may not be null- Throws:
javax.xml.stream.XMLStreamException- if the namespace URI has not been bound to a prefix and javax.xml.stream.isPrefixDefaulting has not been set to true
-
writeEmptyElement
public void writeEmptyElement(java.lang.String prefix, java.lang.String localName, java.lang.String namespaceURI) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites an empty element tag to the output- Specified by:
writeEmptyElementin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
prefix- the prefix of the tag, may not be nulllocalName- local name of the tag, may not be nullnamespaceURI- the uri to bind the tag to, may not be null- Throws:
javax.xml.stream.XMLStreamException
-
writeEmptyElement
public void writeEmptyElement(java.lang.String localName) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites an empty element tag to the output- Specified by:
writeEmptyElementin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
localName- local name of the tag, may not be null- Throws:
javax.xml.stream.XMLStreamException
-
openEndTag
protected void openEndTag() throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
closeEndTag
protected void closeEndTag() throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
writeEndElement
public void writeEndElement() throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites an end tag to the output relying on the internal state of the writer to determine the prefix and local name of the event.- Specified by:
writeEndElementin interfacejavax.xml.stream.XMLStreamWriter- Throws:
javax.xml.stream.XMLStreamException
-
writeRaw
public void writeRaw(java.lang.String data) throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
close
public void close() throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterClose this writer and free any resources associated with the writer. This must not close the underlying output stream.- Specified by:
closein interfacejavax.xml.stream.XMLStreamWriter- Throws:
javax.xml.stream.XMLStreamException
-
flush
public void flush() throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrite any cached data to the underlying output mechanism.- Specified by:
flushin interfacejavax.xml.stream.XMLStreamWriter- Throws:
javax.xml.stream.XMLStreamException
-
writeEndDocument
public void writeEndDocument() throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterCloses any start tags and writes corresponding end tags.- Specified by:
writeEndDocumentin interfacejavax.xml.stream.XMLStreamWriter- Throws:
javax.xml.stream.XMLStreamException
-
writeAttribute
public void writeAttribute(java.lang.String localName, java.lang.String value) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites an attribute to the output stream without a prefix.- Specified by:
writeAttributein interfacejavax.xml.stream.XMLStreamWriter- Parameters:
localName- the local name of the attributevalue- the value of the attribute- Throws:
javax.xml.stream.XMLStreamException
-
writeAttribute
public void writeAttribute(java.lang.String namespaceURI, java.lang.String localName, java.lang.String value) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites an attribute to the output stream- Specified by:
writeAttributein interfacejavax.xml.stream.XMLStreamWriter- Parameters:
namespaceURI- the uri of the prefix for this attributelocalName- the local name of the attributevalue- the value of the attribute- Throws:
javax.xml.stream.XMLStreamException- if the namespace URI has not been bound to a prefix and javax.xml.stream.isPrefixDefaulting has not been set to true
-
writeAttribute
public void writeAttribute(java.lang.String prefix, java.lang.String namespaceURI, java.lang.String localName, java.lang.String value) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites an attribute to the output stream- Specified by:
writeAttributein interfacejavax.xml.stream.XMLStreamWriter- Parameters:
prefix- the prefix for this attributenamespaceURI- the uri of the prefix for this attributelocalName- the local name of the attributevalue- the value of the attribute- Throws:
javax.xml.stream.XMLStreamException- if the namespace URI has not been bound to a prefix and javax.xml.stream.isPrefixDefaulting has not been set to true
-
writeNamespace
public void writeNamespace(java.lang.String prefix, java.lang.String namespaceURI) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites a namespace to the output stream If the prefix argument to this method is the empty string, "xmlns", or null this method will delegate to writeDefaultNamespace- Specified by:
writeNamespacein interfacejavax.xml.stream.XMLStreamWriter- Parameters:
prefix- the prefix to bind this namespace tonamespaceURI- the uri to bind the prefix to- Throws:
javax.xml.stream.XMLStreamException
-
writeDefaultNamespace
public void writeDefaultNamespace(java.lang.String namespaceURI) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites the default namespace to the stream- Specified by:
writeDefaultNamespacein interfacejavax.xml.stream.XMLStreamWriter- Parameters:
namespaceURI- the uri to bind the default namespace to- Throws:
javax.xml.stream.XMLStreamException
-
writeComment
public void writeComment(java.lang.String data) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites an xml comment with the data enclosed- Specified by:
writeCommentin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
data- the data contained in the comment, may be null- Throws:
javax.xml.stream.XMLStreamException
-
writeProcessingInstruction
public void writeProcessingInstruction(java.lang.String target) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites a processing instruction- Specified by:
writeProcessingInstructionin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
target- the target of the processing instruction, may not be null- Throws:
javax.xml.stream.XMLStreamException
-
writeProcessingInstruction
public void writeProcessingInstruction(java.lang.String target, java.lang.String text) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites a processing instruction- Specified by:
writeProcessingInstructionin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
target- the target of the processing instruction, may not be nulltext- the data contained in the processing instruction, may not be null- Throws:
javax.xml.stream.XMLStreamException
-
writeDTD
public void writeDTD(java.lang.String dtd) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrite a DTD section. This string represents the entire doctypedecl production from the XML 1.0 specification.- Specified by:
writeDTDin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
dtd- the DTD to be written- Throws:
javax.xml.stream.XMLStreamException
-
writeCData
public void writeCData(java.lang.String data) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites a CData section- Specified by:
writeCDatain interfacejavax.xml.stream.XMLStreamWriter- Parameters:
data- the data contained in the CData Section, may not be null- Throws:
javax.xml.stream.XMLStreamException
-
writeEntityRef
public void writeEntityRef(java.lang.String name) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrites an entity reference- Specified by:
writeEntityRefin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
name- the name of the entity- Throws:
javax.xml.stream.XMLStreamException
-
writeStartDocument
public void writeStartDocument() throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrite the XML Declaration. Defaults the XML version to 1.0, and the encoding to utf-8- Specified by:
writeStartDocumentin interfacejavax.xml.stream.XMLStreamWriter- Throws:
javax.xml.stream.XMLStreamException
-
writeStartDocument
public void writeStartDocument(java.lang.String version) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrite the XML Declaration. Defaults the XML version to 1.0- Specified by:
writeStartDocumentin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
version- version of the xml document- Throws:
javax.xml.stream.XMLStreamException
-
writeStartDocument
public void writeStartDocument(java.lang.String encoding, java.lang.String version) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrite the XML Declaration. Note that the encoding parameter does not set the actual encoding of the underlying output. That must be set when the instance of the XMLStreamWriter is created using the XMLOutputFactory- Specified by:
writeStartDocumentin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
encoding- encoding of the xml declarationversion- version of the xml document- Throws:
javax.xml.stream.XMLStreamException
-
writeCharacters
public void writeCharacters(java.lang.String text) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrite text to the output- Specified by:
writeCharactersin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
text- the value to write- Throws:
javax.xml.stream.XMLStreamException
-
writeCharacters
public void writeCharacters(char[] text, int start, int len) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterWrite text to the output- Specified by:
writeCharactersin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
text- the value to writestart- the starting position in the arraylen- the number of characters to write- Throws:
javax.xml.stream.XMLStreamException
-
getPrefix
public java.lang.String getPrefix(java.lang.String uri) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterGets the prefix the uri is bound to- Specified by:
getPrefixin interfacejavax.xml.stream.XMLStreamWriter- Returns:
- the prefix or null
- Throws:
javax.xml.stream.XMLStreamException
-
setPrefix
public void setPrefix(java.lang.String prefix, java.lang.String uri) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterSets the prefix the uri is bound to. This prefix is bound in the scope of the current START_ELEMENT / END_ELEMENT pair. If this method is called before a START_ELEMENT has been written the prefix is bound in the root scope.- Specified by:
setPrefixin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
prefix- the prefix to bind to the uri, may not be nulluri- the uri to bind to the prefix, may be null- Throws:
javax.xml.stream.XMLStreamException
-
setDefaultNamespace
public void setDefaultNamespace(java.lang.String uri) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterBinds a URI to the default namespace This URI is bound in the scope of the current START_ELEMENT / END_ELEMENT pair. If this method is called before a START_ELEMENT has been written the uri is bound in the root scope.- Specified by:
setDefaultNamespacein interfacejavax.xml.stream.XMLStreamWriter- Parameters:
uri- the uri to bind to the default namespace, may be null- Throws:
javax.xml.stream.XMLStreamException
-
setNamespaceContext
public void setNamespaceContext(javax.xml.namespace.NamespaceContext context) throws javax.xml.stream.XMLStreamExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterSets the current namespace context for prefix and uri bindings. This context becomes the root namespace context for writing and will replace the current root namespace context. Subsequent calls to setPrefix and setDefaultNamespace will bind namespaces using the context passed to the method as the root context for resolving namespaces. This method may only be called once at the start of the document. It does not cause the namespaces to be declared. If a namespace URI to prefix mapping is found in the namespace context it is treated as declared and the prefix may be used by the StreamWriter.- Specified by:
setNamespaceContextin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
context- the namespace context to use for this writer, may not be null- Throws:
javax.xml.stream.XMLStreamException
-
getNamespaceContext
public javax.xml.namespace.NamespaceContext getNamespaceContext()
Description copied from interface:javax.xml.stream.XMLStreamWriterReturns the current namespace context.- Specified by:
getNamespaceContextin interfacejavax.xml.stream.XMLStreamWriter- Returns:
- the current NamespaceContext
-
getProperty
public java.lang.Object getProperty(java.lang.String name) throws java.lang.IllegalArgumentExceptionDescription copied from interface:javax.xml.stream.XMLStreamWriterGet the value of a feature/property from the underlying implementation- Specified by:
getPropertyin interfacejavax.xml.stream.XMLStreamWriter- Parameters:
name- The name of the property, may not be null- Returns:
- The value of the property
- Throws:
java.lang.IllegalArgumentException- if the property is not supported
-
main
public static void main(java.lang.String[] args) throws java.lang.Exception- Throws:
java.lang.Exception
-
-