Package com.google.api.client.xml
Class Xml
- java.lang.Object
-
- com.google.api.client.xml.Xml
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classXml.CustomizeParserCustomizes the behavior of XML parsing.
-
Field Summary
Fields Modifier and Type Field Description private static org.xmlpull.v1.XmlPullParserFactoryfactoryXML pull parser factory.static java.lang.StringMEDIA_TYPE"application/xml; charset=utf-8"media type used as a default for XML parsing.(package private) static java.lang.StringTEXT_CONTENTText content.
-
Constructor Summary
Constructors Modifier Constructor Description privateXml()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static org.xmlpull.v1.XmlPullParsercreateParser()Returns a new XML pull parser.static org.xmlpull.v1.XmlSerializercreateSerializer()Returns a new XML serializer.private static java.lang.StringgetFieldName(boolean isAttribute, java.lang.String alias, java.lang.String namespace, java.lang.String name)private static org.xmlpull.v1.XmlPullParserFactorygetParserFactory()private static voidparseAttributeOrTextContent(java.lang.String stringValue, java.lang.reflect.Field field, java.lang.reflect.Type valueType, java.util.List<java.lang.reflect.Type> context, java.lang.Object destination, GenericXml genericXml, java.util.Map<java.lang.String,java.lang.Object> destinationMap, java.lang.String name)Parses the string value of an attribute value or text content.static voidparseElement(org.xmlpull.v1.XmlPullParser parser, java.lang.Object destination, XmlNamespaceDictionary namespaceDictionary, Xml.CustomizeParser customizeParser)Parses an XML element using the given XML pull parser into the given destination object.private static booleanparseElementInternal(org.xmlpull.v1.XmlPullParser parser, java.util.ArrayList<java.lang.reflect.Type> context, java.lang.Object destination, java.lang.reflect.Type valueType, XmlNamespaceDictionary namespaceDictionary, Xml.CustomizeParser customizeParser)Returns whether the customize parser has requested to stop or reached end of document.private static voidparseNamespacesForElement(org.xmlpull.v1.XmlPullParser parser, XmlNamespaceDictionary namespaceDictionary)Parses the namespaces declared on the current element into the namespace dictionary.private static java.lang.ObjectparseTextContentForElement(org.xmlpull.v1.XmlPullParser parser, java.util.List<java.lang.reflect.Type> context, boolean ignoreTextContent, java.lang.reflect.Type textContentType)private static java.lang.ObjectparseValue(java.lang.reflect.Type valueType, java.util.List<java.lang.reflect.Type> context, java.lang.String value)private static voidsetValue(java.lang.Object value, java.lang.reflect.Field field, java.lang.Object destination, GenericXml genericXml, java.util.Map<java.lang.String,java.lang.Object> destinationMap, java.lang.String name)Sets the value of a given field or map entry.static java.lang.StringtoStringOf(java.lang.Object element)Shows a debug string representation of an element data object of key/value pairs.
-
-
-
Field Detail
-
MEDIA_TYPE
public static final java.lang.String MEDIA_TYPE
"application/xml; charset=utf-8"media type used as a default for XML parsing.Use
HttpMediaType.equalsIgnoreParameters(com.google.api.client.http.HttpMediaType)for comparing media types.- Since:
- 1.10
-
TEXT_CONTENT
static final java.lang.String TEXT_CONTENT
Text content.- See Also:
- Constant Field Values
-
factory
private static org.xmlpull.v1.XmlPullParserFactory factory
XML pull parser factory.
-
-
Method Detail
-
getParserFactory
private static org.xmlpull.v1.XmlPullParserFactory getParserFactory() throws org.xmlpull.v1.XmlPullParserException- Throws:
org.xmlpull.v1.XmlPullParserException
-
createSerializer
public static org.xmlpull.v1.XmlSerializer createSerializer()
Returns a new XML serializer.- Throws:
java.lang.IllegalArgumentException- if encountered anXmlPullParserException
-
createParser
public static org.xmlpull.v1.XmlPullParser createParser() throws org.xmlpull.v1.XmlPullParserExceptionReturns a new XML pull parser.- Throws:
org.xmlpull.v1.XmlPullParserException
-
toStringOf
public static java.lang.String toStringOf(java.lang.Object element)
Shows a debug string representation of an element data object of key/value pairs.It will make up something for the element name and XML namespaces. If those are known, it is better to use
XmlNamespaceDictionary.toStringOf(String, Object).- Parameters:
element- element data object of key/value pairs (GenericXml,Map, or any object with public fields)
-
parseAttributeOrTextContent
private static void parseAttributeOrTextContent(java.lang.String stringValue, java.lang.reflect.Field field, java.lang.reflect.Type valueType, java.util.List<java.lang.reflect.Type> context, java.lang.Object destination, GenericXml genericXml, java.util.Map<java.lang.String,java.lang.Object> destinationMap, java.lang.String name)Parses the string value of an attribute value or text content.- Parameters:
stringValue- string valuefield- field to set ornullif not applicablevalueType- value type (class, parameterized type, or generic array type) ornullfor nonecontext- context list, going from least specific to most specific type context, for example container class and its fielddestination- destination object ornullfor nonegenericXml- generic XML ornullif not applicabledestinationMap- destination map ornullif not applicablename- key name
-
setValue
private static void setValue(java.lang.Object value, java.lang.reflect.Field field, java.lang.Object destination, GenericXml genericXml, java.util.Map<java.lang.String,java.lang.Object> destinationMap, java.lang.String name)Sets the value of a given field or map entry.- Parameters:
value- valuefield- field to set ornullif not applicabledestination- destination object ornullfor nonegenericXml- generic XML ornullif not applicabledestinationMap- destination map ornullif not applicablename- key name
-
parseElement
public static void parseElement(org.xmlpull.v1.XmlPullParser parser, java.lang.Object destination, XmlNamespaceDictionary namespaceDictionary, Xml.CustomizeParser customizeParser) throws java.io.IOException, org.xmlpull.v1.XmlPullParserExceptionParses an XML element using the given XML pull parser into the given destination object.Requires the current event be
XmlPullParser.START_TAG(skipping any initialXmlPullParser.START_DOCUMENT) of the element being parsed. At normal parsing completion, the current event will either beXmlPullParser.END_TAGof the element being parsed, or theXmlPullParser.START_TAGof the requestedatom:entry.- Parameters:
parser- XML pull parserdestination- optional destination object to parser into ornullto ignore XML contentnamespaceDictionary- XML namespace dictionary to store unknown namespacescustomizeParser- optional parser customizer ornullfor none- Throws:
java.io.IOExceptionorg.xmlpull.v1.XmlPullParserException
-
parseElementInternal
private static boolean parseElementInternal(org.xmlpull.v1.XmlPullParser parser, java.util.ArrayList<java.lang.reflect.Type> context, java.lang.Object destination, java.lang.reflect.Type valueType, XmlNamespaceDictionary namespaceDictionary, Xml.CustomizeParser customizeParser) throws java.io.IOException, org.xmlpull.v1.XmlPullParserExceptionReturns whether the customize parser has requested to stop or reached end of document. Otherwise, identical toparseElement(XmlPullParser, Object, XmlNamespaceDictionary, CustomizeParser).- Throws:
java.io.IOExceptionorg.xmlpull.v1.XmlPullParserException
-
getFieldName
private static java.lang.String getFieldName(boolean isAttribute, java.lang.String alias, java.lang.String namespace, java.lang.String name)
-
parseTextContentForElement
private static java.lang.Object parseTextContentForElement(org.xmlpull.v1.XmlPullParser parser, java.util.List<java.lang.reflect.Type> context, boolean ignoreTextContent, java.lang.reflect.Type textContentType) throws org.xmlpull.v1.XmlPullParserException, java.io.IOException- Throws:
org.xmlpull.v1.XmlPullParserExceptionjava.io.IOException
-
parseValue
private static java.lang.Object parseValue(java.lang.reflect.Type valueType, java.util.List<java.lang.reflect.Type> context, java.lang.String value)
-
parseNamespacesForElement
private static void parseNamespacesForElement(org.xmlpull.v1.XmlPullParser parser, XmlNamespaceDictionary namespaceDictionary) throws org.xmlpull.v1.XmlPullParserExceptionParses the namespaces declared on the current element into the namespace dictionary.- Parameters:
parser- XML pull parsernamespaceDictionary- namespace dictionary- Throws:
org.xmlpull.v1.XmlPullParserException
-
-