Package org.apache.ws.commons.serialize
Class XMLWriterImpl
java.lang.Object
org.apache.ws.commons.serialize.XMLWriterImpl
- All Implemented Interfaces:
XMLWriter,ContentHandler
- Direct Known Subclasses:
CharSetXMLWriter,OrderedAttributeXMLWriter,PassThroughXMLWriter
Default implementation of
XMLWriter. Works with Java 1.2 and
later.-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleancanEncode(char c) Returns whether the XMLWriter can encode the charactercwithout an escape sequence like &#ddd;.voidcharacters(char[] ch, int start, int length) Inserts a string of characters into the document.voidThis method finishs the handlers action.voidendElement(String namespaceURI, String localName, String qName) Terminates an element.voidendPrefixMapping(String prefix) Terminates use of a namespace prefix.Returns the locatorReturns the writers encoding.Returns the string being used to indent an XML element by one level.Returns the line terminator.Returns the JaxbXMLSerializers Writer.voidignorableWhitespace(char[] ch, int start, int length) Calls the character method with the same arguments.private voidindentMe()booleanReturns, whether an XML declaration is being generated.booleanReturns, whether the methodContentHandler.endDocument()should do a flush on the target stream.booleanReturns, whether theXMLWriteris indenting (pretty printing).voidprocessingInstruction(String target, String data) Inserts a processing instruction.voidsetDeclarating(boolean pDeclarating) Sets, whether an XML declaration is being generated.voidsetDocumentLocator(Locator pLocator) Sets the locator.voidsetEncoding(String pEncoding) Sets the writers encoding.voidsetFlushing(boolean pFlushing) Sets, whether the methodContentHandler.endDocument()should do a flush on the target stream.voidsetIndenting(boolean pIndenting) Returns, whether theXMLWriteris indenting (pretty printing).voidsetIndentString(String pIndentString) Sets the string being used to indent an XML element by one level.voidsetLineFeed(String pLineFeed) Sets the line terminator.voidSets the JaxbXMLSerializers Writer.voidskippedEntity(String ent) Not actually implemented, because I don't know how to skip entities.voidStarts a document.voidstartElement(String namespaceURI, String localName, String qName, Attributes attr) Starts a new element.voidstartPrefixMapping(String prefix, String namespaceURI) Starts use of a namespace prefix.private voidprivate voidwriteCData(String v) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.xml.sax.ContentHandler
declaration
-
Field Details
-
STATE_OUTSIDE
private static final int STATE_OUTSIDE- See Also:
-
STATE_IN_START_ELEMENT
private static final int STATE_IN_START_ELEMENT- See Also:
-
STATE_IN_ELEMENT
private static final int STATE_IN_ELEMENT- See Also:
-
encoding
-
indentString
-
lineFeed
-
w
-
l
-
delayedPrefixes
-
curIndent
int curIndent -
state
private int state -
declarating
private boolean declarating -
indenting
private boolean indenting -
flushing
private boolean flushing
-
-
Constructor Details
-
XMLWriterImpl
public XMLWriterImpl()
-
-
Method Details
-
setEncoding
Description copied from interface:XMLWriterSets the writers encoding.- Specified by:
setEncodingin interfaceXMLWriter- Parameters:
pEncoding- Writers encoding, by default null, in which case UTF-8 is being used.
-
getEncoding
Description copied from interface:XMLWriterReturns the writers encoding.- Specified by:
getEncodingin interfaceXMLWriter- Returns:
- Writers encoding, by default null, in which case UTF-8 is being used.
-
setDeclarating
public void setDeclarating(boolean pDeclarating) Description copied from interface:XMLWriterSets, whether an XML declaration is being generated.- Specified by:
setDeclaratingin interfaceXMLWriter- Parameters:
pDeclarating- Whether an XML declaration is generated. Defaults to false.
-
isDeclarating
public boolean isDeclarating()Description copied from interface:XMLWriterReturns, whether an XML declaration is being generated.- Specified by:
isDeclaratingin interfaceXMLWriter- Returns:
- Whether an XML declaration is generated. Defaults to false.
-
setIndenting
public void setIndenting(boolean pIndenting) Description copied from interface:XMLWriterReturns, whether theXMLWriteris indenting (pretty printing). If you want indenting, you should consider to invoke the methodsXMLWriter.setIndentString(java.lang.String)andXMLWriter.setLineFeed(java.lang.String)as well.- Specified by:
setIndentingin interfaceXMLWriter- Parameters:
pIndenting- Whether indentation is enabled. Defaults to false.
-
isIndenting
public boolean isIndenting()Description copied from interface:XMLWriterReturns, whether theXMLWriteris indenting (pretty printing). If you want indenting, you should consider to invoke the methodsXMLWriter.setIndentString(java.lang.String)andXMLWriter.setLineFeed(java.lang.String)as well.- Specified by:
isIndentingin interfaceXMLWriter- Returns:
- Whether indentation is enabled. Defaults to false.
-
setIndentString
Description copied from interface:XMLWriterSets the string being used to indent an XML element by one level. Ignored, if indentation is disabled.- Specified by:
setIndentStringin interfaceXMLWriter- Parameters:
pIndentString- The indentation string, by default " " (two blanks).
-
getIndentString
Description copied from interface:XMLWriterReturns the string being used to indent an XML element by one level. Ignored, if indentation is disabled.- Specified by:
getIndentStringin interfaceXMLWriter- Returns:
- The indentation string, by default " " (two blanks).
-
setLineFeed
Description copied from interface:XMLWriterSets the line terminator. Ignored, if indentation is disabled.- Specified by:
setLineFeedin interfaceXMLWriter- Parameters:
pLineFeed- The line terminator, by default "\n" (Line Feed). You might prefer "\r\n" (Carriage Return, Line Feed), which is the default on Windows and related operating systems.
-
getLineFeed
Description copied from interface:XMLWriterReturns the line terminator. Ignored, if indentation is disabled.- Specified by:
getLineFeedin interfaceXMLWriter- Returns:
- The line terminator, by default "\n" (Line Feed). You might prefer "\r\n" (Carriage Return, Line Feed), which is the default on Windows and related operating systems.
-
setFlushing
public void setFlushing(boolean pFlushing) Description copied from interface:XMLWriterSets, whether the methodContentHandler.endDocument()should do a flush on the target stream.- Specified by:
setFlushingin interfaceXMLWriter- Parameters:
pFlushing- True, if a flush should be done. Defaults to false.
-
isFlushing
public boolean isFlushing()Description copied from interface:XMLWriterReturns, whether the methodContentHandler.endDocument()should do a flush on the target stream.- Specified by:
isFlushingin interfaceXMLWriter- Returns:
- True, if a flush should be done. Defaults to false.
-
setWriter
Sets the JaxbXMLSerializers Writer.
-
getWriter
Returns the JaxbXMLSerializers Writer.
-
setDocumentLocator
Sets the locator.- Specified by:
setDocumentLocatorin interfaceContentHandler- Parameters:
pLocator- A locator for use in case of errors- See Also:
-
getDocumentLocator
Returns the locator- Returns:
- A locator previously set with setDocumentLocator or null.
- See Also:
-
startPrefixMapping
Starts use of a namespace prefix.
- Specified by:
startPrefixMappingin interfaceContentHandler- Parameters:
prefix- The prefixnamespaceURI- The namespace URI- Throws:
SAXException- Not actually thrown, just for compliance to the interface specification.
-
endPrefixMapping
Terminates use of a namespace prefix.
- Specified by:
endPrefixMappingin interfaceContentHandler- Parameters:
prefix- The prefix being abandoned.- Throws:
SAXException- Not actually thrown, just for compliance to the interface specification.
-
startDocument
Starts a document.
- Specified by:
startDocumentin interfaceContentHandler- Throws:
SAXException- Not actually thrown, just for compliance to the interface specification.
-
endDocument
This method finishs the handlers action. After calling endDocument you may start a new action by calling startDocument again.
- Specified by:
endDocumentin interfaceContentHandler- Throws:
SAXException- Not actually thrown, just for compliance to the interface specification.
-
ignorableWhitespace
Calls the character method with the same arguments.- Specified by:
ignorableWhitespacein interfaceContentHandler- Parameters:
ch- A string of whitespace characters being inserted into the document.start- The index of the first character.length- The number of characters.- Throws:
SAXException- Thrown in case of an IOException.
-
stopTerminator
- Throws:
IOException
-
characters
Inserts a string of characters into the document.- Specified by:
charactersin interfaceContentHandler- Parameters:
ch- The characters being inserted. A substring, to be precise.start- Index of the first characterlength- Number of characters being inserted- Throws:
SAXException- Thrown in case of an IOException
-
canEncode
public boolean canEncode(char c) Description copied from interface:XMLWriterReturns whether the XMLWriter can encode the character
cwithout an escape sequence like &#ddd;. -
endElement
Terminates an element.
- Specified by:
endElementin interfaceContentHandler- Parameters:
namespaceURI- The namespace URI, if any, or nulllocalName- The local name, without prefix, or nullqName- The qualified name, including a prefix, or null- Throws:
SAXException- Thrown in case of an IOException.
-
indentMe
- Throws:
IOException
-
writeCData
- Throws:
IOException
-
startElement
public void startElement(String namespaceURI, String localName, String qName, Attributes attr) throws SAXException Starts a new element.- Specified by:
startElementin interfaceContentHandler- Parameters:
namespaceURI- The namespace URI, if any, or nulllocalName- The local name, without prefix, or nullqName- The qualified name, including a prefix, or nullattr- The element attributes- Throws:
SAXException- Thrown in case of an IOException.
-
skippedEntity
Not actually implemented, because I don't know how to skip entities.- Specified by:
skippedEntityin interfaceContentHandler- Parameters:
ent- The entity being skipped.- Throws:
SAXException- Not actually thrown, just for compliance to the interface specification.
-
processingInstruction
Inserts a processing instruction.- Specified by:
processingInstructionin interfaceContentHandler- Parameters:
target- The PI targetdata- The PI data- Throws:
SAXException- Thrown in case of an IOException
-