Package org.restlet.engine.util
Class FormReader
- java.lang.Object
-
- org.restlet.engine.util.FormReader
-
public class FormReader extends java.lang.ObjectForm reader.
-
-
Field Summary
Fields Modifier and Type Field Description private CharacterSetcharacterSetThe encoding to use, decoding is enabled, seedecode.private booleandecodeIndicates if the parameters should be decoded.private charseparatorThe separator character used between parameters.private java.io.InputStreamstreamThe form stream.
-
Constructor Summary
Constructors Constructor Description FormReader(java.lang.String parametersString, char separator)Constructor.FormReader(java.lang.String parametersString, CharacterSet characterSet, char separator)Constructor.FormReader(java.lang.String parametersString, CharacterSet characterSet, char separator, boolean decode)Constructor.FormReader(Representation representation)Constructor.
In case the representation does not define a character set, the UTF-8 character set is used.FormReader(Representation representation, boolean decode)Constructor.
In case the representation does not define a character set, the UTF-8 character set is used.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddParameters(Series<Parameter> parameters)Adds the parameters into a given series.private booleanendOfCurrentParameterReached(int nextChar)Formread()Reads all the parameters.ParameterreadFirstParameter(java.lang.String name)Reads the first parameter with the given name.ParameterreadNextParameter()Reads the next parameter available or null.java.lang.ObjectreadParameter(java.lang.String name)Reads the parameters with the given name.voidreadParameters(java.util.Map<java.lang.String,java.lang.Object> parameters)Reads the parameters whose name is a key in the given map.
-
-
-
Field Detail
-
characterSet
private volatile CharacterSet characterSet
The encoding to use, decoding is enabled, seedecode.
-
decode
private volatile boolean decode
Indicates if the parameters should be decoded.
-
separator
private volatile char separator
The separator character used between parameters.
-
stream
private volatile java.io.InputStream stream
The form stream.
-
-
Constructor Detail
-
FormReader
public FormReader(Representation representation) throws java.io.IOException
Constructor.
In case the representation does not define a character set, the UTF-8 character set is used.- Parameters:
representation- The web form content.- Throws:
java.io.IOException- if the stream of the representation could not be opened.
-
FormReader
public FormReader(Representation representation, boolean decode) throws java.io.IOException
Constructor.
In case the representation does not define a character set, the UTF-8 character set is used.- Parameters:
representation- The web form content.decode- Indicates if the parameters should be decoded using the given character set.- Throws:
java.io.IOException- if the stream of the representation could not be opened.
-
FormReader
public FormReader(java.lang.String parametersString, char separator)Constructor. Will leave the parsed data encoded.- Parameters:
parametersString- The parameters string.separator- The separator character used between parameters.
-
FormReader
public FormReader(java.lang.String parametersString, CharacterSet characterSet, char separator)Constructor.- Parameters:
parametersString- The parameters string.characterSet- The supported character encoding. Set to null to leave the data encoded.separator- The separator character used between parameters.
-
FormReader
public FormReader(java.lang.String parametersString, CharacterSet characterSet, char separator, boolean decode)Constructor.- Parameters:
parametersString- The parameters string.characterSet- The supported character encoding. Set to null to leave the data encoded.separator- The separator character used between parameters.decode- Indicates if the parameters should be decoded using the given character set.
-
-
Method Detail
-
addParameters
public void addParameters(Series<Parameter> parameters)
Adds the parameters into a given series.- Parameters:
parameters- The target parameter series.
-
read
public Form read() throws java.io.IOException
Reads all the parameters.- Returns:
- The form read.
- Throws:
java.io.IOException- If the parameters could not be read.
-
readFirstParameter
public Parameter readFirstParameter(java.lang.String name) throws java.io.IOException
Reads the first parameter with the given name.- Parameters:
name- The parameter name to match.- Returns:
- The parameter value.
- Throws:
java.io.IOException
-
readNextParameter
public Parameter readNextParameter() throws java.io.IOException
Reads the next parameter available or null.- Returns:
- The next parameter available or null.
- Throws:
java.io.IOException- If the next parameter could not be read.
-
endOfCurrentParameterReached
private boolean endOfCurrentParameterReached(int nextChar)
-
readParameter
public java.lang.Object readParameter(java.lang.String name) throws java.io.IOExceptionReads the parameters with the given name. If multiple values are found, a list is returned created.- Parameters:
name- The parameter name to match.- Returns:
- The parameter value or list of values.
- Throws:
java.io.IOException- If the parameters could not be read.
-
readParameters
public void readParameters(java.util.Map<java.lang.String,java.lang.Object> parameters) throws java.io.IOExceptionReads the parameters whose name is a key in the given map. If a matching parameter is found, its value is put in the map. If multiple values are found, a list is created and set in the map.- Parameters:
parameters- The parameters map controlling the reading.- Throws:
java.io.IOException- If the parameters could not be read.
-
-