Class PositionalParamsRetriever
- java.lang.Object
-
- com.thetransactioncompany.jsonrpc2.util.ParamsRetriever
-
- com.thetransactioncompany.jsonrpc2.util.PositionalParamsRetriever
-
public class PositionalParamsRetriever extends ParamsRetriever
Utility class for retrieving JSON-RPC 2.0 positional parameters (packed into a JSON Array).Provides a set of getter methods according to the expected parameter type (number, string, etc.) and whether the parameter is mandatory or optional:
getXXX(param_pos)
for mandatory parameters, whereXXX
is the expected parameter type.getOptXXX(param_pos, default_value)
for optional parameters, specifying a default value.
There are also generic getter methods that let you do the type conversion yourself.
If a parameter cannot be retrieved, e.g. due to a missing mandatory parameter or bad type, a
JSONRPC2Error.INVALID_PARAMS
exception is thrown.Example: suppose you have a method with 3 positional parameters where the first two are mandatory and the last is optional and has a default value of
true
.// Parse received request string JSONRPC2Request request = null; try { request = JSONRPC2Request.parse(jsonString); } catch (JSONRPC2ParseException e) { // handle exception... } // Create a new retriever for positional parameters List params = (List)request.getParams(); PositionalParamsRetriever r = new PositionalParamsRetriever(params); try { // Extract first mandatory string parameter String param1 = r.getString(0); // Extract second integer parameter int param2 = r.getInt(1); // Extract third optional boolean parameter which defaults to true boolean param3 = r.getOptBoolean(2, true); } catch (JSONRPC2Error e) { // A JSONRPC2Error.INVALID_PARAMS will be thrown to indicate // an unexpected parameter type or a missing mandatory parameter. // You can use it straight away to create the appropriate // JSON-RPC 2.0 error response. JSONRPC2Response response = new JSONRPC2Response(e, null); }
- Author:
- Vladimir Dzhuvinov
-
-
Constructor Summary
Constructors Constructor Description PositionalParamsRetriever(List<Object> params)
Creates a new positional parameters retriever from the specified value list.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
ensureParam(int position)
Throws aJSONRPC2Error.INVALID_PARAMS
exception if there is no parameter at the specified position.<T> void
ensureParam(int position, Class<T> clazz)
Throws aJSONRPC2Error.INVALID_PARAMS
exception if there is no parameter at the specified position, its value isnull
, or its type doesn't map to the specified.<T> void
ensureParam(int position, Class<T> clazz, boolean allowNull)
Throws aJSONRPC2Error.INVALID_PARAMS
exception if there is no parameter at the specified position or its type doesn't map to the specified.void
ensureParameter(int position)
Deprecated.<T> void
ensureParameter(int position, Class<T> clazz)
Deprecated.<T> void
ensureParameter(int position, Class<T> clazz, boolean allowNull)
Deprecated.Object
get(int position)
Retrieves the specified parameter which can be of any type.<T> T
get(int position, Class<T> clazz)
Retrieves the specified parameter which must map to the provided class (use the appropriate wrapper class for primitive types).<T> T
get(int position, Class<T> clazz, boolean allowNull)
Retrieves the specified parameter which must map to the provided class (use the appropriate wrapper class for primitive types).boolean
getBoolean(int position)
Retrieves the specified boolean (maps from JSON true/false) parameter.double
getDouble(int position)
Retrieves the specified numeric parameter as adouble
.<T extends Enum<T>>
TgetEnum(int position, Class<T> enumClass)
Retrieves the specified enumerated parameter (from a JSON string that has a predefined set of possible values).<T extends Enum<T>>
TgetEnum(int position, Class<T> enumClass, boolean ignoreCase)
Retrieves the specified enumerated parameter (from a JSON string that has a predefined set of possible values), allowing for a case insensitive match.String
getEnumString(int position, String[] enumStrings)
Retrieves the specified enumerated string parameter.String
getEnumString(int position, String[] enumStrings, boolean ignoreCase)
Retrieves the specified enumerated string parameter, allowing for a case insenstive match.float
getFloat(int position)
Retrieves the specified numeric parameter as afloat
.int
getInt(int position)
Retrieves the specified numeric parameter as anint
.List<Object>
getList(int position)
Retrieves the specified list (maps from JSON array) parameter.List<Object>
getList(int position, boolean allowNull)
Retrieves the specified list (maps from JSON array) parameter.long
getLong(int position)
Retrieves the specified numeric parameter as along
.Map<String,Object>
getMap(int position)
Retrieves the specified map (maps from JSON object) parameter.Map<String,Object>
getMap(int position, boolean allowNull)
Retrieves the specified map (maps from JSON object) parameter.<T> T
getOpt(int position, Class<T> clazz, boolean allowNull, T defaultValue)
Retrieves the specified optional parameter which must map to the provided class (use the appropriate wrapper class for primitive types).<T> T
getOpt(int position, Class<T> clazz, T defaultValue)
Retrieves the specified optional parameter which must map to the provided class (use the appropriate wrapper class for primitive types).boolean
getOptBoolean(int position, boolean defaultValue)
Retrieves the specified optional boolean (maps from JSON true/false) parameter.double
getOptDouble(int position, double defaultValue)
Retrieves the specified optional numeric parameter as adouble
.<T extends Enum<T>>
TgetOptEnum(int position, Class<T> enumClass, String defaultValue)
Retrieves the specified optional enumerated parameter (from a JSON string that has a predefined set of possible values).<T extends Enum<T>>
TgetOptEnum(int position, Class<T> enumClass, String defaultValue, boolean ignoreCase)
Retrieves the specified optional enumerated parameter (from a JSON string that has a predefined set of possible values), allowing for a case insenstive match.String
getOptEnumString(int position, String[] enumStrings, String defaultValue)
Retrieves the specified optional enumerated string parameter.String
getOptEnumString(int position, String[] enumStrings, String defaultValue, boolean ignoreCase)
Retrieves the specified optional enumerated string parameter, allowing for a case insenstive match.float
getOptFloat(int position, float defaultValue)
Retrieves the specified optional numeric parameter as afloat
.int
getOptInt(int position, int defaultValue)
Retrieves the specified optional numeric parameter as anint
.List<Object>
getOptList(int position, boolean allowNull, List<Object> defaultValue)
Retrieves the specified optional list (maps from JSON array) parameter.List<Object>
getOptList(int position, List<Object> defaultValue)
Retrieves the specified optional list (maps from JSON array) parameter.long
getOptLong(int position, long defaultValue)
Retrieves the specified optional numeric parameter as along
.Map<String,Object>
getOptMap(int position, boolean allowNull, Map<String,Object> defaultValue)
Retrieves the specified optional map (maps from JSON object) parameter.Map<String,Object>
getOptMap(int position, Map<String,Object> defaultValue)
Retrieves the specified optional map (maps from JSON object) parameter.String
getOptString(int position, boolean allowNull, String defaultValue)
Retrieves the specified optional string parameter.String
getOptString(int position, String defaultValue)
Retrieves the specified optional string parameter.String[]
getOptStringArray(int position, boolean allowNull, String[] defaultValue)
Retrieves the specified optional string array (maps from JSON array of strings) parameter.String[]
getOptStringArray(int position, String[] defaultValue)
Retrieves the specified optional string array (maps from JSON array of strings) parameter.List<Object>
getParams()
Gets the positional parameters for this retriever.String
getString(int position)
Retrieves the specified string parameter.String
getString(int position, boolean allowNull)
Retrieves the specified string parameter.String[]
getStringArray(int position)
Retrieves the specified string array (maps from JSON array of strings) parameter.String[]
getStringArray(int position, boolean allowNull)
Retrieves the specified string array (maps from JSON array of strings) parameter.boolean
hasParam(int position)
Returnstrue
a parameter at the specified position exists, elsefalse
.boolean
hasParameter(int position)
Deprecated.int
size()
Returns the parameter count.-
Methods inherited from class com.thetransactioncompany.jsonrpc2.util.ParamsRetriever
getEnumStringMatch, getEnumStringMatch
-
-
-
-
Method Detail
-
getParams
public List<Object> getParams()
Gets the positional parameters for this retriever.- Returns:
- The positional parameters.
-
size
public int size()
Description copied from class:ParamsRetriever
Returns the parameter count.- Specified by:
size
in classParamsRetriever
- Returns:
- The parameters count.
-
hasParam
public boolean hasParam(int position)
Returnstrue
a parameter at the specified position exists, elsefalse
.- Parameters:
position
- The parameter position.- Returns:
true
if the parameter exists, elsefalse
.
-
hasParameter
@Deprecated public boolean hasParameter(int position)
Deprecated.- See Also:
hasParam(int)
-
ensureParam
public void ensureParam(int position) throws JSONRPC2Error
Throws aJSONRPC2Error.INVALID_PARAMS
exception if there is no parameter at the specified position.You may use this method to fire the proper JSON-RPC 2.0 error on a missing mandatory parameter.
- Parameters:
position
- The parameter position, starting with zero for the first.- Throws:
JSONRPC2Error
- On a missing parameter (JSONRPC2Error.INVALID_PARAMS
).
-
ensureParameter
@Deprecated public void ensureParameter(int position) throws JSONRPC2Error
Deprecated.- Throws:
JSONRPC2Error
- See Also:
ensureParam(int)
-
ensureParam
public <T> void ensureParam(int position, Class<T> clazz) throws JSONRPC2Error
Throws aJSONRPC2Error.INVALID_PARAMS
exception if there is no parameter at the specified position, its value isnull
, or its type doesn't map to the specified.You may use this method to fire the proper JSON-RPC 2.0 error on a missing or badly-typed mandatory parameter.
- Parameters:
position
- The parameter position.clazz
- The corresponding Java class that the parameter should map to (any one of the return types of thegetXXX()
getter methods. Set toObject.class
to allow any type. Must not benull
.- Throws:
JSONRPC2Error
- On a missing parameter,null
value or bad type (JSONRPC2Error.INVALID_PARAMS
).
-
ensureParameter
@Deprecated public <T> void ensureParameter(int position, Class<T> clazz) throws JSONRPC2Error
Deprecated.- Throws:
JSONRPC2Error
- See Also:
ensureParam(int, Class)
-
ensureParam
public <T> void ensureParam(int position, Class<T> clazz, boolean allowNull) throws JSONRPC2Error
Throws aJSONRPC2Error.INVALID_PARAMS
exception if there is no parameter at the specified position or its type doesn't map to the specified.You may use this method to fire the proper JSON-RPC 2.0 error on a missing or badly-typed mandatory parameter.
- Parameters:
position
- The parameter position.clazz
- The corresponding Java class that the parameter should map to (any one of the return types of thegetXXX()
getter methods. Set toObject.class
to allow any type. Must not benull
.allowNull
- Iftrue
allows anull
parameter value.- Throws:
JSONRPC2Error
- On a missing parameter or bad type (JSONRPC2Error.INVALID_PARAMS
).
-
ensureParameter
@Deprecated public <T> void ensureParameter(int position, Class<T> clazz, boolean allowNull) throws JSONRPC2Error
Deprecated.- Throws:
JSONRPC2Error
- See Also:
ensureParam(int, Class, boolean)
-
get
public Object get(int position) throws JSONRPC2Error
Retrieves the specified parameter which can be of any type. Use this generic getter if you want to cast the value yourself. Otherwise look at the typedget*
methods.- Parameters:
position
- The parameter position.- Returns:
- The parameter value.
- Throws:
JSONRPC2Error
- On a missing parameter (JSONRPC2Error.INVALID_PARAMS
).
-
get
public <T> T get(int position, Class<T> clazz) throws JSONRPC2Error
Retrieves the specified parameter which must map to the provided class (use the appropriate wrapper class for primitive types).- Parameters:
position
- The parameter position.clazz
- The corresponding Java class that the parameter should map to (any one of the return types of thegetXXX()
getter methods. Set toObject.class
to allow any type. Must not benull
.- Returns:
- The parameter value.
- Throws:
JSONRPC2Error
- On a missing parameter,null
value or bad type (JSONRPC2Error.INVALID_PARAMS
).
-
get
public <T> T get(int position, Class<T> clazz, boolean allowNull) throws JSONRPC2Error
Retrieves the specified parameter which must map to the provided class (use the appropriate wrapper class for primitive types).- Parameters:
position
- The parameter position.clazz
- The corresponding Java class that the parameter should map to (any one of the return types of thegetXXX()
getter methods. Set toObject.class
to allow any type. Must not benull
.allowNull
- Iftrue
allows anull
parameter value.- Returns:
- The parameter value.
- Throws:
JSONRPC2Error
- On a missing parameter or bad type (JSONRPC2Error.INVALID_PARAMS
).
-
getOpt
public <T> T getOpt(int position, Class<T> clazz, T defaultValue) throws JSONRPC2Error
Retrieves the specified optional parameter which must map to the provided class (use the appropriate wrapper class for primitive types). If the parameter doesn't exist the method returns the specified default value.- Parameters:
position
- The parameter position.clazz
- The corresponding Java class that the parameter should map to (any one of the return types of thegetXXX()
getter methods. Set toObject.class
to allow any type. Must not benull
.defaultValue
- The default return value if the parameter doesn't exist. May benull
.- Returns:
- The parameter value.
- Throws:
JSONRPC2Error
- On a bad parameter type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getOpt
public <T> T getOpt(int position, Class<T> clazz, boolean allowNull, T defaultValue) throws JSONRPC2Error
Retrieves the specified optional parameter which must map to the provided class (use the appropriate wrapper class for primitive types). If the parameter doesn't exist the method returns the specified default value.- Parameters:
position
- The parameter position.clazz
- The corresponding Java class that the parameter should map to (any one of the return types of thegetXXX()
getter methods. Set toObject.class
to allow any type. Must not benull
.allowNull
- Iftrue
allows anull
parameter value.defaultValue
- The default return value if the parameter doesn't exist. May benull
.- Returns:
- The parameter value.
- Throws:
JSONRPC2Error
- On a bad parameter type (JSONRPC2Error.INVALID_PARAMS
).
-
getString
public String getString(int position) throws JSONRPC2Error
Retrieves the specified string parameter.- Parameters:
position
- The parameter position.- Returns:
- The parameter value as a string.
- Throws:
JSONRPC2Error
- On a missing parameter, bad type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getString
public String getString(int position, boolean allowNull) throws JSONRPC2Error
Retrieves the specified string parameter.- Parameters:
position
- The parameter position.allowNull
- Iftrue
allows anull
value.- Returns:
- The parameter value as a string.
- Throws:
JSONRPC2Error
- On a missing parameter or bad type (JSONRPC2Error.INVALID_PARAMS
).
-
getOptString
public String getOptString(int position, String defaultValue) throws JSONRPC2Error
Retrieves the specified optional string parameter. If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.defaultValue
- The default return value if the parameter doesn't exist. May benull
.- Returns:
- The parameter value as a string.
- Throws:
JSONRPC2Error
- On a bad type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getOptString
public String getOptString(int position, boolean allowNull, String defaultValue) throws JSONRPC2Error
Retrieves the specified optional string parameter. If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.allowNull
- Iftrue
allows anull
value.defaultValue
- The default return value if the parameter doesn't exist. May benull
.- Returns:
- The parameter value as a string.
- Throws:
JSONRPC2Error
- On a bad type (JSONRPC2Error.INVALID_PARAMS
).
-
getEnumString
public String getEnumString(int position, String[] enumStrings) throws JSONRPC2Error
Retrieves the specified enumerated string parameter.- Parameters:
position
- The parameter position.enumStrings
- The acceptable string values. Must not benull
.- Returns:
- The parameter value as a string.
- Throws:
JSONRPC2Error
- On a missing parameter, bad type or bad enumeration value (JSONRPC2Error.INVALID_PARAMS
).
-
getEnumString
public String getEnumString(int position, String[] enumStrings, boolean ignoreCase) throws JSONRPC2Error
Retrieves the specified enumerated string parameter, allowing for a case insenstive match.- Parameters:
position
- The parameter position.enumStrings
- The acceptable string values. Must not benull
.ignoreCase
-true
for a case insensitive match.- Returns:
- The matching parameter value as a string.
- Throws:
JSONRPC2Error
- On a missing parameter, bad type or bad enumeration value (JSONRPC2Error.INVALID_PARAMS
).
-
getOptEnumString
public String getOptEnumString(int position, String[] enumStrings, String defaultValue) throws JSONRPC2Error
Retrieves the specified optional enumerated string parameter. If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.enumStrings
- The acceptable string values. Must not benull
.defaultValue
- The default return value if the parameter doesn't exist. May benull
.- Returns:
- The parameter value as a string.
- Throws:
JSONRPC2Error
- On a bad type or bad enumeration value (JSONRPC2Error.INVALID_PARAMS
).
-
getOptEnumString
public String getOptEnumString(int position, String[] enumStrings, String defaultValue, boolean ignoreCase) throws JSONRPC2Error
Retrieves the specified optional enumerated string parameter, allowing for a case insenstive match. If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.enumStrings
- The acceptable string values. Must not benull
.defaultValue
- The default return value if the parameter doesn't exist. May benull
.ignoreCase
-true
for a case insensitive match.- Returns:
- The parameter value as a string.
- Throws:
JSONRPC2Error
- On a bad type or bad enumeration value (JSONRPC2Error.INVALID_PARAMS
).
-
getEnum
public <T extends Enum<T>> T getEnum(int position, Class<T> enumClass) throws JSONRPC2Error
Retrieves the specified enumerated parameter (from a JSON string that has a predefined set of possible values).- Parameters:
position
- The parameter position.enumClass
- An enumeration type with constant names representing the acceptable string values. Must not benull
.- Returns:
- The matching enumeration constant.
- Throws:
JSONRPC2Error
- On a missing parameter, bad type or bad enumeration value (JSONRPC2Error.INVALID_PARAMS
).
-
getEnum
public <T extends Enum<T>> T getEnum(int position, Class<T> enumClass, boolean ignoreCase) throws JSONRPC2Error
Retrieves the specified enumerated parameter (from a JSON string that has a predefined set of possible values), allowing for a case insensitive match.- Parameters:
position
- The parameter position.enumClass
- An enumeration type with constant names representing the acceptable string values. Must not benull
.ignoreCase
- Iftrue
a case insensitive match against the acceptable constant names is performed.- Returns:
- The matching enumeration constant.
- Throws:
JSONRPC2Error
- On a missing parameter, bad type or bad enumeration value (JSONRPC2Error.INVALID_PARAMS
).
-
getOptEnum
public <T extends Enum<T>> T getOptEnum(int position, Class<T> enumClass, String defaultValue) throws JSONRPC2Error
Retrieves the specified optional enumerated parameter (from a JSON string that has a predefined set of possible values). If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.enumClass
- An enumeration type with constant names representing the acceptable string values. Must not benull
.defaultValue
- The default return value if the parameter doesn't exist. May benull
.- Returns:
- The matching enumeration constant.
- Throws:
JSONRPC2Error
- On a bad type or bad enumeration value (JSONRPC2Error.INVALID_PARAMS
).
-
getOptEnum
public <T extends Enum<T>> T getOptEnum(int position, Class<T> enumClass, String defaultValue, boolean ignoreCase) throws JSONRPC2Error
Retrieves the specified optional enumerated parameter (from a JSON string that has a predefined set of possible values), allowing for a case insenstive match. If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.enumClass
- An enumeration type with constant names representing the acceptable string values. Must not benull
.defaultValue
- The default return value if the parameter doesn't exist. May benull
.ignoreCase
- Iftrue
a case insensitive match against the acceptable constant names is performed.- Returns:
- The matching enumeration constant.
- Throws:
JSONRPC2Error
- On a bad type or bad enumeration value (JSONRPC2Error.INVALID_PARAMS
).
-
getBoolean
public boolean getBoolean(int position) throws JSONRPC2Error
Retrieves the specified boolean (maps from JSON true/false) parameter.- Parameters:
position
- The parameter position.- Returns:
- The parameter value as a
boolean
. - Throws:
JSONRPC2Error
- On a missing parameter, bad type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getOptBoolean
public boolean getOptBoolean(int position, boolean defaultValue) throws JSONRPC2Error
Retrieves the specified optional boolean (maps from JSON true/false) parameter. If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.defaultValue
- The default return value if the parameter doesn't exist.- Returns:
- The parameter value as a
boolean
. - Throws:
JSONRPC2Error
- On a bad parameter type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getInt
public int getInt(int position) throws JSONRPC2Error
Retrieves the specified numeric parameter as anint
.- Parameters:
position
- The parameter position.- Returns:
- The parameter value as an
int
. - Throws:
JSONRPC2Error
- On a missing parameter, bad type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getOptInt
public int getOptInt(int position, int defaultValue) throws JSONRPC2Error
Retrieves the specified optional numeric parameter as anint
. If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.defaultValue
- The default return value if the parameter doesn't exist.- Returns:
- The parameter value as an
int
. - Throws:
JSONRPC2Error
- On a bad parameter type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getLong
public long getLong(int position) throws JSONRPC2Error
Retrieves the specified numeric parameter as along
.- Parameters:
position
- The parameter position.- Returns:
- The parameter value as a
long
. - Throws:
JSONRPC2Error
- On a missing parameter, bad type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getOptLong
public long getOptLong(int position, long defaultValue) throws JSONRPC2Error
Retrieves the specified optional numeric parameter as along
. If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.defaultValue
- The default return value if the parameter doesn't exist.- Returns:
- The parameter value as a
long
. - Throws:
JSONRPC2Error
- On a bad parameter type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getFloat
public float getFloat(int position) throws JSONRPC2Error
Retrieves the specified numeric parameter as afloat
.- Parameters:
position
- The parameter position.- Returns:
- The parameter value as a
float
. - Throws:
JSONRPC2Error
- On a missing parameter, bad type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getOptFloat
public float getOptFloat(int position, float defaultValue) throws JSONRPC2Error
Retrieves the specified optional numeric parameter as afloat
. If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.defaultValue
- The default return value if the parameter doesn't exist.- Returns:
- The parameter value as a
float
. - Throws:
JSONRPC2Error
- On a bad parameter type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getDouble
public double getDouble(int position) throws JSONRPC2Error
Retrieves the specified numeric parameter as adouble
.- Parameters:
position
- The parameter position.- Returns:
- The parameter value as a
double
. - Throws:
JSONRPC2Error
- On a missing parameter, bad type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getOptDouble
public double getOptDouble(int position, double defaultValue) throws JSONRPC2Error
Retrieves the specified optional numeric parameter as adouble
. If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.defaultValue
- The default return value if the parameter doesn't exist.- Returns:
- The parameter value as a
double
. - Throws:
JSONRPC2Error
- On a bad parameter type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getList
public List<Object> getList(int position) throws JSONRPC2Error
Retrieves the specified list (maps from JSON array) parameter.- Parameters:
position
- The parameter position.- Returns:
- The parameter value as a list.
- Throws:
JSONRPC2Error
- On a missing parameter, bad type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getList
public List<Object> getList(int position, boolean allowNull) throws JSONRPC2Error
Retrieves the specified list (maps from JSON array) parameter.- Parameters:
position
- The parameter position.allowNull
- Iftrue
allows anull
value.- Returns:
- The parameter value as a list.
- Throws:
JSONRPC2Error
- On a missing parameter or bad type (JSONRPC2Error.INVALID_PARAMS
).
-
getOptList
public List<Object> getOptList(int position, List<Object> defaultValue) throws JSONRPC2Error
Retrieves the specified optional list (maps from JSON array) parameter. If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.defaultValue
- The default return value if the parameter doesn't exist. May benull
.- Returns:
- The parameter value as a list.
- Throws:
JSONRPC2Error
- On a bad parameter type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getOptList
public List<Object> getOptList(int position, boolean allowNull, List<Object> defaultValue) throws JSONRPC2Error
Retrieves the specified optional list (maps from JSON array) parameter. If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.allowNull
- Iftrue
allows anull
value.defaultValue
- The default return value if the parameter doesn't exist. May benull
.- Returns:
- The parameter value as a list.
- Throws:
JSONRPC2Error
- On a bad parameter type (JSONRPC2Error.INVALID_PARAMS
).
-
getStringArray
public String[] getStringArray(int position) throws JSONRPC2Error
Retrieves the specified string array (maps from JSON array of strings) parameter.- Parameters:
position
- The parameter position.- Returns:
- The parameter value as a string array.
- Throws:
JSONRPC2Error
- On a missing parameter, bad type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getStringArray
public String[] getStringArray(int position, boolean allowNull) throws JSONRPC2Error
Retrieves the specified string array (maps from JSON array of strings) parameter.- Parameters:
position
- The parameter position.allowNull
- Iftrue
allows anull
value.- Returns:
- The parameter value as a string array.
- Throws:
JSONRPC2Error
- On a missing parameter or bad type (JSONRPC2Error.INVALID_PARAMS
).
-
getOptStringArray
public String[] getOptStringArray(int position, String[] defaultValue) throws JSONRPC2Error
Retrieves the specified optional string array (maps from JSON array of strings) parameter. If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.defaultValue
- The default return value if the parameter doesn't exist. May benull
.- Returns:
- The parameter value as a string array.
- Throws:
JSONRPC2Error
- On a bad parameter type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getOptStringArray
public String[] getOptStringArray(int position, boolean allowNull, String[] defaultValue) throws JSONRPC2Error
Retrieves the specified optional string array (maps from JSON array of strings) parameter. If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.allowNull
- Iftrue
allows anull
value.defaultValue
- The default return value if the parameter doesn't exist. May benull
.- Returns:
- The parameter value as a string array.
- Throws:
JSONRPC2Error
- On a bad parameter type (JSONRPC2Error.INVALID_PARAMS
).
-
getMap
public Map<String,Object> getMap(int position) throws JSONRPC2Error
Retrieves the specified map (maps from JSON object) parameter.- Parameters:
position
- The parameter position.- Returns:
- The parameter value as a map.
- Throws:
JSONRPC2Error
- On a missing parameter, bad type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getMap
public Map<String,Object> getMap(int position, boolean allowNull) throws JSONRPC2Error
Retrieves the specified map (maps from JSON object) parameter.- Parameters:
position
- The parameter position.allowNull
- Iftrue
allows anull
value.- Returns:
- The parameter value as a map.
- Throws:
JSONRPC2Error
- On a missing parameter or bad type (JSONRPC2Error.INVALID_PARAMS
).
-
getOptMap
public Map<String,Object> getOptMap(int position, Map<String,Object> defaultValue) throws JSONRPC2Error
Retrieves the specified optional map (maps from JSON object) parameter. If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.defaultValue
- The default return value if the parameter doesn't exist. May benull
.- Returns:
- The parameter value as a map.
- Throws:
JSONRPC2Error
- On a bad parameter type ornull
value (JSONRPC2Error.INVALID_PARAMS
).
-
getOptMap
public Map<String,Object> getOptMap(int position, boolean allowNull, Map<String,Object> defaultValue) throws JSONRPC2Error
Retrieves the specified optional map (maps from JSON object) parameter. If it doesn't exist the method will return the specified default value.- Parameters:
position
- The parameter position.allowNull
- Iftrue
allows anull
value.defaultValue
- The default return value if the parameter doesn't exist. May benull
.- Returns:
- The parameter value as a map.
- Throws:
JSONRPC2Error
- On a bad parameter type (JSONRPC2Error.INVALID_PARAMS
).
-
-