Put Stored Script API
editPut Stored Script API
editPut Stored Script Request
editA PutStoredScriptRequest
requires an id
and content
:
Content
editThe content of a script can be written in different languages and provided in different ways:
XContentBuilder builder = XContentFactory.jsonBuilder(); builder.startObject(); { builder.startObject("script"); { builder.field("lang", "painless"); builder.field("source", "Math.log(_score * 2) + params.multiplier"); } builder.endObject(); } builder.endObject(); request.content(BytesReference.bytes(builder), XContentType.JSON);
Specify a painless script and provided as |
XContentBuilder builder = XContentFactory.jsonBuilder(); builder.startObject(); { builder.startObject("script"); { builder.field("lang", "mustache"); builder.field("source", "{\"query\":{\"match\":{\"title\":\"{{query_string}}\"}}}"); } builder.endObject(); } builder.endObject(); request.content(BytesReference.bytes(builder), XContentType.JSON);
Optional arguments
editThe following arguments can optionally be provided:
Timeout to wait for the all the nodes to acknowledge the script creation as a |
|
Timeout to wait for the all the nodes to acknowledge the script creation as a |
Synchronous Execution
editAcknowledgedResponse putStoredScriptResponse = client.putScript(request, RequestOptions.DEFAULT);
Asynchronous Execution
editThe asynchronous execution of a put stored script request requires both the PutStoredScriptRequest
instance and an ActionListener
instance to be passed to the asynchronous method:
Action Listener
editThe asynchronous method does not block and returns immediately. Once it is
completed the ActionListener
is called back using the onResponse
method
if the execution successfully completed or using the onFailure
method if
it failed.
A typical listener for AcknowledgedResponse
looks like:
Put Stored Script Response
editThe returned AcknowledgedResponse
allows to retrieve information about the
executed operation as follows: