Additional Query ParametersQuery pipeline stage configuration specifications
The Additional Query Parameters query pipeline stage is used to set, append, and remove Solr query parameters. This stage takes a list of query parameters. Each parameter is specified as a triple consisting of parameter name, parameter value, and update policy.
Available update policies are: replace
, append
, remove
and default
.
The policy 'default' means that this parameter will be added only if it has not yet been set via the request or by a default specification in the Solr config file solrconfig.xml.
Example Stage Specification
Set the response format to JSON:
{ "type":"set-params",
"id":"default-params",
"params": [
{"key":"wt", "value":"json", "policy":"default"}
],
"skip":false
}
Return a field named "id", and 10 rows of results:
{ "type":"set-params",
"id":"default-params",
"params": [
{"key":"fl", "value":"id", "policy":"append"},
{"key":"rows", "value":"10", "policy":"replace"}
],
"skip":false
}
Query pipeline stage condition examples
Stages can be triggered conditionally when a script in the Condition field evaluates to true. Some examples are shown below.
Run this stage only for mobile clients:
params.deviceType === "mobile"
Run this stage when debugging is enabled:
params.debug === "true"
Run this stage when the query includes a specific term:
params.q && params.q.includes("sale")
Run this stage when multiple conditions are met:
request.hasParam("fusion-user-name") && request.getFirstParam("fusion-user-name").equals("SuperUser");
!request.hasParam("isFusionPluginQuery")
The first condition checks that the request parameter "fusion-user-name" is present and has the value "SuperUser". The second condition checks that the request parameter "isFusionPluginQuery" is not present.
Configuration
When entering configuration values in the UI, use unescaped characters, such as \t for the tab character. When entering configuration values in the API, use escaped characters, such as \\t for the tab character.
|