org.elasticsearch.client
Interface Client

All Known Subinterfaces:
InternalClient
All Known Implementing Classes:
InternalTransportClient, NodeClient, TransportClient

public interface Client

A client provides a one stop interface for performing actions/operations against the cluster.

All operations performed are asynchronous by nature. Each action/operation has two flavors, the first simply returns an ActionFuture, while the second accepts an ActionListener.

A client can either be retrieved from a Node started, or connected remotely to one or more nodes using TransportClient.

See Also:
Node.client(), TransportClient

Method Summary
 AdminClient admin()
          The admin client that can be used to perform administrative operations.
 void close()
          Closes the client.
 ActionFuture<CountResponse> count(CountRequest request)
          A count of all the documents matching a specific query.
 void count(CountRequest request, ActionListener<CountResponse> listener)
          A count of all the documents matching a specific query.
 ActionFuture<DeleteResponse> delete(DeleteRequest request)
          Deletes a document from the index based on the index, type and id.
 void delete(DeleteRequest request, ActionListener<DeleteResponse> listener)
          Deletes a document from the index based on the index, type and id.
 ActionFuture<DeleteByQueryResponse> deleteByQuery(DeleteByQueryRequest request)
          Deletes all documents from one or more indices based on a query.
 void deleteByQuery(DeleteByQueryRequest request, ActionListener<DeleteByQueryResponse> listener)
          Deletes all documents from one or more indices based on a query.
 ActionFuture<GetResponse> get(GetRequest request)
          Gets the JSON source that was indexed from an index with a type and id.
 void get(GetRequest request, ActionListener<GetResponse> listener)
          Gets the JSON source that was indexed from an index with a type and id.
 ActionFuture<IndexResponse> index(IndexRequest request)
          Index a JSON source associated with a given index and type.
 void index(IndexRequest request, ActionListener<IndexResponse> listener)
          Index a JSON source associated with a given index and type.
 ActionFuture<SearchResponse> moreLikeThis(MoreLikeThisRequest request)
          A more like this action to search for documents that are "like" a specific document.
 void moreLikeThis(MoreLikeThisRequest request, ActionListener<SearchResponse> listener)
          A more like this action to search for documents that are "like" a specific document.
 ActionFuture<SearchResponse> search(SearchRequest request)
          Search across one or more indices and one or more types with a query.
 void search(SearchRequest request, ActionListener<SearchResponse> listener)
          Search across one or more indices and one or more types with a query.
 ActionFuture<SearchResponse> searchScroll(SearchScrollRequest request)
          A search scroll request to continue searching a previous scrollable search request.
 void searchScroll(SearchScrollRequest request, ActionListener<SearchResponse> listener)
          A search scroll request to continue searching a previous scrollable search request.
 ActionFuture<TermsResponse> terms(TermsRequest request)
          A terms request to get terms in one or more indices of specific fields and their document frequencies (in how many document each term exists).
 void terms(TermsRequest request, ActionListener<TermsResponse> listener)
          A terms request to get terms in one or more indices of specific fields and their document frequencies (in how many document each term exists).
 

Method Detail

close

void close()
Closes the client.


admin

AdminClient admin()
The admin client that can be used to perform administrative operations.


index

ActionFuture<IndexResponse> index(IndexRequest request)
Index a JSON source associated with a given index and type.

The id is optional, if it is not provided, one will be generated automatically.

Parameters:
request - The index request
Returns:
The result future
See Also:
Requests.indexRequest(String)

index

void index(IndexRequest request,
           ActionListener<IndexResponse> listener)
Index a JSON source associated with a given index and type.

The id is optional, if it is not provided, one will be generated automatically.

Parameters:
request - The index request
listener - A listener to be notified with a result
See Also:
Requests.indexRequest(String)

delete

ActionFuture<DeleteResponse> delete(DeleteRequest request)
Deletes a document from the index based on the index, type and id.

Parameters:
request - The delete request
Returns:
The result future
See Also:
Requests.deleteRequest(String)

delete

void delete(DeleteRequest request,
            ActionListener<DeleteResponse> listener)
Deletes a document from the index based on the index, type and id.

Parameters:
request - The delete request
listener - A listener to be notified with a result
See Also:
Requests.deleteRequest(String)

deleteByQuery

ActionFuture<DeleteByQueryResponse> deleteByQuery(DeleteByQueryRequest request)
Deletes all documents from one or more indices based on a query.

Parameters:
request - The delete by query request
Returns:
The result future
See Also:
Requests.deleteByQueryRequest(String...)

deleteByQuery

void deleteByQuery(DeleteByQueryRequest request,
                   ActionListener<DeleteByQueryResponse> listener)
Deletes all documents from one or more indices based on a query.

Parameters:
request - The delete by query request
listener - A listener to be notified with a result
See Also:
Requests.deleteByQueryRequest(String...)

get

ActionFuture<GetResponse> get(GetRequest request)
Gets the JSON source that was indexed from an index with a type and id.

Parameters:
request - The get request
Returns:
The result future
See Also:
Requests.getRequest(String)

get

void get(GetRequest request,
         ActionListener<GetResponse> listener)
Gets the JSON source that was indexed from an index with a type and id.

Parameters:
request - The get request
listener - A listener to be notified with a result
See Also:
Requests.getRequest(String)

count

ActionFuture<CountResponse> count(CountRequest request)
A count of all the documents matching a specific query.

Parameters:
request - The count request
Returns:
The result future
See Also:
Requests.countRequest(String...)

count

void count(CountRequest request,
           ActionListener<CountResponse> listener)
A count of all the documents matching a specific query.

Parameters:
request - The count request
listener - A listener to be notified of the result
See Also:
Requests.countRequest(String...)

search

ActionFuture<SearchResponse> search(SearchRequest request)
Search across one or more indices and one or more types with a query.

Parameters:
request - The search request
Returns:
The result future
See Also:
Requests.searchRequest(String...)

search

void search(SearchRequest request,
            ActionListener<SearchResponse> listener)
Search across one or more indices and one or more types with a query.

Parameters:
request - The search request
listener - A listener to be notified of the result
See Also:
Requests.searchRequest(String...)

searchScroll

ActionFuture<SearchResponse> searchScroll(SearchScrollRequest request)
A search scroll request to continue searching a previous scrollable search request.

Parameters:
request - The search scroll request
Returns:
The result future
See Also:
Requests.searchScrollRequest(String)

searchScroll

void searchScroll(SearchScrollRequest request,
                  ActionListener<SearchResponse> listener)
A search scroll request to continue searching a previous scrollable search request.

Parameters:
request - The search scroll request
listener - A listener to be notified of the result
See Also:
Requests.searchScrollRequest(String)

terms

ActionFuture<TermsResponse> terms(TermsRequest request)
A terms request to get terms in one or more indices of specific fields and their document frequencies (in how many document each term exists).

Parameters:
request - The term request
Returns:
The result future
See Also:
Requests.termsRequest(String...)

terms

void terms(TermsRequest request,
           ActionListener<TermsResponse> listener)
A terms request to get terms in one or more indices of specific fields and their document frequencies (in how many document each term exists).

Parameters:
request - The term request
listener - A listener to be notified of the result
See Also:
Requests.termsRequest(String...)

moreLikeThis

ActionFuture<SearchResponse> moreLikeThis(MoreLikeThisRequest request)
A more like this action to search for documents that are "like" a specific document.

Parameters:
request - The more like this request
Returns:
The response future

moreLikeThis

void moreLikeThis(MoreLikeThisRequest request,
                  ActionListener<SearchResponse> listener)
A more like this action to search for documents that are "like" a specific document.

Parameters:
request - The more like this request
listener - A listener to be notified of the result