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

## Class ParameterParser

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

    public class ParameterParser
    extends java.lang.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
`ParameterParser()` Default ParameterParser constructor.

### Method Summary

All Methods Instance Methods Concrete Methods
`boolean` `isLowerCaseNames()` Returns `true` if parameter names are to be converted to lower case when name/value pairs are parsed.
`java.util.Map<java.lang.String,​java.lang.String>` `parse​(char[] charArray, char separator)` Extracts a map of name/value pairs from the given array of characters.
`java.util.Map<java.lang.String,​java.lang.String>` `parse​(char[] charArray, int offset, int length, char separator)` Extracts a map of name/value pairs from the given array of characters.
`java.util.Map<java.lang.String,​java.lang.String>` `parse​(java.lang.String str, char separator)` Extracts a map of name/value pairs from the given string.
`java.util.Map<java.lang.String,​java.lang.String>` `parse​(java.lang.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 Detail

#### ParameterParser

    public ParameterParser()

Default ParameterParser constructor.

### Method Detail

#### 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 java.util.Map<java.lang.String,​java.lang.String> parse​(java.lang.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 java.util.Map<java.lang.String,​java.lang.String> parse​(java.lang.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 java.util.Map<java.lang.String,​java.lang.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 java.util.Map<java.lang.String,​java.lang.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