public final class StaxUtils
extends java.lang.Object
Constructor and Description |
---|
StaxUtils() |
Modifier and Type | Method and Description |
---|---|
static void |
closeQuietly(javax.xml.stream.XMLEventReader xmlEventReader) |
static void |
closeQuietly(javax.xml.stream.XMLEventWriter xmlEventWriter) |
static void |
closeQuietly(javax.xml.stream.XMLStreamReader xmlStreamReader) |
static void |
closeQuietly(javax.xml.stream.XMLStreamWriter xmlStreamWriter) |
static java.lang.StringBuilder |
collectWhitespace(java.lang.StringBuilder builder,
javax.xml.stream.XMLEventReader reader)
Collect whitespace from the given reader, into the given builder.
|
static java.lang.String |
collectWhitespace(javax.xml.stream.XMLEventReader reader)
Collect whitespace from the given reader.
|
static XhtmlException |
convertToXhtmlException(com.ctc.wstx.exc.WstxLazyException ex)
Take a WstxLazyException as a parameter and return the appropriate XhtmlException for the Woodstox exception supplied.
|
static void |
flushEventWriter(javax.xml.stream.XMLEventWriter eventWriter)
Ensure all xml events that have been added to the event buffer of the writer are flushed.
|
static java.lang.String |
getAttributeValue(javax.xml.stream.events.StartElement startElement,
javax.xml.namespace.QName attributeQName) |
static java.lang.String |
getAttributeValue(javax.xml.stream.events.StartElement startElement,
javax.xml.namespace.QName attributeQName,
java.lang.String defaultValue)
Retrieves the value of the specified attribute name on the specified start element.
|
static java.lang.String |
getAttributeValue(javax.xml.stream.events.StartElement startElement,
java.lang.String attributeName) |
static java.lang.String |
getAttributeValue(javax.xml.stream.events.StartElement startElement,
java.lang.String attributeName,
java.lang.String defaultValue)
Retrieves the value of the specified attribute name on the specified start element.
|
static boolean |
hasAttributes(javax.xml.stream.events.StartElement startElement,
java.lang.String... attributeNames)
Returns true if start element has all the specified attributes.
|
static boolean |
hasClass(javax.xml.stream.events.StartElement startElement,
java.lang.String className) |
static java.lang.String |
readCharactersAndEntities(javax.xml.stream.XMLEventReader reader)
Read all characters and entities from the supplied reader until a non-character or non-entity event is read.
|
static void |
skipWhitespace(javax.xml.stream.XMLEventReader reader)
Skip whitespace from the given reader.
|
static java.util.List<java.lang.String> |
splitCData(java.lang.String data)
Take a String and split into multiple substrings where each substring is suitable to be written as CData.
|
static java.lang.CharSequence |
stripIllegalControlChars(java.lang.CharSequence unclean)
Removes control characters from a CharSequence so that it can be parsed by a Stax parser.
|
static java.lang.String |
toString(javax.xml.stream.XMLEventReader reader)
Deprecated.
|
static java.lang.String |
toXmlString(javax.xml.stream.XMLEventReader reader,
XmlOutputFactory xmlOutputFactory) |
static java.lang.String |
toXmlStringWithoutTag(javax.xml.stream.XMLEventReader reader,
XmlOutputFactory xmlOutputFactory,
java.util.Set<javax.xml.namespace.QName> ignoredElements)
Reads an XML stream and turns it into a string while removing any tags matched in ignoredElements
|
static void |
writeAttribute(javax.xml.stream.XMLStreamWriter writer,
javax.xml.namespace.QName attribute,
java.lang.String value)
Write an attribute and its value on the provided XMLStreamWriter
|
static void |
writeRawXML(javax.xml.stream.XMLStreamWriter writer,
java.io.Writer out,
Streamable streamable)
Write raw XML properly on the provided Writer, which is wrapped by a XMLStreamWriter
|
static void |
writeStartElement(javax.xml.stream.XMLStreamWriter writer,
javax.xml.namespace.QName element)
Write the element start on the provided XMLStreamWriter
|
public static void writeStartElement(javax.xml.stream.XMLStreamWriter writer, javax.xml.namespace.QName element) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
public static void writeAttribute(javax.xml.stream.XMLStreamWriter writer, javax.xml.namespace.QName attribute, java.lang.String value) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
public static void writeRawXML(javax.xml.stream.XMLStreamWriter writer, java.io.Writer out, Streamable streamable) throws java.io.IOException, javax.xml.stream.XMLStreamException
java.io.IOException
javax.xml.stream.XMLStreamException
public static void closeQuietly(javax.xml.stream.XMLEventReader xmlEventReader)
public static void closeQuietly(javax.xml.stream.XMLStreamReader xmlStreamReader)
public static void closeQuietly(javax.xml.stream.XMLEventWriter xmlEventWriter)
public static void closeQuietly(javax.xml.stream.XMLStreamWriter xmlStreamWriter)
public static java.lang.String getAttributeValue(javax.xml.stream.events.StartElement startElement, java.lang.String attributeName)
public static java.lang.String getAttributeValue(javax.xml.stream.events.StartElement startElement, javax.xml.namespace.QName attributeQName)
public static java.lang.String getAttributeValue(javax.xml.stream.events.StartElement startElement, java.lang.String attributeName, java.lang.String defaultValue)
startElement
- start elementattributeName
- attribute namepublic static java.lang.String getAttributeValue(javax.xml.stream.events.StartElement startElement, javax.xml.namespace.QName attributeQName, java.lang.String defaultValue)
startElement
- start elementattributeQName
- attribute QNamepublic static boolean hasAttributes(javax.xml.stream.events.StartElement startElement, java.lang.String... attributeNames)
startElement
- start elementattributeNames
- attribute namespublic static boolean hasClass(javax.xml.stream.events.StartElement startElement, java.lang.String className)
startElement
- className
- public static java.lang.String collectWhitespace(javax.xml.stream.XMLEventReader reader) throws javax.xml.stream.XMLStreamException
reader
- the readerjavax.xml.stream.XMLStreamException
- if there are problems reading from the supplied readerpublic static java.lang.StringBuilder collectWhitespace(java.lang.StringBuilder builder, javax.xml.stream.XMLEventReader reader) throws javax.xml.stream.XMLStreamException
builder
- the builderreader
- the readerjavax.xml.stream.XMLStreamException
- if there are problems reading from the supplied readerpublic static void skipWhitespace(javax.xml.stream.XMLEventReader reader) throws javax.xml.stream.XMLStreamException
reader
- the readerjavax.xml.stream.XMLStreamException
- if there are problems reading from the supplied readerpublic static java.lang.String readCharactersAndEntities(javax.xml.stream.XMLEventReader reader) throws javax.xml.stream.XMLStreamException
reader
- the reader to read from, with the current event being either a character or an entityjavax.xml.stream.XMLStreamException
- if there are problems reading from the supplied reader@Deprecated public static java.lang.String toString(javax.xml.stream.XMLEventReader reader)
toXmlString(javax.xml.stream.XMLEventReader, XmlOutputFactory)
public static java.lang.String toXmlString(javax.xml.stream.XMLEventReader reader, XmlOutputFactory xmlOutputFactory)
public static java.lang.String toXmlStringWithoutTag(javax.xml.stream.XMLEventReader reader, XmlOutputFactory xmlOutputFactory, java.util.Set<javax.xml.namespace.QName> ignoredElements)
reader
- The XML event readerxmlOutputFactory
- The XML output factoryignoredElements
- A set of tags that should be stripped from the outputpublic static void flushEventWriter(javax.xml.stream.XMLEventWriter eventWriter) throws javax.xml.stream.XMLStreamException
You want to be using this instead of XMLEventWriter.flush()
when:
eventWriter
- the event writerjavax.xml.stream.XMLStreamException
public static java.util.List<java.lang.String> splitCData(java.lang.String data)
Take a String and split into multiple substrings where each substring is suitable to be written as CData.
You would use this method when you want to write CDATA to an XML document and you need to be sure that the content you are writing doesn't contain a CDATA closing triad (]]>) which would cause a premature closing of the CDATA.
So as an example if you supply a String like <![CDATA[stuff]]> then the returned Strings would be
If the supplied String is already safe for writing to a CDATA section then a single item List will be returned containing the supplied String.
data
- the data to be made safe for writing to a CDATA section.public static XhtmlException convertToXhtmlException(com.ctc.wstx.exc.WstxLazyException ex)
ex
- the Woodstox exception to be converted to an XhtmlException.public static java.lang.CharSequence stripIllegalControlChars(java.lang.CharSequence unclean)
Legal characters are tab, carriage return, line feed, and the legal characters of Unicode and ISO/IEC 10646XML Charsets. This method only removes illegal control chars, and doesn't attempt to remove illegal Unicode characters.
unclean
- Copyright © 2003-2014 Atlassian. All Rights Reserved.