net.n3.nanoxml
Class StdXMLBuilder
- IXMLBuilder
public class StdXMLBuilder
StdXMLBuilder is a concrete implementation of IXMLBuilder which creates a
tree of IXMLElement from an XML data source.
$Name: RELEASE_2_2_1 $, $Revision: 1.3 $
void | addAttribute(String key, String nsPrefix, String nsURI, String value, String type) - This method is called when a new attribute of an XML element is
encountered.
|
void | addPCData(Reader reader, String systemID, int lineNr) - This method is called when a PCDATA element is encountered.
|
void | elementAttributesProcessed(String name, String nsPrefix, String nsURI) - This method is called when the attributes of an XML element have been
processed.
|
void | endElement(String name, String nsPrefix, String nsURI) - This method is called when the end of an XML elemnt is encountered.
|
protected void | finalize() - Cleans up the object when it's destroyed.
|
Object | getResult() - Returns the result of the building process.
|
void | newProcessingInstruction(String target, Reader reader) - This method is called when a processing instruction is encountered.
|
void | startBuilding(String systemID, int lineNr) - This method is called before the parser starts processing its input.
|
void | startElement(String name, String nsPrefix, String nsURI, String systemID, int lineNr) - This method is called when a new XML element is encountered.
|
StdXMLBuilder
public StdXMLBuilder()
Creates the builder.
StdXMLBuilder
public StdXMLBuilder(IXMLElement prototype)
Creates the builder.
prototype
- the prototype to use when building the tree.
addAttribute
public void addAttribute(String key,
String nsPrefix,
String nsURI,
String value,
String type)
throws Exception
This method is called when a new attribute of an XML element is
encountered.
- addAttribute in interface IXMLBuilder
key
- the key (name) of the attribute.nsPrefix
- the prefix used to identify the namespace. If no
namespace has been specified, this parameter is null.nsURI
- the URI associated with the namespace. If no
namespace has been specified, or no URI is
associated with nsPrefix, this parameter is null.value
- the value of the attribute.type
- the type of the attribute. If no type is known,
"CDATA" is returned.
addPCData
public void addPCData(Reader reader,
String systemID,
int lineNr)
This method is called when a PCDATA element is encountered. A Java
reader is supplied from which you can read the data. The reader will
only read the data of the element. You don't need to check for
boundaries. If you don't read the full element, the rest of the data
is skipped. You also don't have to care about entities; they are
resolved by the parser.
- addPCData in interface IXMLBuilder
reader
- the Java reader from which you can retrieve the data.systemID
- the system ID of the XML data source.lineNr
- the line in the source where the element starts.
elementAttributesProcessed
public void elementAttributesProcessed(String name,
String nsPrefix,
String nsURI)
This method is called when the attributes of an XML element have been
processed.
- elementAttributesProcessed in interface IXMLBuilder
name
- the name of the element.nsPrefix
- the prefix used to identify the namespace. If no
namespace has been specified, this parameter is null.nsURI
- the URI associated with the namespace. If no
namespace has been specified, or no URI is
associated with nsPrefix, this parameter is null.
endElement
public void endElement(String name,
String nsPrefix,
String nsURI)
This method is called when the end of an XML elemnt is encountered.
- endElement in interface IXMLBuilder
name
- the name of the element.nsPrefix
- the prefix used to identify the namespace. If no
namespace has been specified, this parameter is null.nsURI
- the URI associated with the namespace. If no
namespace has been specified, or no URI is
associated with nsPrefix, this parameter is null.
finalize
protected void finalize()
throws Throwable
Cleans up the object when it's destroyed.
getResult
public Object getResult()
Returns the result of the building process. This method is called just
before the parse method of IXMLParser returns.
- getResult in interface IXMLBuilder
- the result of the building process.
newProcessingInstruction
public void newProcessingInstruction(String target,
Reader reader)
This method is called when a processing instruction is encountered.
PIs with target "xml" are handled by the parser.
- newProcessingInstruction in interface IXMLBuilder
target
- the PI target.reader
- to read the data from the PI.
startBuilding
public void startBuilding(String systemID,
int lineNr)
This method is called before the parser starts processing its input.
- startBuilding in interface IXMLBuilder
systemID
- the system ID of the XML data source.lineNr
- the line on which the parsing starts.
startElement
public void startElement(String name,
String nsPrefix,
String nsURI,
String systemID,
int lineNr)
This method is called when a new XML element is encountered.
- startElement in interface IXMLBuilder
name
- the name of the element.nsPrefix
- the prefix used to identify the namespace. If no
namespace has been specified, this parameter is null.nsURI
- the URI associated with the namespace. If no
namespace has been specified, or no URI is
associated with nsPrefix, this parameter is null.systemID
- the system ID of the XML data source.lineNr
- the line in the source where the element starts.