WARNING: Deprecated in 7.15.0.
The Java REST Client is deprecated in favor of the Java API Client.
Create or update stored script API
editCreate or update stored script API
editRequest
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 create or update 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:
Response
editThe returned AcknowledgedResponse
allows to retrieve information about the
executed operation as follows: