Interface TypedXmlWriter
-
- All Known Subinterfaces:
Annotated
,Annotation
,Any
,Appinfo
,AttrDecls
,AttributeType
,Bindings
,ComplexContent
,ComplexExtension
,ComplexRestriction
,ComplexType
,ComplexTypeHost
,ComplexTypeModel
,ContentModelContainer
,Documentation
,Element
,ExplicitGroup
,ExtensionType
,FixedOrDefault
,Import
,Klass
,List
,LocalAttribute
,LocalElement
,NestedParticle
,NoFixedFacet
,Occurs
,Package
,Particle
,Redefinable
,Schema
,SchemaBindings
,SchemaTop
,SimpleContent
,SimpleDerivation
,SimpleExtension
,SimpleRestriction
,SimpleRestrictionModel
,SimpleType
,SimpleTypeHost
,TopLevelAttribute
,TopLevelElement
,TypeDefParticle
,TypeHost
,Union
,Wildcard
public interface TypedXmlWriter
Defines common operations for all typed XML writers. Root of all typed XML writer interfaces.This interface defines a series of methods to allow client applications to write arbitrary well-formed documents.
- Author:
- Kohsuke Kawaguchi
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
_attribute(java.lang.String localName, java.lang.Object value)
Adds an attribute of the given name and the value.void
_attribute(java.lang.String nsUri, java.lang.String localName, java.lang.Object value)
Adds an attribute of the given name and the value.void
_attribute(javax.xml.namespace.QName attributeName, java.lang.Object value)
Adds an attribute of the given name and the value.<T extends TypedXmlWriter>
T_cast(java.lang.Class<T> targetInterface)
Returns a different interface for this typed XML Writer.void
_cdata(java.lang.Object value)
Appends CDATA section.void
_comment(java.lang.Object value)
Appends a comment.<T extends TypedXmlWriter>
T_element(java.lang.Class<T> contentModel)
Appends a new child element.<T extends TypedXmlWriter>
T_element(java.lang.String localName, java.lang.Class<T> contentModel)
Appends a new child element.<T extends TypedXmlWriter>
T_element(java.lang.String nsUri, java.lang.String localName, java.lang.Class<T> contentModel)
Appends a new child element.<T extends TypedXmlWriter>
T_element(javax.xml.namespace.QName tagName, java.lang.Class<T> contentModel)
Appends a new child element.void
_namespace(java.lang.String uri)
Declares a new namespace URI on this element.void
_namespace(java.lang.String uri, boolean requirePrefix)
Declares a new namespace URI on this element.void
_namespace(java.lang.String uri, java.lang.String prefix)
Declares a new namespace URI on this element to a specific prefix.void
_pcdata(java.lang.Object value)
Appends text data.void
block()
Blocks the writing of the start tag so that new attributes can be added even after child elements are appended.void
commit()
Commits this element (and all its descendants) to the output.void
commit(boolean includingAllPredecessors)
Commits this element (and all its descendants) to the output.Document
getDocument()
Gets theDocument
object that this writer is writing to.
-
-
-
Method Detail
-
commit
void commit()
Commits this element (and all its descendants) to the output.Short for
_commit(true)
.
-
commit
void commit(boolean includingAllPredecessors)
Commits this element (and all its descendants) to the output.Once a writer is committed, nothing can be added to it further. Committing allows TXW to output a part of the document even if the rest has not yet been written.
- Parameters:
includingAllPredecessors
- if false, this operation will _commit this writer and all its descendants writers. If true, in addition to those writers, this operation will close all the writers before this writer in the document order.
-
block
void block()
Blocks the writing of the start tag so that new attributes can be added even after child elements are appended.This blocks the output at the token before the start tag until the
commit()
method is called to _commit this element.For more information, see the TXW documentation.
-
getDocument
Document getDocument()
Gets theDocument
object that this writer is writing to.- Returns:
- always non-null.
-
_attribute
void _attribute(java.lang.String localName, java.lang.Object value)
Adds an attribute of the given name and the value.Short for
_attribute("",localName,value);
- See Also:
_attribute(String, String, Object)
-
_attribute
void _attribute(java.lang.String nsUri, java.lang.String localName, java.lang.Object value)
Adds an attribute of the given name and the value.Short for
_attribute(new QName(nsUri,localName),value);
- See Also:
_attribute(QName, Object)
-
_attribute
void _attribute(javax.xml.namespace.QName attributeName, java.lang.Object value)
Adds an attribute of the given name and the value.- Parameters:
attributeName
- must not be null.value
- value of the attribute. must not be null. See the documentation for the conversion rules.
-
_namespace
void _namespace(java.lang.String uri)
Declares a new namespace URI on this element.The runtime system will assign an unique prefix for the URI.
- Parameters:
uri
- can be empty, but must not be null.
-
_namespace
void _namespace(java.lang.String uri, java.lang.String prefix)
Declares a new namespace URI on this element to a specific prefix.- Parameters:
uri
- can be empty, but must not be null.prefix
- If non-empty, this prefix is bound to the URI on this element. If empty, then the runtime will still try to use the URI as the default namespace, but it may fail to do so because of the constraints in the XML.- Throws:
java.lang.IllegalArgumentException
- if the same prefix is already declared on this element.
-
_namespace
void _namespace(java.lang.String uri, boolean requirePrefix)
Declares a new namespace URI on this element.The runtime system will assign an unique prefix for the URI.
- Parameters:
uri
- can be empty, but must not be null.requirePrefix
- if false, this method behaves just like_namespace(String)
. if true, this guarantees that the URI is bound to a non empty prefix.
-
_pcdata
void _pcdata(java.lang.Object value)
Appends text data.- Parameters:
value
- must not be null. See the documentation for the conversion rules.
-
_cdata
void _cdata(java.lang.Object value)
Appends CDATA section.- Parameters:
value
- must not be null. See the documentation for the conversion rules.
-
_comment
void _comment(java.lang.Object value) throws java.lang.UnsupportedOperationException
Appends a comment.- Parameters:
value
- must not be null. See the documentation for the conversion rules.- Throws:
java.lang.UnsupportedOperationException
- if the underlyingXmlSerializer
does not support writing comments, this exception can be thrown.
-
_element
<T extends TypedXmlWriter> T _element(java.lang.String localName, java.lang.Class<T> contentModel)
Appends a new child element.Short for
_element(URI of this element,localName,contentModel);
The namespace URI will be inherited from the parent element.
- See Also:
_element(String, String, Class)
-
_element
<T extends TypedXmlWriter> T _element(java.lang.String nsUri, java.lang.String localName, java.lang.Class<T> contentModel)
Appends a new child element.The newly created child element is appended at the end of the children.
- Parameters:
nsUri
- The namespace URI of the newly created element.localName
- The local name of the newly created element.contentModel
- The typed XML writer interface used to write the children of the new child element.- Returns:
- always return non-null
TypedXmlWriter
that can be used to write the contents of the newly created child element.
-
_element
<T extends TypedXmlWriter> T _element(javax.xml.namespace.QName tagName, java.lang.Class<T> contentModel)
Appends a new child element.Short for
_element(tagName.getNamespaceURI(),tagName.getLocalPart(),contentModel);
- See Also:
_element(String, String, Class)
-
_element
<T extends TypedXmlWriter> T _element(java.lang.Class<T> contentModel)
Appends a new child element.This version of the _element method requires the T class to be annotated with
XmlElement
annotation. The element name will be taken from there.- See Also:
_element(String, String, Class)
-
_cast
<T extends TypedXmlWriter> T _cast(java.lang.Class<T> targetInterface)
Returns a different interface for this typed XML Writer.Semantically, this operation is a 'cast' --- it returns the same underlying writer in a different interface. The returned new writer and the current writer will write to the same element.
But this is different from Java's ordinary cast because the returned object is not always the same as the current object.
- Returns:
- always return non-null.
-
-