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: