com.sforce.ws.parser
Class MXSerializer
java.lang.Object
com.sforce.ws.parser.MXSerializer
public class MXSerializer
- extends java.lang.Object
Implementation of XmlSerializer interface from XmlPull V1 API.
This implementation is optimzied for performance and low memory footprint.
Implemented features:
- FEATURE_NAMES_INTERNED - when enabled all returned names
(namespaces, prefixes) will be interned and it is required that
all names passed as arguments MUST be interned
- FEATURE_SERIALIZER_ATTVALUE_USE_APOSTROPHE
Implemented properties:
- PROPERTY_SERIALIZER_INDENTATION
- PROPERTY_SERIALIZER_LINE_SEPARATOR
|
Method Summary |
MXSerializer |
attribute(java.lang.String namespace,
java.lang.String name,
java.lang.String value)
|
void |
cdsect(java.lang.String text)
|
protected void |
closeStartTag()
|
void |
comment(java.lang.String text)
|
void |
docdecl(java.lang.String text)
|
void |
endDocument()
|
MXSerializer |
endTag(java.lang.String namespace,
java.lang.String name)
|
protected void |
ensureElementsCapacity()
|
protected void |
ensureNamespacesCapacity()
|
void |
entityRef(java.lang.String text)
|
void |
flush()
|
int |
getDepth()
|
boolean |
getFeature(java.lang.String name)
|
java.lang.String |
getName()
|
java.lang.String |
getNamespace()
|
java.lang.String |
getPrefix(java.lang.String namespace,
boolean generatePrefix)
|
java.lang.Object |
getProperty(java.lang.String name)
|
java.io.Writer |
getWriter()
|
void |
ignorableWhitespace(java.lang.String text)
|
protected java.lang.String |
lookupOrDeclarePrefix(java.lang.String namespace)
|
protected static java.lang.String |
printable(char ch)
|
protected static java.lang.String |
printable(java.lang.String s)
simple utility method -- good for debugging |
void |
processingInstruction(java.lang.String text)
|
protected void |
rebuildIndentationBuf()
For maximum efficiency when writing indents the required output is pre-computed
This is internal function that recomputes buffer after user requested chnages. |
protected void |
reset()
|
void |
setFeature(java.lang.String name,
boolean state)
|
void |
setOutput(java.io.OutputStream os,
java.lang.String encoding)
|
void |
setOutput(java.io.Writer writer)
|
void |
setPrefix(java.lang.String prefix,
java.lang.String namespace)
|
void |
setProperty(java.lang.String name,
java.lang.Object value)
|
void |
startDocument(java.lang.String encoding,
java.lang.Boolean standalone)
|
MXSerializer |
startTag(java.lang.String namespace,
java.lang.String name)
|
MXSerializer |
text(char[] buf,
int start,
int len)
|
MXSerializer |
text(java.lang.String text)
|
protected void |
writeAttributeValue(java.lang.String value,
java.io.Writer out)
|
protected void |
writeElementContent(char[] buf,
int off,
int len,
java.io.Writer out)
|
protected void |
writeElementContent(java.lang.String text,
java.io.Writer out)
|
protected void |
writeIndent()
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
XML_URI
protected static final java.lang.String XML_URI
- See Also:
- Constant Field Values
XMLNS_URI
protected static final java.lang.String XMLNS_URI
- See Also:
- Constant Field Values
FEATURE_SERIALIZER_ATTVALUE_USE_APOSTROPHE
protected final java.lang.String FEATURE_SERIALIZER_ATTVALUE_USE_APOSTROPHE
- See Also:
- Constant Field Values
FEATURE_NAMES_INTERNED
protected final java.lang.String FEATURE_NAMES_INTERNED
- See Also:
- Constant Field Values
PROPERTY_SERIALIZER_INDENTATION
protected final java.lang.String PROPERTY_SERIALIZER_INDENTATION
- See Also:
- Constant Field Values
PROPERTY_SERIALIZER_LINE_SEPARATOR
protected final java.lang.String PROPERTY_SERIALIZER_LINE_SEPARATOR
- See Also:
- Constant Field Values
PROPERTY_LOCATION
protected static final java.lang.String PROPERTY_LOCATION
- See Also:
- Constant Field Values
namesInterned
protected boolean namesInterned
attributeUseApostrophe
protected boolean attributeUseApostrophe
indentationString
protected java.lang.String indentationString
lineSeparator
protected java.lang.String lineSeparator
location
protected java.lang.String location
out
protected java.io.Writer out
autoDeclaredPrefixes
protected int autoDeclaredPrefixes
depth
protected int depth
elNamespace
protected java.lang.String[] elNamespace
elName
protected java.lang.String[] elName
elNamespaceCount
protected int[] elNamespaceCount
namespaceEnd
protected int namespaceEnd
namespacePrefix
protected java.lang.String[] namespacePrefix
namespaceUri
protected java.lang.String[] namespaceUri
finished
protected boolean finished
pastRoot
protected boolean pastRoot
setPrefixCalled
protected boolean setPrefixCalled
startTagIncomplete
protected boolean startTagIncomplete
doIndent
protected boolean doIndent
seenTag
protected boolean seenTag
seenBracket
protected boolean seenBracket
seenBracketBracket
protected boolean seenBracketBracket
buf
protected char[] buf
precomputedPrefixes
protected static final java.lang.String[] precomputedPrefixes
offsetNewLine
protected int offsetNewLine
indentationJump
protected int indentationJump
indentationBuf
protected char[] indentationBuf
maxIndentLevel
protected int maxIndentLevel
writeLineSepartor
protected boolean writeLineSepartor
writeIndentation
protected boolean writeIndentation
MXSerializer
public MXSerializer()
reset
protected void reset()
ensureElementsCapacity
protected void ensureElementsCapacity()
ensureNamespacesCapacity
protected void ensureNamespacesCapacity()
setFeature
public void setFeature(java.lang.String name,
boolean state)
throws java.lang.IllegalArgumentException,
java.lang.IllegalStateException
- Throws:
java.lang.IllegalArgumentException
java.lang.IllegalStateException
getFeature
public boolean getFeature(java.lang.String name)
throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
rebuildIndentationBuf
protected void rebuildIndentationBuf()
- For maximum efficiency when writing indents the required output is pre-computed
This is internal function that recomputes buffer after user requested chnages.
writeIndent
protected void writeIndent()
throws java.io.IOException
- Throws:
java.io.IOException
setProperty
public void setProperty(java.lang.String name,
java.lang.Object value)
throws java.lang.IllegalArgumentException,
java.lang.IllegalStateException
- Throws:
java.lang.IllegalArgumentException
java.lang.IllegalStateException
getProperty
public java.lang.Object getProperty(java.lang.String name)
throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
getWriter
public java.io.Writer getWriter()
setOutput
public void setOutput(java.io.Writer writer)
setOutput
public void setOutput(java.io.OutputStream os,
java.lang.String encoding)
throws java.io.IOException
- Throws:
java.io.IOException
startDocument
public void startDocument(java.lang.String encoding,
java.lang.Boolean standalone)
throws java.io.IOException
- Throws:
java.io.IOException
endDocument
public void endDocument()
throws java.io.IOException
- Throws:
java.io.IOException
setPrefix
public void setPrefix(java.lang.String prefix,
java.lang.String namespace)
throws java.io.IOException
- Throws:
java.io.IOException
lookupOrDeclarePrefix
protected java.lang.String lookupOrDeclarePrefix(java.lang.String namespace)
getPrefix
public java.lang.String getPrefix(java.lang.String namespace,
boolean generatePrefix)
getDepth
public int getDepth()
getNamespace
public java.lang.String getNamespace()
getName
public java.lang.String getName()
startTag
public MXSerializer startTag(java.lang.String namespace,
java.lang.String name)
throws java.io.IOException
- Throws:
java.io.IOException
attribute
public MXSerializer attribute(java.lang.String namespace,
java.lang.String name,
java.lang.String value)
throws java.io.IOException
- Throws:
java.io.IOException
closeStartTag
protected void closeStartTag()
throws java.io.IOException
- Throws:
java.io.IOException
endTag
public MXSerializer endTag(java.lang.String namespace,
java.lang.String name)
throws java.io.IOException
- Throws:
java.io.IOException
text
public MXSerializer text(java.lang.String text)
throws java.io.IOException
- Throws:
java.io.IOException
text
public MXSerializer text(char[] buf,
int start,
int len)
throws java.io.IOException
- Throws:
java.io.IOException
cdsect
public void cdsect(java.lang.String text)
throws java.io.IOException
- Throws:
java.io.IOException
entityRef
public void entityRef(java.lang.String text)
throws java.io.IOException
- Throws:
java.io.IOException
processingInstruction
public void processingInstruction(java.lang.String text)
throws java.io.IOException
- Throws:
java.io.IOException
comment
public void comment(java.lang.String text)
throws java.io.IOException
- Throws:
java.io.IOException
docdecl
public void docdecl(java.lang.String text)
throws java.io.IOException
- Throws:
java.io.IOException
ignorableWhitespace
public void ignorableWhitespace(java.lang.String text)
throws java.io.IOException
- Throws:
java.io.IOException
flush
public void flush()
throws java.io.IOException
- Throws:
java.io.IOException
writeAttributeValue
protected void writeAttributeValue(java.lang.String value,
java.io.Writer out)
throws java.io.IOException
- Throws:
java.io.IOException
writeElementContent
protected void writeElementContent(java.lang.String text,
java.io.Writer out)
throws java.io.IOException
- Throws:
java.io.IOException
writeElementContent
protected void writeElementContent(char[] buf,
int off,
int len,
java.io.Writer out)
throws java.io.IOException
- Throws:
java.io.IOException
printable
protected static java.lang.String printable(java.lang.String s)
- simple utility method -- good for debugging
printable
protected static java.lang.String printable(char ch)
Copyright © 2011. All Rights Reserved.