IMPORTANT: No additional bug fixes or documentation updates
will be released for this version. For the latest information, see the
current release documentation.
Performing requests
edit
IMPORTANT: This documentation is no longer updated. Refer to Elastic's version policy and the latest documentation.
Performing requests
editOnce the RestClient has been created, requests can be sent by calling one of
the available performRequest or performRequestAsync method variants.
The performRequest methods are synchronous and they return the Response
directly, meaning that the client will block and wait for a response to be returned.
The performRequestAsync variants, which return void and accept an extra
ResponseListener as an argument, are executed asynchronously. The provided
listener will be notified upon completion or failure.
// Synchronous variants
Response performRequest(String method, String endpoint,
Header... headers)
throws IOException;
Response performRequest(String method, String endpoint,
Map<String, String> params, Header... headers)
throws IOException;
Response performRequest(String method, String endpoint,
Map<String, String> params,
HttpEntity entity,
Header... headers)
throws IOException;
Response performRequest(String method, String endpoint,
Map<String, String> params,
HttpEntity entity,
HttpAsyncResponseConsumerFactory responseConsumerFactory,
Header... headers)
throws IOException;
// Asynchronous variants
void performRequestAsync(String method, String endpoint,
ResponseListener responseListener,
Header... headers);
void performRequestAsync(String method, String endpoint,
Map<String, String> params,
ResponseListener responseListener,
Header... headers);
void performRequestAsync(String method, String endpoint,
Map<String, String> params,
HttpEntity entity,
ResponseListener responseListener,
Header... headers);
void performRequestAsync(String method, String endpoint,
Map<String, String> params,
HttpEntity entity,
HttpAsyncResponseConsumerFactory responseConsumerFactory,
ResponseListener responseListener,
Header... headers);
Request Arguments
editThe following are the arguments accepted by the different methods:
-
method - the http method or verb
-
endpoint -
the request path, which identifies the Elasticsearch API to
call (e.g.
/_cluster/health) -
params - the optional parameters to be sent as querystring parameters
-
entity -
the optional request body enclosed in an
org.apache.http.HttpEntityobject -
responseConsumerFactory -
the optional factory that is used to create an
org.apache.http.nio.protocol.HttpAsyncResponseConsumercallback instance per request attempt. Controls how the response body gets streamed from a non-blocking HTTP connection on the client side. When not provided, the default implementation is used which buffers the whole response body in heap memory, up to 100 MB -
responseListener - the listener to be notified upon asynchronous request success or failure
-
headers - optional request headers