AppSearchResult


public final class AppSearchResult
extends Object

java.lang.Object
   ↳ android.app.appsearch.AppSearchResult<ValueType>


Information about the success or failure of an AppSearch call.

Summary

Constants

int RESULT_DENIED

The requested operation is denied for the caller.

int RESULT_INTERNAL_ERROR

An internal error occurred within AppSearch, which the caller cannot address.

int RESULT_INVALID_ARGUMENT

The caller supplied invalid arguments to the call.

int RESULT_INVALID_SCHEMA

The caller supplied a schema which is invalid or incompatible with the previous schema.

int RESULT_IO_ERROR

An issue occurred reading or writing to storage.

int RESULT_NOT_FOUND

An entity the caller requested to interact with does not exist in the system.

int RESULT_OK

The call was successful.

int RESULT_OUT_OF_SPACE

Storage is out of space, and no more space could be reclaimed.

int RESULT_RATE_LIMITED

The caller has hit AppSearch's rate limit and the requested operation has been rejected.

int RESULT_SECURITY_ERROR

The caller requested an operation it does not have privileges for.

int RESULT_TIMED_OUT

The operation was timed out.

int RESULT_UNKNOWN_ERROR

An unknown error occurred while processing the call.

Public methods

boolean equals(Object other)

Indicates whether some other object is "equal to" this one.

String getErrorMessage()

Returns the error message associated with this result.

int getResultCode()

Returns one of the RESULT constants defined in AppSearchResult.

ValueType getResultValue()

Returns the result value associated with this result, if it was successful.

int hashCode()

Returns a hash code value for the object.

boolean isSuccess()

Returns true if getResultCode() equals AppSearchResult.RESULT_OK.

static <ValueType> AppSearchResult<ValueType> newFailedResult(int resultCode, String errorMessage)

Creates a new failed AppSearchResult.

static <ValueType> AppSearchResult<ValueType> newSuccessfulResult(ValueType value)

Creates a new successful AppSearchResult.

String toString()

Returns a string representation of the object.

Inherited methods

Constants

RESULT_DENIED

public static final int RESULT_DENIED

The requested operation is denied for the caller. This error is logged and returned for denylist rejections.

Constant Value: 9 (0x00000009)

RESULT_INTERNAL_ERROR

Added in API level 31
public static final int RESULT_INTERNAL_ERROR

An internal error occurred within AppSearch, which the caller cannot address.

This error may be considered similar to IllegalStateException

Constant Value: 2 (0x00000002)

RESULT_INVALID_ARGUMENT

Added in API level 31
public static final int RESULT_INVALID_ARGUMENT

The caller supplied invalid arguments to the call.

This error may be considered similar to IllegalArgumentException.

Constant Value: 3 (0x00000003)

RESULT_INVALID_SCHEMA

Added in API level 31
public static final int RESULT_INVALID_SCHEMA

The caller supplied a schema which is invalid or incompatible with the previous schema.

Constant Value: 7 (0x00000007)

RESULT_IO_ERROR

Added in API level 31
public static final int RESULT_IO_ERROR

An issue occurred reading or writing to storage. The call might succeed if repeated.

This error may be considered similar to IOException.

Constant Value: 4 (0x00000004)

RESULT_NOT_FOUND

Added in API level 31
public static final int RESULT_NOT_FOUND

An entity the caller requested to interact with does not exist in the system.

Constant Value: 6 (0x00000006)

RESULT_OK

Added in API level 31
public static final int RESULT_OK

The call was successful.

Constant Value: 0 (0x00000000)

RESULT_OUT_OF_SPACE

Added in API level 31
public static final int RESULT_OUT_OF_SPACE

Storage is out of space, and no more space could be reclaimed.

Constant Value: 5 (0x00000005)

RESULT_RATE_LIMITED

public static final int RESULT_RATE_LIMITED

The caller has hit AppSearch's rate limit and the requested operation has been rejected. The caller is recommended to reschedule tasks with exponential backoff.

Constant Value: 10 (0x0000000a)

RESULT_SECURITY_ERROR

Added in API level 31
public static final int RESULT_SECURITY_ERROR

The caller requested an operation it does not have privileges for.

Constant Value: 8 (0x00000008)

RESULT_TIMED_OUT

public static final int RESULT_TIMED_OUT

The operation was timed out.

Constant Value: 11 (0x0000000b)

RESULT_UNKNOWN_ERROR

Added in API level 31
public static final int RESULT_UNKNOWN_ERROR

An unknown error occurred while processing the call.

Constant Value: 1 (0x00000001)

Public methods

equals

Added in API level 31
public boolean equals (Object other)

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.

Parameters
other Object: This value may be null.

Returns
boolean true if this object is the same as the obj argument; false otherwise.

getErrorMessage

Added in API level 31
public String getErrorMessage ()

Returns the error message associated with this result.

If isSuccess() is true, the error message is always null. The error message may be null even if isSuccess() is false. See the documentation of the particular AppSearchSession call producing this AppSearchResult for what is returned by getErrorMessage().

Returns
String

getResultCode

Added in API level 31
public int getResultCode ()

Returns one of the RESULT constants defined in AppSearchResult.

Returns
int Value is RESULT_OK, RESULT_UNKNOWN_ERROR, RESULT_INTERNAL_ERROR, RESULT_INVALID_ARGUMENT, RESULT_IO_ERROR, RESULT_OUT_OF_SPACE, RESULT_NOT_FOUND, RESULT_INVALID_SCHEMA, RESULT_SECURITY_ERROR, RESULT_DENIED, RESULT_RATE_LIMITED, RESULT_TIMED_OUT, or android.app.appsearch.AppSearchResult.RESULT_ALREADY_EXISTS

getResultValue

Added in API level 31
public ValueType getResultValue ()

Returns the result value associated with this result, if it was successful.

See the documentation of the particular AppSearchSession call producing this AppSearchResult for what is placed in the result value by that call.

Returns
ValueType This value may be null.

Throws
IllegalStateException if this AppSearchResult is not successful.

hashCode

Added in API level 31
public int hashCode ()

Returns a hash code value for the object. This method is supported for the benefit of hash tables such as those provided by HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.

Returns
int a hash code value for this object.

isSuccess

Added in API level 31
public boolean isSuccess ()

Returns true if getResultCode() equals AppSearchResult.RESULT_OK.

Returns
boolean

newFailedResult

Added in API level 31
public static AppSearchResult<ValueType> newFailedResult (int resultCode, 
                String errorMessage)

Creates a new failed AppSearchResult.

Parameters
resultCode int: One of the constants documented in AppSearchResult.getResultCode. Value is RESULT_OK, RESULT_UNKNOWN_ERROR, RESULT_INTERNAL_ERROR, RESULT_INVALID_ARGUMENT, RESULT_IO_ERROR, RESULT_OUT_OF_SPACE, RESULT_NOT_FOUND, RESULT_INVALID_SCHEMA, RESULT_SECURITY_ERROR, RESULT_DENIED, RESULT_RATE_LIMITED, RESULT_TIMED_OUT, or android.app.appsearch.AppSearchResult.RESULT_ALREADY_EXISTS

errorMessage String: An optional string describing the reason or nature of the failure. This value may be null.

Returns
AppSearchResult<ValueType> This value cannot be null.

newSuccessfulResult

Added in API level 31
public static AppSearchResult<ValueType> newSuccessfulResult (ValueType value)

Creates a new successful AppSearchResult.

Parameters
value ValueType: An optional value to associate with the successful result of the operation being performed. This value may be null.

Returns
AppSearchResult<ValueType> This value cannot be null.

toString

Added in API level 31
public String toString ()

Returns a string representation of the object.

Returns
String This value cannot be null.