Package org.jxmpp.xml.splitter
Class XmlSplitter
- java.lang.Object
-
- java.io.Writer
-
- org.jxmpp.xml.splitter.XmlSplitter
-
- All Implemented Interfaces:
Closeable,Flushable,Appendable,AutoCloseable
- Direct Known Subclasses:
XmppXmlSplitter
public class XmlSplitter extends Writer
A XML splitter capable of splitting XML into top-level elements.Note that this class does not yet support the feature set of XML. Only the required features for XMPP are supported. XML comments and processing instructions are not supported.
-
-
Field Summary
Fields Modifier and Type Field Description protected CompleteElementCallbackcompleteElementCallback
-
Constructor Summary
Constructors Constructor Description XmlSplitter(int bufferSize, CompleteElementCallback completeElementCallback)Construct a new XML splitter.XmlSplitter(int bufferSize, CompleteElementCallback completeElementCallback, DeclarationCallback declarationCallback, ProcessingInstructionCallback processingInstructionCallback)Construct a new XML splitter.XmlSplitter(int bufferSize, CompleteElementCallback completeElementCallback, DeclarationCallback declarationCallback, ProcessingInstructionCallback processingInstructionCallback, XmlPrinter xmlPrinter)Construct a new XML splitter.XmlSplitter(int bufferSize, CompleteElementCallback completeElementCallback, XmlPrinter xmlPrinter)Construct a new XML splitter.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()voidflush()intgetCurrentSplittedPartSize()Get the size in bytes of the splitted part currently being processed.protected voidnewSplittedPart()protected voidonEndTag(String qName)protected voidonNextChar()protected voidonStartTag(String prefix, String localpart, Map<String,String> attributes)voidwrite(char[] cbuf, int off, int len)
-
-
-
Field Detail
-
completeElementCallback
protected final CompleteElementCallback completeElementCallback
-
-
Constructor Detail
-
XmlSplitter
public XmlSplitter(int bufferSize, CompleteElementCallback completeElementCallback, DeclarationCallback declarationCallback, ProcessingInstructionCallback processingInstructionCallback)
Construct a new XML splitter.- Parameters:
bufferSize- the initial size of the buffer.completeElementCallback- the callback invoked once a complete element has been processed.declarationCallback- a optional callback for the XML declaration.processingInstructionCallback- a optional callback for Processing Instructions.
-
XmlSplitter
public XmlSplitter(int bufferSize, CompleteElementCallback completeElementCallback, XmlPrinter xmlPrinter)
Construct a new XML splitter.- Parameters:
bufferSize- the initial size of the buffer.completeElementCallback- the callback invoked once a complete element has been processed.xmlPrinter- an optionalXmlPrinter.
-
XmlSplitter
public XmlSplitter(int bufferSize, CompleteElementCallback completeElementCallback)
Construct a new XML splitter.- Parameters:
bufferSize- the initial size of the buffer.completeElementCallback- the callback invoked once a complete element has been processed.
-
XmlSplitter
public XmlSplitter(int bufferSize, CompleteElementCallback completeElementCallback, DeclarationCallback declarationCallback, ProcessingInstructionCallback processingInstructionCallback, XmlPrinter xmlPrinter)
Construct a new XML splitter.- Parameters:
bufferSize- the initial size of the buffer.completeElementCallback- the callback invoked once a complete element has been processed.declarationCallback- a optional callback for the XML declaration.processingInstructionCallback- a optional callback for Processing Instructions.xmlPrinter- an optionalXmlPrinter.
-
-
Method Detail
-
write
public void write(char[] cbuf, int off, int len) throws IOException
- Specified by:
writein classWriter- Throws:
IOException
-
flush
public void flush()
-
close
public void close()
-
getCurrentSplittedPartSize
public final int getCurrentSplittedPartSize()
Get the size in bytes of the splitted part currently being processed.- Returns:
- the size of the current splitted part in chars.
-
onNextChar
protected void onNextChar() throws IOException
- Throws:
IOException
-
onStartTag
protected void onStartTag(String prefix, String localpart, Map<String,String> attributes)
-
newSplittedPart
protected final void newSplittedPart()
-
-