Enum Status.Code
- java.lang.Object
-
- java.lang.Enum<Status.Code>
-
- io.grpc.Status.Code
-
- All Implemented Interfaces:
Serializable
,Comparable<Status.Code>
- Enclosing class:
- Status
public static enum Status.Code extends Enum<Status.Code>
The set of canonical status codes. If new codes are added over time they must choose a numerical value that does not collide with any previously used value.
-
-
Enum Constant Summary
Enum Constants Enum Constant Description ABORTED
The operation was aborted, typically due to a concurrency issue like sequencer check failures, transaction aborts, etc.ALREADY_EXISTS
Some entity that we attempted to create (e.g., file or directory) already exists.CANCELLED
The operation was cancelled (typically by the caller).DATA_LOSS
Unrecoverable data loss or corruption.DEADLINE_EXCEEDED
Deadline expired before operation could complete.FAILED_PRECONDITION
Operation was rejected because the system is not in a state required for the operation's execution.INTERNAL
Internal errors.INVALID_ARGUMENT
Client specified an invalid argument.NOT_FOUND
Some requested entity (e.g., file or directory) was not found.OK
The operation completed successfully.OUT_OF_RANGE
Operation was attempted past the valid range.PERMISSION_DENIED
The caller does not have permission to execute the specified operation.RESOURCE_EXHAUSTED
Some resource has been exhausted, perhaps a per-user quota, or perhaps the entire file system is out of space.UNAUTHENTICATED
The request does not have valid authentication credentials for the operation.UNAVAILABLE
The service is currently unavailable.UNIMPLEMENTED
Operation is not implemented or not supported/enabled in this service.UNKNOWN
Unknown error.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Status
toStatus()
Returns aStatus
object corresponding to this status code.int
value()
The numerical value of the code.static Status.Code
valueOf(String name)
Returns the enum constant of this type with the specified name.static Status.Code[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
OK
public static final Status.Code OK
The operation completed successfully.
-
CANCELLED
public static final Status.Code CANCELLED
The operation was cancelled (typically by the caller).
-
UNKNOWN
public static final Status.Code UNKNOWN
Unknown error. An example of where this error may be returned is if a Status value received from another address space belongs to an error-space that is not known in this address space. Also errors raised by APIs that do not return enough error information may be converted to this error.
-
INVALID_ARGUMENT
public static final Status.Code INVALID_ARGUMENT
Client specified an invalid argument. Note that this differs from FAILED_PRECONDITION. INVALID_ARGUMENT indicates arguments that are problematic regardless of the state of the system (e.g., a malformed file name).
-
DEADLINE_EXCEEDED
public static final Status.Code DEADLINE_EXCEEDED
Deadline expired before operation could complete. For operations that change the state of the system, this error may be returned even if the operation has completed successfully. For example, a successful response from a server could have been delayed long enough for the deadline to expire.
-
NOT_FOUND
public static final Status.Code NOT_FOUND
Some requested entity (e.g., file or directory) was not found.
-
ALREADY_EXISTS
public static final Status.Code ALREADY_EXISTS
Some entity that we attempted to create (e.g., file or directory) already exists.
-
PERMISSION_DENIED
public static final Status.Code PERMISSION_DENIED
The caller does not have permission to execute the specified operation. PERMISSION_DENIED must not be used for rejections caused by exhausting some resource (use RESOURCE_EXHAUSTED instead for those errors). PERMISSION_DENIED must not be used if the caller cannot be identified (use UNAUTHENTICATED instead for those errors).
-
RESOURCE_EXHAUSTED
public static final Status.Code RESOURCE_EXHAUSTED
Some resource has been exhausted, perhaps a per-user quota, or perhaps the entire file system is out of space.
-
FAILED_PRECONDITION
public static final Status.Code FAILED_PRECONDITION
Operation was rejected because the system is not in a state required for the operation's execution. For example, directory to be deleted may be non-empty, an rmdir operation is applied to a non-directory, etc.A litmus test that may help a service implementor in deciding between FAILED_PRECONDITION, ABORTED, and UNAVAILABLE: (a) Use UNAVAILABLE if the client can retry just the failing call. (b) Use ABORTED if the client should retry at a higher-level (e.g., restarting a read-modify-write sequence). (c) Use FAILED_PRECONDITION if the client should not retry until the system state has been explicitly fixed. E.g., if an "rmdir" fails because the directory is non-empty, FAILED_PRECONDITION should be returned since the client should not retry unless they have first fixed up the directory by deleting files from it.
-
ABORTED
public static final Status.Code ABORTED
The operation was aborted, typically due to a concurrency issue like sequencer check failures, transaction aborts, etc.See litmus test above for deciding between FAILED_PRECONDITION, ABORTED, and UNAVAILABLE.
-
OUT_OF_RANGE
public static final Status.Code OUT_OF_RANGE
Operation was attempted past the valid range. E.g., seeking or reading past end of file.Unlike INVALID_ARGUMENT, this error indicates a problem that may be fixed if the system state changes. For example, a 32-bit file system will generate INVALID_ARGUMENT if asked to read at an offset that is not in the range [0,2^32-1], but it will generate OUT_OF_RANGE if asked to read from an offset past the current file size.
There is a fair bit of overlap between FAILED_PRECONDITION and OUT_OF_RANGE. We recommend using OUT_OF_RANGE (the more specific error) when it applies so that callers who are iterating through a space can easily look for an OUT_OF_RANGE error to detect when they are done.
-
UNIMPLEMENTED
public static final Status.Code UNIMPLEMENTED
Operation is not implemented or not supported/enabled in this service.
-
INTERNAL
public static final Status.Code INTERNAL
Internal errors. Means some invariants expected by underlying system has been broken. If you see one of these errors, something is very broken.
-
UNAVAILABLE
public static final Status.Code UNAVAILABLE
The service is currently unavailable. This is a most likely a transient condition and may be corrected by retrying with a backoff. Note that it is not always safe to retry non-idempotent operations.See litmus test above for deciding between FAILED_PRECONDITION, ABORTED, and UNAVAILABLE.
-
DATA_LOSS
public static final Status.Code DATA_LOSS
Unrecoverable data loss or corruption.
-
UNAUTHENTICATED
public static final Status.Code UNAUTHENTICATED
The request does not have valid authentication credentials for the operation.
-
-
Method Detail
-
values
public static Status.Code[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (Status.Code c : Status.Code.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static Status.Code valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is null
-
value
public int value()
The numerical value of the code.
-
-