Package io.micronaut.jaxrs.runtime.core
Class ParameterParser
java.lang.Object
io.micronaut.jaxrs.runtime.core.ParameterParser
A simple parser intended to parse sequences of name/value pairs.
Parameter values are exptected 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
NOTICE: Forked from RESTEasy
- Author:
- Oleg Kalnichevski
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
Returnstrue
if parameter names are to be converted to lower case when name/value pairs are parsed.parse
(char[] chars, char separator) Extracts a map of name/value pairs from the given array of characters.parse
(char[] chars, int offset, int length, char separator) Extracts a map of name/value pairs from the given array of characters.Extracts a map of name/value pairs from the given string.setAttribute
(char[] chars, int offset, int length, char separator, String name, String value) Takes string as-is and only changes the value of a specific attribute.void
setLowerCaseNames
(boolean b) Sets the flag if parameter names are to be converted to lower case when name/value pairs are parsed.
-
Constructor Details
-
ParameterParser
public ParameterParser()Default ParameterParser constructor.
-
-
Method Details
-
isLowerCaseNames
public boolean isLowerCaseNames()Returnstrue
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 returnsfalse
-
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
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 pairsseparator
- the name/value pairs separator- Returns:
- a map of name/value pairs
-
parse
Extracts a map of name/value pairs from the given array of characters. Names are expected to be unique.- Parameters:
chars
- the array of characters that contains a sequence of name/value pairsseparator
- the name/value pairs separator- Returns:
- a map of name/value pairs
-
parse
Extracts a map of name/value pairs from the given array of characters. Names are expected to be unique.- Parameters:
chars
- the array of characters that contains a sequence of name/value pairsoffset
- - the initial offset.length
- - the length.separator
- the name/value pairs separator- Returns:
- a map of name/value pairs
-
setAttribute
public String setAttribute(char[] chars, int offset, int length, char separator, String name, String value) Takes string as-is and only changes the value of a specific attribute.- Parameters:
chars
- the array of characters that contains a sequence of name/value pairsoffset
- - the initial offset.length
- - the length.separator
- the name/value pairs separatorname
- attribute namevalue
- new value- Returns:
- updated parameters string
-