Class UrlEncodedParser
- All Implemented Interfaces:
ObjectParser
application/x-www-form-urlencoded as specified in the HTML 4.0
Specification.
Implementation is thread-safe.
The data is parsed using parse(String, Object).
Sample usage:
static void setParser(HttpTransport transport) {
transport.addParser(new UrlEncodedParser());
}
- Since:
- 1.0
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidParses the given URL-encoded content into the given data object of data key name/value pairs, including support for repeating data key names.static voidParses the given URL-encoded content into the given data object of data key name/value pairs, including support for repeating data key names.static voidParses the given URL-encoded content into the given data object of data key name/value pairs usingparse(Reader, Object).static voidParses the given URL-encoded content into the given data object of data key name/value pairs usingparse(Reader, Object).<T> TparseAndClose(InputStream in, Charset charset, Class<T> dataClass) Parses the given input stream into a new instance of the the given data class of key/value pairs and closes the input stream.parseAndClose(InputStream in, Charset charset, Type dataType) Parses the given input stream into a new instance of the the given data type of key/value pairs and closes the input stream.<T> TparseAndClose(Reader reader, Class<T> dataClass) Parses the given reader into a new instance of the the given data class of key/value pairs and closes the reader.parseAndClose(Reader reader, Type dataType) Parses the given reader into a new instance of the the given data type of key/value pairs and closes the reader.private static ObjectparseValue(Type valueType, List<Type> context, String value)
-
Field Details
-
CONTENT_TYPE
-
MEDIA_TYPE
"application/x-www-form-urlencoded"media type with UTF-8 encoding.- Since:
- 1.13
-
-
Constructor Details
-
UrlEncodedParser
public UrlEncodedParser()
-
-
Method Details
-
parse
Parses the given URL-encoded content into the given data object of data key name/value pairs usingparse(Reader, Object).- Parameters:
content- URL-encoded content ornullto ignore contentdata- data key name/value pairs
-
parse
Parses the given URL-encoded content into the given data object of data key name/value pairs usingparse(Reader, Object).- Parameters:
content- URL-encoded content ornullto ignore contentdata- data key name/value pairsdecodeEnabled- flag that specifies whether decoding should be enabled.
-
parse
Parses the given URL-encoded content into the given data object of data key name/value pairs, including support for repeating data key names.Declared fields of a "primitive" type (as defined by
Data.isPrimitive(Type)are parsed usingData.parsePrimitiveValue(Type, String)where theClassparameter is the declared field class. Declared fields of typeCollectionare used to support repeating data key names, so each member of the collection is an additional data key value. They are parsed the same as "primitive" fields, except that the generic type parameter of the collection is used as theClassparameter.If there is no declared field for an input parameter name, it will be ignored unless the input
dataparameter is aMap. If it is a map, the parameter value will be stored either as a string, or as aArrayList<String> in the case of repeated parameters.- Parameters:
reader- URL-encoded readerdata- data key name/value pairs- Throws:
IOException- Since:
- 1.14
-
parse
Parses the given URL-encoded content into the given data object of data key name/value pairs, including support for repeating data key names.Declared fields of a "primitive" type (as defined by
Data.isPrimitive(Type)are parsed usingData.parsePrimitiveValue(Type, String)where theClassparameter is the declared field class. Declared fields of typeCollectionare used to support repeating data key names, so each member of the collection is an additional data key value. They are parsed the same as "primitive" fields, except that the generic type parameter of the collection is used as theClassparameter.If there is no declared field for an input parameter name, it is ignored unless the input
dataparameter is aMap. If it is a map, the parameter value is stored either as a string, or as aArrayList<String> in the case of repeated parameters.- Parameters:
reader- URL-encoded readerdata- data key name/value pairsdecodeEnabled- flag that specifies whether data should be decoded.- Throws:
IOException- Since:
- 1.14
-
parseValue
-
parseAndClose
Description copied from interface:ObjectParserParses the given input stream into a new instance of the the given data class of key/value pairs and closes the input stream.- Specified by:
parseAndClosein interfaceObjectParser- Parameters:
in- input stream which contains the data to parsecharset- charset which should be used to decode the input stream ornullif unknowndataClass- class into which the data is parsed- Throws:
IOException
-
parseAndClose
Description copied from interface:ObjectParserParses the given input stream into a new instance of the the given data type of key/value pairs and closes the input stream.- Specified by:
parseAndClosein interfaceObjectParser- Parameters:
in- input stream which contains the data to parsecharset- charset which should be used to decode the input stream ornullif unknowndataType- type into which the data is parsed- Throws:
IOException
-
parseAndClose
Description copied from interface:ObjectParserParses the given reader into a new instance of the the given data class of key/value pairs and closes the reader.- Specified by:
parseAndClosein interfaceObjectParser- Parameters:
reader- reader which contains the text data to parsedataClass- class into which the data is parsed- Throws:
IOException
-
parseAndClose
Description copied from interface:ObjectParserParses the given reader into a new instance of the the given data type of key/value pairs and closes the reader.- Specified by:
parseAndClosein interfaceObjectParser- Parameters:
reader- reader which contains the text data to parsedataType- type into which the data is parsed- Throws:
IOException
-