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 CompleteElementCallback
completeElementCallback
-
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 void
close()
void
flush()
int
getCurrentSplittedPartSize()
Get the size in bytes of the splitted part currently being processed.protected void
newSplittedPart()
protected void
onEndTag(String qName)
protected void
onNextChar()
protected void
onStartTag(String prefix, String localpart, Map<String,String> attributes)
void
write(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:
write
in 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()
-
-