Package org.apache.tomcat.util.http.fileupload

# Class ParameterParser

java.lang.Object
org.apache.tomcat.util.http.fileupload.ParameterParser

public class ParameterParser extends Object
A simple parser intended to parse sequences of name/value pairs. Parameter values are expected to be enclosed in quotes if they contain unsafe characters, such as '=' characters or separators. Parameter values are optional and can be omitted.

`param1 = value; param2 = "anything goes; really"; param3`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ParameterParser()`
  Default ParameterParser constructor.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `isLowerCaseNames()`
  Returns `true` if parameter names are to be converted to lower case when name/value pairs are parsed.
  `Map<String,String>`
  `parse(char[] charArray, char separator)`
  Extracts a map of name/value pairs from the given array of characters.
  `Map<String,String>`
  `parse(char[] charArray, int offset, int length, char separator)`
  Extracts a map of name/value pairs from the given array of characters.
  `Map<String,String>`
  `parse(String str, char separator)`
  Extracts a map of name/value pairs from the given string.
  `Map<String,String>`
  `parse(String str, char[] separators)`
  Extracts a map of name/value pairs from the given string.
  `void`
  `setLowerCaseNames(boolean b)`
  Sets the flag if parameter names are to be converted to lower case when name/value pairs are parsed.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### ParameterParser

    public ParameterParser()
    Default ParameterParser constructor.

- ## Method Details

  - ### isLowerCaseNames

    public boolean isLowerCaseNames()
    Returns `true` if parameter names are to be converted to lower case when name/value pairs are parsed.
    Returns:
      `true` if parameter names are to be converted to lower case when name/value pairs are parsed. Otherwise returns `false`

  - ### setLowerCaseNames

    public void setLowerCaseNames(boolean b)
    Sets the flag if parameter names are to be converted to lower case when name/value pairs are parsed.
    Parameters:
      `b` - `true` if parameter names are to be converted to lower case when name/value pairs are parsed. `false` otherwise.

  - ### parse

    public Map<String,String> parse(String str, char[] separators)
    Extracts a map of name/value pairs from the given string. Names are expected to be unique. Multiple separators may be specified and the earliest found in the input string is used.
    Parameters:
      `str` - the string that contains a sequence of name/value pairs
      `separators` - the name/value pairs separators
    Returns:
      a map of name/value pairs

  - ### parse

    public Map<String,String> parse(String str, char separator)
    Extracts a map of name/value pairs from the given string. Names are expected to be unique.
    Parameters:
      `str` - the string that contains a sequence of name/value pairs
      `separator` - the name/value pairs separator
    Returns:
      a map of name/value pairs

  - ### parse

    public Map<String,String> parse(char[] charArray, char separator)
    Extracts a map of name/value pairs from the given array of characters. Names are expected to be unique.
    Parameters:
      `charArray` - the array of characters that contains a sequence of name/value pairs
      `separator` - the name/value pairs separator
    Returns:
      a map of name/value pairs

  - ### parse

    public Map<String,String> parse(char[] charArray, int offset, int length, char separator)
    Extracts a map of name/value pairs from the given array of characters. Names are expected to be unique.
    Parameters:
      `charArray` - the array of characters that contains a sequence of name/value pairs
      `offset` - - the initial offset.
      `length` - - the length.
      `separator` - the name/value pairs separator
    Returns:
      a map of name/value pairs