Class FormReader


  • public class FormReader
    extends java.lang.Object
    Form reader.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private CharacterSet characterSet
      The encoding to use, decoding is enabled, see decode.
      private boolean decode
      Indicates if the parameters should be decoded.
      private char separator
      The separator character used between parameters.
      private java.io.InputStream stream
      The 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.
    • Field Detail

      • characterSet

        private volatile CharacterSet characterSet
        The encoding to use, decoding is enabled, see decode.
      • 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.IOException
        Reads 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.IOException
        Reads 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.