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
This interface defines a series of methods to allow client applications to write arbitrary well-formed documents.
- Author:
- Kohsuke Kawaguchi
-
Method Summary
Modifier and TypeMethodDescriptionvoid
_attribute
(String localName, Object value) Adds an attribute of the given name and the value.void
_attribute
(String nsUri, String localName, Object value) Adds an attribute of the given name and the value.void
_attribute
(QName attributeName, Object value) Adds an attribute of the given name and the value.<T extends TypedXmlWriter>
TReturns a different interface for this typed XML Writer.void
Appends CDATA section.void
Appends a comment.<T extends TypedXmlWriter>
TAppends a new child element.<T extends TypedXmlWriter>
TAppends a new child element.<T extends TypedXmlWriter>
TAppends a new child element.<T extends TypedXmlWriter>
TAppends a new child element.void
_namespace
(String uri) Declares a new namespace URI on this element.void
_namespace
(String uri, boolean requirePrefix) Declares a new namespace URI on this element.void
_namespace
(String uri, String prefix) Declares a new namespace URI on this element to a specific prefix.void
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.Gets theDocument
object that this writer is writing to.
-
Method Details
-
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
Adds an attribute of the given name and the value.Short for
_attribute("",localName,value);
- See Also:
-
_attribute
Adds an attribute of the given name and the value.Short for
_attribute(new QName(nsUri,localName),value);
- See Also:
-
_attribute
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
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
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:
IllegalArgumentException
- if the same prefix is already declared on this element.
-
_namespace
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
Appends text data.- Parameters:
value
- must not be null. See the documentation for the conversion rules.
-
_cdata
Appends CDATA section.- Parameters:
value
- must not be null. See the documentation for the conversion rules.
-
_comment
Appends a comment.- Parameters:
value
- must not be null. See the documentation for the conversion rules.- Throws:
UnsupportedOperationException
- if the underlyingXmlSerializer
does not support writing comments, this exception can be thrown.
-
_element
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
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
Appends a new child element.Short for
_element(tagName.getNamespaceURI(),tagName.getLocalPart(),contentModel);
- See Also:
-
_element
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:
-
_cast
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.
-