SearchResult
public final class SearchResult
This class represents one of the results obtained from an AppSearch query.
This allows clients to obtain:
- The document which matched, using
getGenericDocument - Information about which properties in the document matched, and "snippet" information containing textual summaries of the document's matches, using
getMatchInfos
"Snippet" refers to a substring of text from the content of document that is returned as a part of search result.
| See also | |
|---|---|
SearchResults |
Summary
Nested types |
|---|
public final class SearchResult.BuilderBuilder for |
@ExperimentalAppSearchApiThis class represents match objects for any snippets that might be present in |
public final class SearchResult.MatchInfoThis class represents match objects for any snippets that might be present in |
public final class SearchResult.MatchInfo.BuilderBuilder for |
public final class SearchResult.MatchRangeClass providing the position range of a text match information. |
@ExperimentalAppSearchApiThis class represents match objects for any text match snippets that might be present in |
Public methods |
|
|---|---|
@NonNull String |
Contains the database name that stored the |
@NonNull T |
<T> getDocument(@NonNull Class<T> documentClass)Contains the matching document, converted to the given document class. |
@NonNull T |
<T> getDocument(Contains the matching document, converted to the given document class. |
@NonNull GenericDocument |
Contains the matching |
@NonNull List<Double> |
Returns the informational ranking signals of the |
@NonNull List<SearchResult> |
Gets a list of |
@NonNull List<SearchResult.MatchInfo> |
Returns a list of |
@NonNull String |
Contains the package name of the app that stored the |
@NonNull Map<String, List<String>> |
Returns the map from schema type names to the list of their parent types. |
double |
Returns the ranking signal of the |
Public methods
getDatabaseName
public @NonNull String getDatabaseName()
Contains the database name that stored the GenericDocument.
getDocument
public @NonNull T <T> getDocument(@NonNull Class<T> documentClass)
Contains the matching document, converted to the given document class.
This is equivalent to calling getGenericDocument().toDocumentClass(T.class).
Calling this function repeatedly is inefficient. Prefer to retain the object returned by this function, rather than calling it multiple times.
| Parameters | |
|---|---|
@NonNull Class<T> documentClass |
the document class to be passed to |
| Returns | |
|---|---|
@NonNull T |
Document object which matched the query. |
| Throws | |
|---|---|
androidx.appsearch.exceptions.AppSearchException |
if no factory for this document class could be found on the classpath. |
| See also | |
|---|---|
toDocumentClass |
getDocument
public @NonNull T <T> getDocument(
@NonNull Class<T> documentClass,
@Nullable Map<String, List<String>> documentClassMap
)
Contains the matching document, converted to the given document class.
This is equivalent to calling getGenericDocument().toDocumentClass(T.class,
new DocumentClassMappingContext(documentClassMap, getParentTypeMap())).
Calling this function repeatedly is inefficient. Prefer to retain the object returned by this function, rather than calling it multiple times.
| Parameters | |
|---|---|
@NonNull Class<T> documentClass |
the document class to be passed to |
@Nullable Map<String, List<String>> documentClassMap |
A map from AppSearch's type name specified by |
| Returns | |
|---|---|
@NonNull T |
Document object which matched the query. |
| Throws | |
|---|---|
androidx.appsearch.exceptions.AppSearchException |
if no factory for this document class could be found on the classpath. |
| See also | |
|---|---|
toDocumentClass |
getGenericDocument
public @NonNull GenericDocument getGenericDocument()
Contains the matching GenericDocument.
| Returns | |
|---|---|
@NonNull GenericDocument |
Document object which matched the query. |
getInformationalRankingSignals
public @NonNull List<Double> getInformationalRankingSignals()
Returns the informational ranking signals of the GenericDocument, according to the expressions added in addInformationalRankingExpressions.
getJoinedResults
public @NonNull List<SearchResult> getJoinedResults()
Gets a list of SearchResult joined from the join operation.
These joined documents match the outer document as specified in the JoinSpec with parentPropertyExpression and childPropertyExpression. They are ordered according to the getNestedSearchSpec, and as many SearchResults as specified by getMaxJoinedResultCount will be returned. If no JoinSpec was specified, this returns an empty list.
This method is inefficient to call repeatedly, as new SearchResult objects are created each time.
| Returns | |
|---|---|
@NonNull List<SearchResult> |
a List of SearchResults containing joined documents. |
getMatchInfos
public @NonNull List<SearchResult.MatchInfo> getMatchInfos()
Returns a list of MatchInfos providing information about how the document in getGenericDocument matched the query.
| Returns | |
|---|---|
@NonNull List<SearchResult.MatchInfo> |
List of matches based on |
getPackageName
public @NonNull String getPackageName()
Contains the package name of the app that stored the GenericDocument.
getParentTypeMap
@ExperimentalAppSearchApi
public @NonNull Map<String, List<String>> getParentTypeMap()
Returns the map from schema type names to the list of their parent types.
The map includes entries for the GenericDocument's own type and all of the nested documents' types. Child types are guaranteed to appear before parent types in each list.
Parent types include transitive parents.
Calling this function repeatedly is inefficient. Prefer to retain the Map returned by this function, rather than calling it multiple times.
getRankingSignal
public double getRankingSignal()
Returns the ranking signal of the GenericDocument, according to the ranking strategy set in setRankingStrategy. The meaning of the ranking signal and its value is determined by the selected ranking strategy:
RANKING_STRATEGY_NONE- this value will be 0RANKING_STRATEGY_DOCUMENT_SCORE- the value returned by callinggetScoreon the document returned bygetGenericDocumentRANKING_STRATEGY_CREATION_TIMESTAMP- the value returned by callinggetCreationTimestampMillison the document returned bygetGenericDocumentRANKING_STRATEGY_RELEVANCE_SCORE- an arbitrary double value where a higher value means more relevantRANKING_STRATEGY_USAGE_COUNT- the number of times usage has been reported for the document returned bygetGenericDocumentRANKING_STRATEGY_USAGE_LAST_USED_TIMESTAMP- the timestamp of the most recent usage that has been reported for the document returned bygetGenericDocument
| Returns | |
|---|---|
double |
Ranking signal of the document |