|
|||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES | ||||||||
See:
Description
| Interface Summary | |
|---|---|
| Index | An Index allows synchronous adding and deleting of Documents as well as synchronous searching for Documents. |
| IndexManager | A manager capable of listing available indexes, which can be queried about their metadata or have index/delete/search operations performed on them. |
| Class Summary | |
|---|---|
| AddDocumentsResponse | Represents a result of adding a list of Document to the index. |
| Document | Represents a user generated document. |
| Document.Builder | A builder of documents. |
| ExpressionTreeBuilder | A generator of AST representation of an expression. |
| Field | Represents a field of a Document, which is a name, an optional
locale, and at most one value: text, HTML, atom or date. |
| Field.Builder | A field builder. |
| FieldExpression | Represents an expression bound to a returned Field with the given name. |
| FieldExpression.Builder | A field expression builder. |
| IndexManagerFactory | An factory that creates default implementation of IndexManager. |
| IndexSpec | Represents information about an index. |
| IndexSpec.Builder | A builder of IndexSpec. |
| ListDocumentsRequest | A request to list documents in an index. |
| ListDocumentsRequest.Builder | The builder of ListDocumentsRequests. |
| ListDocumentsResponse | Represents a result of executing a ListDocumentsRequest. |
| ListIndexesRequest | A request to list indexes. |
| ListIndexesRequest.Builder | The builder of ListIndexesRequests. |
| ListIndexesResponse | Represents a result of executing a ListIndexesRequest. |
| OperationResult | The result of an operation involving the search service. |
| ParserFactory | A factory which produces QueryParsers for a given
token rewrite stream. |
| Schema | Contains information about the kinds of document Fields
which are supported by the Index. |
| SearchRequest | A request to search an index for documents which match a query, restricting the document fields returned to those given, and scoring and sorting the results, whilst supporting pagination. |
| SearchRequest.Builder | A builder which constructs SearchRequest objects. |
| SearchResponse | Represents a result of executing a SearchRequest. |
| SearchResult | Represents a single search result consisting of a scored document, a cursor to continue the search from, and any expression fields. |
| SortSpec | Sorting specification for a single dimension. |
| SortSpec.Builder | A builder that constructs SortSpecs. |
| Util | A utility class that does various checks on search and indexing parameters. |
| Enum Summary | |
|---|---|
| Consistency | Supported consistency modes by indexes. |
| Field.FieldType | The type of the field value. |
| SearchRequest.CursorType | Use a cursor returned from a previous set of search results as a starting point to retrieve the next set of results. |
| SortSpec.SortDirection | The direction search results are sorted by, either ascending or descending. |
| SortSpec.SortType | The type of sorting to order documents in a search. |
| StatusCode | Status code returned by various index operations. |
| Exception Summary | |
|---|---|
| AddDocumentsException | Thrown to indicate that a search service failure occurred while adding documents to the index. |
| InternalFailureException | Thrown to indicate that a search service failure occurred. |
| ListDocumentsException | Thrown to indicate that a search service failure occurred while performing a list documents request. |
| ListIndexesException | Thrown to indicate that a search service failure occurred while listing indexes. |
| RemoveDocumentsException | Thrown to indicate that a search service failure occurred while deleting documents. |
| SearchBaseException | Thrown to indicate that a search service failure occurred. |
| SearchException | Thrown to indicate that a search service failure occurred while performing a search request. |
| SearchQueryException | Thrown to indicate that a search query was invalid. |
The search package provides an API for indexing documents and retrieving
them using search queries. This is a low-level API that allows users
to directly create Documents which can be indexed and retrieved
with the help of Index. A Document is a collection of
Fields. Each field is a named and typed value. A document is uniquely
identified by its ID and may contain zero or more fields. A field with a
given name can have multiple occurrences. Once documents are added to the
Index, they can be retrieved via search queries. Typically, a program
creates an index. This operation does nothing if the index was already
created. Next, a number of documents are inserted into the index. Finally,
index is searched and matching documents, or their snippets are returned to
the user.
public List<Document> indexAndSearch(String query, Document... docs) {
IndexManager indexManager = IndexManagerFactory.newIndexManager();
Index index = indexManager.getIndex(
IndexSpec.newBuilder()
.setIndexName("indexName")
.setConsistency(Consistency.PER_DOCUMENT)
.build());
for (Document d : docs) {
OperationResult result = index.addDocument(d);
assert result.getCode().equals(StatusCode.OK);
}
SearchResponse response = index.search(query);
List<Document> matched = new ArrayList<Document>(
response.getDocumentsReturned());
if (StatusCode.OK.equals(response.getOperationResult().getCode())) {
for (SearchResult result : response) {
matched.add(result.getDocument());
}
}
return matched;
}
|
|||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES | ||||||||