Package org.xmlpull.v1
Class XmlPullParserFactory
- java.lang.Object
-
- org.xmlpull.v1.XmlPullParserFactory
-
- Direct Known Subclasses:
MXParserFactory
public class XmlPullParserFactory extends Object
This class is used to create implementations of XML Pull Parser defined in XMPULL V1 API. The name of actual factory class will be determined based on several parameters. It works similar to JAXP but tailored to work in J2ME environments (no access to system properties or file system) so name of parser class factory to use and its class used for loading (no class loader - on J2ME no access to context class loaders) must be passed explicitly. If no name of parser factory was passed (or is null) it will try to find name by searching in CLASSPATH for META-INF/services/org.xmlpull.v1.XmlPullParserFactory resource that should contain a comma separated list of class names of factories or parsers to try (in order from left to the right). If none found, it will throw an exception.
NOTE:In J2SE or J2EE environments, you may want to usenewInstance(property, classLoaderCtx)where first argument isSystem.getProperty(XmlPullParserFactory.PROPERTY_NAME)and second isThread.getContextClassLoader().getClass().- Author:
- Aleksander Slominski, Stefan Haustein
- See Also:
XmlPullParser
-
-
Field Summary
Fields Modifier and Type Field Description protected StringclassNamesLocationprotected Hashtablefeaturesprotected VectorparserClassesstatic StringPROPERTY_NAMEName of the system or midlet property that should be used for a system property containing a comma separated list of factory or parser class names (value: org.xmlpull.v1.XmlPullParserFactory).(package private) static ClassreferenceContextClassused as default class to server as context class in newInstance()protected VectorserializerClasses
-
Constructor Summary
Constructors Modifier Constructor Description protectedXmlPullParserFactory()Protected constructor to be called by factory implementations.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleangetFeature(String name)Return the current value of the feature with given name.booleanisNamespaceAware()Indicates whether or not the factory is configured to produce parsers which are namespace aware (it simply set feature XmlPullParser.FEATURE_PROCESS_NAMESPACES to true or false).booleanisValidating()Indicates whether or not the factory is configured to produce parsers which validate the XML content during parse.static XmlPullParserFactorynewInstance()Create a new instance of a PullParserFactory that can be used to create XML pull parsers (see class description for more details).static XmlPullParserFactorynewInstance(String classNames, Class context)XmlPullParsernewPullParser()Creates a new instance of a XML Pull Parser using the currently configured factory features.XmlSerializernewSerializer()Creates a new instance of a XML Serializer.voidsetFeature(String name, boolean state)Set the features to be set when XML Pull Parser is created by this factory.voidsetNamespaceAware(boolean awareness)Specifies that the parser produced by this factory will provide support for XML namespaces.voidsetValidating(boolean validating)Specifies that the parser produced by this factory will be validating (it simply set feature XmlPullParser.FEATURE_VALIDATION to true or false).
-
-
-
Field Detail
-
referenceContextClass
static final Class referenceContextClass
used as default class to server as context class in newInstance()
-
PROPERTY_NAME
public static final String PROPERTY_NAME
Name of the system or midlet property that should be used for a system property containing a comma separated list of factory or parser class names (value: org.xmlpull.v1.XmlPullParserFactory).- See Also:
- Constant Field Values
-
parserClasses
protected Vector parserClasses
-
classNamesLocation
protected String classNamesLocation
-
serializerClasses
protected Vector serializerClasses
-
features
protected Hashtable features
-
-
Method Detail
-
setFeature
public void setFeature(String name, boolean state) throws XmlPullParserException
Set the features to be set when XML Pull Parser is created by this factory.NOTE: factory features are not used for XML Serializer.
- Parameters:
name- string with URI identifying featurestate- if true feature will be set; if false will be ignored- Throws:
XmlPullParserException
-
getFeature
public boolean getFeature(String name)
Return the current value of the feature with given name.NOTE: factory features are not used for XML Serializer.
- Parameters:
name- The name of feature to be retrieved.- Returns:
- The value of named feature.
Unknown features are
always returned as false
-
setNamespaceAware
public void setNamespaceAware(boolean awareness)
Specifies that the parser produced by this factory will provide support for XML namespaces. By default the value of this is set to false.- Parameters:
awareness- true if the parser produced by this code will provide support for XML namespaces; false otherwise.
-
isNamespaceAware
public boolean isNamespaceAware()
Indicates whether or not the factory is configured to produce parsers which are namespace aware (it simply set feature XmlPullParser.FEATURE_PROCESS_NAMESPACES to true or false).- Returns:
- true if the factory is configured to produce parsers which are namespace aware; false otherwise.
-
setValidating
public void setValidating(boolean validating)
Specifies that the parser produced by this factory will be validating (it simply set feature XmlPullParser.FEATURE_VALIDATION to true or false). By default the value of this is set to false.- Parameters:
validating- - if true the parsers created by this factory must be validating.
-
isValidating
public boolean isValidating()
Indicates whether or not the factory is configured to produce parsers which validate the XML content during parse.- Returns:
- true if the factory is configured to produce parsers which validate the XML content during parse; false otherwise.
-
newPullParser
public XmlPullParser newPullParser() throws XmlPullParserException
Creates a new instance of a XML Pull Parser using the currently configured factory features.- Returns:
- A new instance of a XML Pull Parser.
- Throws:
XmlPullParserException- if a parser cannot be created which satisfies the requested configuration.
-
newSerializer
public XmlSerializer newSerializer() throws XmlPullParserException
Creates a new instance of a XML Serializer.NOTE: factory features are not used for XML Serializer.
- Returns:
- A new instance of a XML Serializer.
- Throws:
XmlPullParserException- if a parser cannot be created which satisfies the requested configuration.
-
newInstance
public static XmlPullParserFactory newInstance() throws XmlPullParserException
Create a new instance of a PullParserFactory that can be used to create XML pull parsers (see class description for more details).- Returns:
- a new instance of a PullParserFactory, as returned by newInstance (null, null);
- Throws:
XmlPullParserException
-
newInstance
public static XmlPullParserFactory newInstance(String classNames, Class context) throws XmlPullParserException
- Throws:
XmlPullParserException
-
-