XMLEventConsumer
public interface XMLEventWriter extends XMLEventConsumer
Modifier and Type | Method | Description |
---|---|---|
void |
add |
Add an event to the output stream Adding a START_ELEMENT will open a new namespace scope that will be closed when the corresponding END_ELEMENT is written. |
void |
add |
Adds an entire stream to an output stream, calls next() on the inputStream argument until hasNext() returns false This should be treated as a convenience method that will perform the following loop over all the events in an event reader and call add on each event. |
void |
close() |
Frees any resources associated with this stream |
void |
flush() |
Writes any cached events to the underlying output mechanism |
NamespaceContext |
getNamespaceContext() |
Returns the current namespace context. |
String |
getPrefix |
Gets the prefix the uri is bound to |
void |
setDefaultNamespace |
Binds a URI to the default namespace This URI is bound in the scope of the current START_ELEMENT / END_ELEMENT pair. |
void |
setNamespaceContext |
Sets the current namespace context for prefix and uri bindings. |
void |
setPrefix |
Sets the prefix the uri is bound to. |
void flush() throws XMLStreamException
XMLStreamException
- if an error occursvoid close() throws XMLStreamException
XMLStreamException
- if an error occursvoid add(XMLEvent event) throws XMLStreamException
Event Type | Required Fields | Optional Fields | Required Behavior |
---|---|---|---|
START_ELEMENT | QName name | namespaces , attributes | A START_ELEMENT will be written by writing the name, namespaces, and attributes of the event in XML 1.0 valid syntax for START_ELEMENTs. The name is written by looking up the prefix for the namespace uri. The writer can be configured to respect prefixes of QNames. If the writer is respecting prefixes it must use the prefix set on the QName. The default behavior is to lookup the value for the prefix on the EventWriter's internal namespace context. Each attribute (if any) is written using the behavior specified in the attribute section of this table. Each namespace (if any) is written using the behavior specified in the namespace section of this table. |
END_ELEMENT | Qname name | None | A well formed END_ELEMENT tag is written. The name is written by looking up the prefix for the namespace uri. The writer can be configured to respect prefixes of QNames. If the writer is respecting prefixes it must use the prefix set on the QName. The default behavior is to lookup the value for the prefix on the EventWriter's internal namespace context. If the END_ELEMENT name does not match the START_ELEMENT name an XMLStreamException is thrown. |
ATTRIBUTE | QName name , String value | QName type | An attribute is written using the same algorithm to find the lexical form as used in START_ELEMENT. The default is to use double quotes to wrap attribute values and to escape any double quotes found in the value. The type value is ignored. |
NAMESPACE | String prefix, String namespaceURI, boolean isDefaultNamespaceDeclaration | None | A namespace declaration is written. If the namespace is a default namespace declaration (isDefault is true) then xmlns="$namespaceURI" is written and the prefix is optional. If isDefault is false, the prefix must be declared and the writer must prepend xmlns to the prefix and write out a standard prefix declaration. |
PROCESSING_INSTRUCTION | None | String target, String data | The data does not need to be present and may be null. Target is required and many not be null. The writer will write data section directly after the target, enclosed in appropriate XML 1.0 syntax |
COMMENT | None | String comment | If the comment is present (not null) it is written, otherwise an an empty comment is written |
START_DOCUMENT | None | String encoding , boolean standalone, String version | A START_DOCUMENT event is not required to be written to the stream. If present the attributes are written inside the appropriate XML declaration syntax |
END_DOCUMENT | None | None | Nothing is written to the output |
DTD | String DocumentTypeDefinition | None | The DocumentTypeDefinition is written to the output |
add
in interface XMLEventConsumer
event
- the event to be addedXMLStreamException
- if an error occursvoid add(XMLEventReader reader) throws XMLStreamException
reader
- the event stream to add to the outputXMLStreamException
- if an error occursString getPrefix(String uri) throws XMLStreamException
uri
- the uri to look upXMLStreamException
- if an error occursvoid setPrefix(String prefix, String uri) throws XMLStreamException
prefix
- the prefix to bind to the uriuri
- the uri to bind to the prefixXMLStreamException
- if an error occursvoid setDefaultNamespace(String uri) throws XMLStreamException
uri
- the uri to bind to the default namespaceXMLStreamException
- if an error occursvoid setNamespaceContext(NamespaceContext context) throws XMLStreamException
context
- the namespace context to use for this writerXMLStreamException
- if an error occursNamespaceContext getNamespaceContext()
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.xml/javax/xml/stream/XMLEventWriter.html