|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.kxml2.wap.WbxmlSerializer
public class WbxmlSerializer
A class for writing WBXML.
Field Summary | |
---|---|
(package private) java.util.Vector |
attributes
|
private int |
attrPage
|
(package private) java.util.Hashtable |
attrStartTable
|
(package private) java.util.Hashtable |
attrValueTable
|
(package private) java.io.ByteArrayOutputStream |
buf
|
(package private) int |
depth
|
private java.lang.String |
encoding
|
(package private) java.lang.String |
name
|
(package private) java.lang.String |
namespace
|
(package private) java.io.OutputStream |
out
|
(package private) java.lang.String |
pending
|
(package private) java.util.Hashtable |
stringTable
|
(package private) java.io.ByteArrayOutputStream |
stringTableBuf
|
private int |
tagPage
|
(package private) java.util.Hashtable |
tagTable
|
Constructor Summary | |
---|---|
WbxmlSerializer()
|
Method Summary | |
---|---|
XmlSerializer |
attribute(java.lang.String namespace,
java.lang.String name,
java.lang.String value)
Write an attribute. |
void |
cdsect(java.lang.String cdsect)
|
void |
checkPending(boolean degenerated)
|
void |
comment(java.lang.String comment)
|
void |
docdecl(java.lang.String docdecl)
|
void |
endDocument()
Finish writing. |
XmlSerializer |
endTag(java.lang.String namespace,
java.lang.String name)
Write end tag. |
void |
entityRef(java.lang.String er)
|
void |
flush()
ATTENTION: flush cannot work since Wbxml documents require need buffering. |
int |
getDepth()
Returns the current depth of the element. |
boolean |
getFeature(java.lang.String name)
Return the current value of the feature with given name. |
java.lang.String |
getName()
Returns the name of the current element as set by startTag(). |
java.lang.String |
getNamespace()
Returns the namespace URI of the current element as set by startTag(). |
java.lang.String |
getPrefix(java.lang.String nsp,
boolean create)
Return namespace that corresponds to given prefix If there is no prefix bound to this namespace return null but if generatePrefix is false then return generated prefix. |
java.lang.Object |
getProperty(java.lang.String name)
Look up the value of a property. |
void |
ignorableWhitespace(java.lang.String sp)
|
void |
processingInstruction(java.lang.String pi)
|
void |
setAttrStartTable(int page,
java.lang.String[] attrStartTable)
Sets the attribute start Table for a given page. |
void |
setAttrValueTable(int page,
java.lang.String[] attrValueTable)
Sets the attribute value Table for a given page. |
void |
setFeature(java.lang.String name,
boolean value)
Set feature identified by name (recommended to be URI for uniqueness). |
void |
setOutput(java.io.OutputStream out,
java.lang.String encoding)
Set to use binary output stream with given encoding. |
void |
setOutput(java.io.Writer writer)
Set the output to the given writer. |
void |
setPrefix(java.lang.String prefix,
java.lang.String nsp)
Binds the given prefix to the given namespace. |
void |
setProperty(java.lang.String property,
java.lang.Object value)
Set the value of a property. |
void |
setTagTable(int page,
java.lang.String[] tagTable)
Sets the tag table for a given page. |
void |
startDocument(java.lang.String s,
java.lang.Boolean b)
Write <?xml declaration with encoding (if encoding not null) and standalone flag (if standalone not null) This method can only be called just after setOutput. |
XmlSerializer |
startTag(java.lang.String namespace,
java.lang.String name)
Writes a start tag with the given namespace and name. |
XmlSerializer |
text(char[] chars,
int start,
int len)
Writes text, where special XML chars are escaped automatically |
XmlSerializer |
text(java.lang.String text)
Writes text, where special XML chars are escaped automatically |
(package private) static void |
writeInt(java.io.OutputStream out,
int i)
|
void |
writeLegacy(int type,
java.lang.String data)
currently ignored! |
(package private) static void |
writeStrI(java.io.OutputStream out,
java.lang.String s)
|
(package private) void |
writeStrT(java.lang.String s)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
java.util.Hashtable stringTable
java.io.OutputStream out
java.io.ByteArrayOutputStream buf
java.io.ByteArrayOutputStream stringTableBuf
java.lang.String pending
int depth
java.lang.String name
java.lang.String namespace
java.util.Vector attributes
java.util.Hashtable attrStartTable
java.util.Hashtable attrValueTable
java.util.Hashtable tagTable
private int attrPage
private int tagPage
private java.lang.String encoding
Constructor Detail |
---|
public WbxmlSerializer()
Method Detail |
---|
public XmlSerializer attribute(java.lang.String namespace, java.lang.String name, java.lang.String value)
XmlSerializer
attribute
in interface XmlSerializer
public void cdsect(java.lang.String cdsect) throws java.io.IOException
cdsect
in interface XmlSerializer
java.io.IOException
public void comment(java.lang.String comment)
comment
in interface XmlSerializer
public void docdecl(java.lang.String docdecl)
docdecl
in interface XmlSerializer
public void entityRef(java.lang.String er)
entityRef
in interface XmlSerializer
public int getDepth()
XmlSerializer
<!-- outside --> 0 <root> 1 sometext 1 <foobar> 2 </foobar> 2 </root> 1 <!-- outside --> 0
getDepth
in interface XmlSerializer
public boolean getFeature(java.lang.String name)
XmlSerializer
NOTE: unknown properties are always returned as null
getFeature
in interface XmlSerializer
name
- The name of feature to be retrieved.
public java.lang.String getNamespace()
XmlSerializer
NOTE: that measn in particaulr that:
getNamespace
in interface XmlSerializer
public java.lang.String getName()
XmlSerializer
getName
in interface XmlSerializer
public java.lang.String getPrefix(java.lang.String nsp, boolean create)
XmlSerializer
NOTE: if the prefix is empty string "" and defualt namespace is bound to this prefix then empty string ("") is returned.
NOTE: prefixes "xml" and "xmlns" are already bound will have values as defined Namespaces in XML specification
getPrefix
in interface XmlSerializer
public java.lang.Object getProperty(java.lang.String name)
XmlSerializer
NOTE: unknown properties are
getProperty
in interface XmlSerializer
name
- The name of property to be retrieved.
public void ignorableWhitespace(java.lang.String sp)
ignorableWhitespace
in interface XmlSerializer
public void endDocument() throws java.io.IOException
XmlSerializer
endDocument
in interface XmlSerializer
java.io.IOException
public void flush()
flush
in interface XmlSerializer
public void checkPending(boolean degenerated) throws java.io.IOException
java.io.IOException
public void processingInstruction(java.lang.String pi)
processingInstruction
in interface XmlSerializer
public void setFeature(java.lang.String name, boolean value)
XmlSerializer
setFeature
in interface XmlSerializer
public void setOutput(java.io.Writer writer)
XmlSerializer
WARNING no information about encoding is available!
setOutput
in interface XmlSerializer
public void setOutput(java.io.OutputStream out, java.lang.String encoding) throws java.io.IOException
XmlSerializer
setOutput
in interface XmlSerializer
java.io.IOException
public void setPrefix(java.lang.String prefix, java.lang.String nsp)
XmlSerializer
xmlns:prefix='namespace'
(or xmlns:prefix="namespace"
depending what character is used
to quote attribute value).
NOTE: this method MUST be called directly before startTag() and if anything but startTag() or setPrefix() is called next there will be exception.
NOTE: prefixes "xml" and "xmlns" are already bound and can not be redefined see: Namespaces in XML Errata.
NOTE: to set default namespace use as prefix empty string.
setPrefix
in interface XmlSerializer
prefix
- must be not null (or IllegalArgumentException is thrown)nsp
- must be not nullpublic void setProperty(java.lang.String property, java.lang.Object value)
XmlSerializer
setProperty
in interface XmlSerializer
public void startDocument(java.lang.String s, java.lang.Boolean b) throws java.io.IOException
XmlSerializer
startDocument
in interface XmlSerializer
java.io.IOException
public XmlSerializer startTag(java.lang.String namespace, java.lang.String name) throws java.io.IOException
XmlSerializer
startTag
in interface XmlSerializer
java.io.IOException
public XmlSerializer text(char[] chars, int start, int len) throws java.io.IOException
XmlSerializer
text
in interface XmlSerializer
java.io.IOException
public XmlSerializer text(java.lang.String text) throws java.io.IOException
XmlSerializer
text
in interface XmlSerializer
java.io.IOException
public XmlSerializer endTag(java.lang.String namespace, java.lang.String name) throws java.io.IOException
XmlSerializer
Background: in kXML endTag had no arguments, and non matching tags were very difficult to find... If namespace is null no namespace prefix is printed but just name. If namespace is empty string then serialzier will make sure that default empty namespace is declared (in XML 1.0 xmlns='').
endTag
in interface XmlSerializer
java.io.IOException
public void writeLegacy(int type, java.lang.String data)
static void writeInt(java.io.OutputStream out, int i) throws java.io.IOException
java.io.IOException
static void writeStrI(java.io.OutputStream out, java.lang.String s) throws java.io.IOException
java.io.IOException
void writeStrT(java.lang.String s) throws java.io.IOException
java.io.IOException
public void setTagTable(int page, java.lang.String[] tagTable)
public void setAttrStartTable(int page, java.lang.String[] attrStartTable)
public void setAttrValueTable(int page, java.lang.String[] attrValueTable)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |