Package org.robolectric.android
Class XmlResourceParserImpl
- java.lang.Object
-
- org.robolectric.android.XmlResourceParserImpl
-
- All Implemented Interfaces:
android.content.res.XmlResourceParser,android.util.AttributeSet,java.lang.AutoCloseable,org.xmlpull.v1.XmlPullParser
public class XmlResourceParserImpl extends java.lang.Object implements android.content.res.XmlResourceParserConcrete implementation of theXmlResourceParser. Clients expects a pull parser while the resource loader initialise this object with aDocument. This implementation navigates the dom and emulates a pull parser by raising all the opportune events. Note that the original android implementation is based on a set of native methods calls. Here those methods are re-implemented in java when possible.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String[]AVAILABLE_FEATURESAll the parser features currently supported by Android.static java.lang.String[]UNAVAILABLE_FEATURESAll the parser features currently NOT supported by Android.-
Fields inherited from interface org.xmlpull.v1.XmlPullParser
CDSECT, COMMENT, DOCDECL, END_DOCUMENT, END_TAG, ENTITY_REF, FEATURE_PROCESS_DOCDECL, FEATURE_PROCESS_NAMESPACES, FEATURE_REPORT_NAMESPACE_ATTRIBUTES, FEATURE_VALIDATION, IGNORABLE_WHITESPACE, NO_NAMESPACE, PROCESSING_INSTRUCTION, START_DOCUMENT, START_TAG, TEXT, TYPES
-
-
Constructor Summary
Constructors Constructor Description XmlResourceParserImpl(org.w3c.dom.Document document, java.lang.String fileName, java.lang.String packageName, java.lang.String applicationPackageName, org.robolectric.res.ResourceTable resourceTable)Deprecated.XmlResourceParserImpl(org.w3c.dom.Document document, java.nio.file.Path fileName, java.lang.String packageName, java.lang.String applicationPackageName, org.robolectric.res.ResourceTable resourceTable)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()voiddefineEntityReplacementText(java.lang.String entityName, java.lang.String replacementText)protected voidfinalize()java.lang.StringgetAttribute(java.lang.String namespace, java.lang.String name)booleangetAttributeBooleanValue(int idx, boolean defaultValue)booleangetAttributeBooleanValue(java.lang.String namespace, java.lang.String attribute, boolean defaultValue)intgetAttributeCount()floatgetAttributeFloatValue(int idx, float defaultValue)floatgetAttributeFloatValue(java.lang.String namespace, java.lang.String attribute, float defaultValue)intgetAttributeIntValue(int idx, int defaultValue)intgetAttributeIntValue(java.lang.String namespace, java.lang.String attribute, int defaultValue)intgetAttributeListValue(int idx, java.lang.String[] options, int defaultValue)intgetAttributeListValue(java.lang.String namespace, java.lang.String attribute, java.lang.String[] options, int defaultValue)java.lang.StringgetAttributeName(int index)intgetAttributeNameResource(int index)java.lang.StringgetAttributeNamespace(int index)java.lang.StringgetAttributePrefix(int index)intgetAttributeResourceValue(int idx, int defaultValue)intgetAttributeResourceValue(java.lang.String namespace, java.lang.String attribute, int defaultValue)java.lang.StringgetAttributeType(int index)intgetAttributeUnsignedIntValue(int idx, int defaultValue)intgetAttributeUnsignedIntValue(java.lang.String namespace, java.lang.String attribute, int defaultValue)java.lang.StringgetAttributeValue(int index)java.lang.StringgetAttributeValue(java.lang.String namespace, java.lang.String name)java.lang.StringgetClassAttribute()intgetColumnNumber()intgetDepth()intgetEventType()booleangetFeature(java.lang.String name)java.lang.StringgetIdAttribute()intgetIdAttributeResourceValue(int defaultValue)java.lang.StringgetInputEncoding()intgetLineNumber()java.lang.StringgetName()java.lang.StringgetNamespace()java.lang.StringgetNamespace(java.lang.String prefix)intgetNamespaceCount(int depth)java.lang.StringgetNamespacePrefix(int pos)java.lang.StringgetNamespaceUri(int pos)java.lang.StringgetPositionDescription()java.lang.StringgetPrefix()java.lang.ObjectgetProperty(java.lang.String name)intgetStyleAttribute()java.lang.StringgetText()char[]getTextCharacters(int[] holderForStartAndLength)booleanisAttributeDefault(int index)booleanisEmptyElementTag()booleanisWhitespace()booleanisWhitespace(java.lang.String text)intnext()intnextTag()java.lang.StringnextText()intnextToken()java.lang.Stringqualify(java.lang.String value)voidrequire(int type, java.lang.String namespace, java.lang.String name)voidsetFeature(java.lang.String name, boolean state)voidsetInput(java.io.InputStream inputStream, java.lang.String inputEncoding)voidsetInput(java.io.Reader in)voidsetProperty(java.lang.String name, java.lang.Object value)
-
-
-
Constructor Detail
-
XmlResourceParserImpl
@Deprecated public XmlResourceParserImpl(org.w3c.dom.Document document, java.lang.String fileName, java.lang.String packageName, java.lang.String applicationPackageName, org.robolectric.res.ResourceTable resourceTable)Deprecated.
-
XmlResourceParserImpl
public XmlResourceParserImpl(org.w3c.dom.Document document, java.nio.file.Path fileName, java.lang.String packageName, java.lang.String applicationPackageName, org.robolectric.res.ResourceTable resourceTable)
-
-
Method Detail
-
setFeature
public void setFeature(java.lang.String name, boolean state) throws org.xmlpull.v1.XmlPullParserException- Specified by:
setFeaturein interfaceorg.xmlpull.v1.XmlPullParser- Throws:
org.xmlpull.v1.XmlPullParserException
-
getFeature
public boolean getFeature(java.lang.String name)
- Specified by:
getFeaturein interfaceorg.xmlpull.v1.XmlPullParser
-
setProperty
public void setProperty(java.lang.String name, java.lang.Object value) throws org.xmlpull.v1.XmlPullParserException- Specified by:
setPropertyin interfaceorg.xmlpull.v1.XmlPullParser- Throws:
org.xmlpull.v1.XmlPullParserException
-
getProperty
public java.lang.Object getProperty(java.lang.String name)
- Specified by:
getPropertyin interfaceorg.xmlpull.v1.XmlPullParser
-
setInput
public void setInput(java.io.Reader in) throws org.xmlpull.v1.XmlPullParserException- Specified by:
setInputin interfaceorg.xmlpull.v1.XmlPullParser- Throws:
org.xmlpull.v1.XmlPullParserException
-
setInput
public void setInput(java.io.InputStream inputStream, java.lang.String inputEncoding) throws org.xmlpull.v1.XmlPullParserException- Specified by:
setInputin interfaceorg.xmlpull.v1.XmlPullParser- Throws:
org.xmlpull.v1.XmlPullParserException
-
defineEntityReplacementText
public void defineEntityReplacementText(java.lang.String entityName, java.lang.String replacementText) throws org.xmlpull.v1.XmlPullParserException- Specified by:
defineEntityReplacementTextin interfaceorg.xmlpull.v1.XmlPullParser- Throws:
org.xmlpull.v1.XmlPullParserException
-
getNamespacePrefix
public java.lang.String getNamespacePrefix(int pos) throws org.xmlpull.v1.XmlPullParserException- Specified by:
getNamespacePrefixin interfaceorg.xmlpull.v1.XmlPullParser- Throws:
org.xmlpull.v1.XmlPullParserException
-
getInputEncoding
public java.lang.String getInputEncoding()
- Specified by:
getInputEncodingin interfaceorg.xmlpull.v1.XmlPullParser
-
getNamespace
public java.lang.String getNamespace(java.lang.String prefix)
- Specified by:
getNamespacein interfaceorg.xmlpull.v1.XmlPullParser
-
getNamespaceCount
public int getNamespaceCount(int depth) throws org.xmlpull.v1.XmlPullParserException- Specified by:
getNamespaceCountin interfaceorg.xmlpull.v1.XmlPullParser- Throws:
org.xmlpull.v1.XmlPullParserException
-
getPositionDescription
public java.lang.String getPositionDescription()
- Specified by:
getPositionDescriptionin interfaceandroid.util.AttributeSet- Specified by:
getPositionDescriptionin interfaceorg.xmlpull.v1.XmlPullParser
-
getNamespaceUri
public java.lang.String getNamespaceUri(int pos) throws org.xmlpull.v1.XmlPullParserException- Specified by:
getNamespaceUriin interfaceorg.xmlpull.v1.XmlPullParser- Throws:
org.xmlpull.v1.XmlPullParserException
-
getColumnNumber
public int getColumnNumber()
- Specified by:
getColumnNumberin interfaceorg.xmlpull.v1.XmlPullParser
-
getDepth
public int getDepth()
- Specified by:
getDepthin interfaceorg.xmlpull.v1.XmlPullParser
-
getText
public java.lang.String getText()
- Specified by:
getTextin interfaceorg.xmlpull.v1.XmlPullParser
-
getLineNumber
public int getLineNumber()
- Specified by:
getLineNumberin interfaceorg.xmlpull.v1.XmlPullParser
-
getEventType
public int getEventType() throws org.xmlpull.v1.XmlPullParserException- Specified by:
getEventTypein interfaceorg.xmlpull.v1.XmlPullParser- Throws:
org.xmlpull.v1.XmlPullParserException
-
isWhitespace
public boolean isWhitespace(java.lang.String text) throws org.xmlpull.v1.XmlPullParserException- Throws:
org.xmlpull.v1.XmlPullParserException
-
isWhitespace
public boolean isWhitespace() throws org.xmlpull.v1.XmlPullParserException- Specified by:
isWhitespacein interfaceorg.xmlpull.v1.XmlPullParser- Throws:
org.xmlpull.v1.XmlPullParserException
-
getPrefix
public java.lang.String getPrefix()
- Specified by:
getPrefixin interfaceorg.xmlpull.v1.XmlPullParser
-
getTextCharacters
public char[] getTextCharacters(int[] holderForStartAndLength)
- Specified by:
getTextCharactersin interfaceorg.xmlpull.v1.XmlPullParser
-
getNamespace
public java.lang.String getNamespace()
- Specified by:
getNamespacein interfaceorg.xmlpull.v1.XmlPullParser
-
getName
public java.lang.String getName()
- Specified by:
getNamein interfaceorg.xmlpull.v1.XmlPullParser
-
getAttribute
public java.lang.String getAttribute(java.lang.String namespace, java.lang.String name)
-
getAttributeNamespace
public java.lang.String getAttributeNamespace(int index)
- Specified by:
getAttributeNamespacein interfaceandroid.util.AttributeSet- Specified by:
getAttributeNamespacein interfaceorg.xmlpull.v1.XmlPullParser- Specified by:
getAttributeNamespacein interfaceandroid.content.res.XmlResourceParser
-
getAttributeName
public java.lang.String getAttributeName(int index)
- Specified by:
getAttributeNamein interfaceandroid.util.AttributeSet- Specified by:
getAttributeNamein interfaceorg.xmlpull.v1.XmlPullParser
-
getAttributePrefix
public java.lang.String getAttributePrefix(int index)
- Specified by:
getAttributePrefixin interfaceorg.xmlpull.v1.XmlPullParser
-
isEmptyElementTag
public boolean isEmptyElementTag() throws org.xmlpull.v1.XmlPullParserException- Specified by:
isEmptyElementTagin interfaceorg.xmlpull.v1.XmlPullParser- Throws:
org.xmlpull.v1.XmlPullParserException
-
getAttributeCount
public int getAttributeCount()
- Specified by:
getAttributeCountin interfaceandroid.util.AttributeSet- Specified by:
getAttributeCountin interfaceorg.xmlpull.v1.XmlPullParser
-
getAttributeValue
public java.lang.String getAttributeValue(int index)
- Specified by:
getAttributeValuein interfaceandroid.util.AttributeSet- Specified by:
getAttributeValuein interfaceorg.xmlpull.v1.XmlPullParser
-
qualify
public java.lang.String qualify(java.lang.String value)
-
getAttributeType
public java.lang.String getAttributeType(int index)
- Specified by:
getAttributeTypein interfaceorg.xmlpull.v1.XmlPullParser
-
isAttributeDefault
public boolean isAttributeDefault(int index)
- Specified by:
isAttributeDefaultin interfaceorg.xmlpull.v1.XmlPullParser
-
nextToken
public int nextToken() throws org.xmlpull.v1.XmlPullParserException, java.io.IOException- Specified by:
nextTokenin interfaceorg.xmlpull.v1.XmlPullParser- Throws:
org.xmlpull.v1.XmlPullParserExceptionjava.io.IOException
-
getAttributeValue
public java.lang.String getAttributeValue(java.lang.String namespace, java.lang.String name)- Specified by:
getAttributeValuein interfaceandroid.util.AttributeSet- Specified by:
getAttributeValuein interfaceorg.xmlpull.v1.XmlPullParser
-
next
public int next() throws org.xmlpull.v1.XmlPullParserException, java.io.IOException- Specified by:
nextin interfaceorg.xmlpull.v1.XmlPullParser- Throws:
org.xmlpull.v1.XmlPullParserExceptionjava.io.IOException
-
require
public void require(int type, java.lang.String namespace, java.lang.String name) throws org.xmlpull.v1.XmlPullParserException, java.io.IOException- Specified by:
requirein interfaceorg.xmlpull.v1.XmlPullParser- Throws:
org.xmlpull.v1.XmlPullParserExceptionjava.io.IOException
-
nextText
public java.lang.String nextText() throws org.xmlpull.v1.XmlPullParserException, java.io.IOException- Specified by:
nextTextin interfaceorg.xmlpull.v1.XmlPullParser- Throws:
org.xmlpull.v1.XmlPullParserExceptionjava.io.IOException
-
nextTag
public int nextTag() throws org.xmlpull.v1.XmlPullParserException, java.io.IOException- Specified by:
nextTagin interfaceorg.xmlpull.v1.XmlPullParser- Throws:
org.xmlpull.v1.XmlPullParserExceptionjava.io.IOException
-
getAttributeNameResource
public int getAttributeNameResource(int index)
- Specified by:
getAttributeNameResourcein interfaceandroid.util.AttributeSet
-
getAttributeListValue
public int getAttributeListValue(java.lang.String namespace, java.lang.String attribute, java.lang.String[] options, int defaultValue)- Specified by:
getAttributeListValuein interfaceandroid.util.AttributeSet
-
getAttributeBooleanValue
public boolean getAttributeBooleanValue(java.lang.String namespace, java.lang.String attribute, boolean defaultValue)- Specified by:
getAttributeBooleanValuein interfaceandroid.util.AttributeSet
-
getAttributeResourceValue
public int getAttributeResourceValue(java.lang.String namespace, java.lang.String attribute, int defaultValue)- Specified by:
getAttributeResourceValuein interfaceandroid.util.AttributeSet
-
getAttributeIntValue
public int getAttributeIntValue(java.lang.String namespace, java.lang.String attribute, int defaultValue)- Specified by:
getAttributeIntValuein interfaceandroid.util.AttributeSet
-
getAttributeUnsignedIntValue
public int getAttributeUnsignedIntValue(java.lang.String namespace, java.lang.String attribute, int defaultValue)- Specified by:
getAttributeUnsignedIntValuein interfaceandroid.util.AttributeSet
-
getAttributeFloatValue
public float getAttributeFloatValue(java.lang.String namespace, java.lang.String attribute, float defaultValue)- Specified by:
getAttributeFloatValuein interfaceandroid.util.AttributeSet
-
getAttributeListValue
public int getAttributeListValue(int idx, java.lang.String[] options, int defaultValue)- Specified by:
getAttributeListValuein interfaceandroid.util.AttributeSet
-
getAttributeBooleanValue
public boolean getAttributeBooleanValue(int idx, boolean defaultValue)- Specified by:
getAttributeBooleanValuein interfaceandroid.util.AttributeSet
-
getAttributeResourceValue
public int getAttributeResourceValue(int idx, int defaultValue)- Specified by:
getAttributeResourceValuein interfaceandroid.util.AttributeSet
-
getAttributeIntValue
public int getAttributeIntValue(int idx, int defaultValue)- Specified by:
getAttributeIntValuein interfaceandroid.util.AttributeSet
-
getAttributeUnsignedIntValue
public int getAttributeUnsignedIntValue(int idx, int defaultValue)- Specified by:
getAttributeUnsignedIntValuein interfaceandroid.util.AttributeSet
-
getAttributeFloatValue
public float getAttributeFloatValue(int idx, float defaultValue)- Specified by:
getAttributeFloatValuein interfaceandroid.util.AttributeSet
-
getIdAttribute
public java.lang.String getIdAttribute()
- Specified by:
getIdAttributein interfaceandroid.util.AttributeSet
-
getClassAttribute
public java.lang.String getClassAttribute()
- Specified by:
getClassAttributein interfaceandroid.util.AttributeSet
-
getIdAttributeResourceValue
public int getIdAttributeResourceValue(int defaultValue)
- Specified by:
getIdAttributeResourceValuein interfaceandroid.util.AttributeSet
-
getStyleAttribute
public int getStyleAttribute()
- Specified by:
getStyleAttributein interfaceandroid.util.AttributeSet
-
close
public void close()
- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfaceandroid.content.res.XmlResourceParser
-
finalize
protected void finalize() throws java.lang.Throwable- Overrides:
finalizein classjava.lang.Object- Throws:
java.lang.Throwable
-
-