@whisklabs/grpc
Version:
gRPC generator and http library for typescript
114 lines • 6.55 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.fromHttpStatus = exports.StatusCode = void 0;
var StatusCode;
(function (StatusCode) {
// Not an error; returned on success.
StatusCode[StatusCode["OK"] = 0] = "OK";
// The operation was cancelled (typically by the caller).
StatusCode[StatusCode["CANCELLED"] = 1] = "CANCELLED";
// 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.
StatusCode[StatusCode["UNKNOWN"] = 2] = "UNKNOWN";
// 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).
StatusCode[StatusCode["INVALID_ARGUMENT"] = 3] = "INVALID_ARGUMENT";
// 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.
StatusCode[StatusCode["DEADLINE_EXCEEDED"] = 4] = "DEADLINE_EXCEEDED";
// Some requested entity (e.g., file or directory) was not found.
StatusCode[StatusCode["NOT_FOUND"] = 5] = "NOT_FOUND";
// Some entity that we attempted to create (e.g., file or directory) already
// exists.
StatusCode[StatusCode["ALREADY_EXISTS"] = 6] = "ALREADY_EXISTS";
// 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 can not be identified
// (use UNAUTHENTICATED instead for those errors).
StatusCode[StatusCode["PERMISSION_DENIED"] = 7] = "PERMISSION_DENIED";
// Some resource has been exhausted, perhaps a per-user quota, or perhaps the
// entire file system is out of space.
StatusCode[StatusCode["RESOURCE_EXHAUSTED"] = 8] = "RESOURCE_EXHAUSTED";
// 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.
// (d) Use FAILED_PRECONDITION if the client performs conditional
// REST Get/Update/Delete on a resource and the resource on the
// server does not match the condition. E.g., conflicting
// read-modify-write on the same resource.
StatusCode[StatusCode["FAILED_PRECONDITION"] = 9] = "FAILED_PRECONDITION";
// 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.
StatusCode[StatusCode["ABORTED"] = 10] = "ABORTED";
// 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.
StatusCode[StatusCode["OUT_OF_RANGE"] = 11] = "OUT_OF_RANGE";
// Operation is not implemented or not supported/enabled in this service.
StatusCode[StatusCode["UNIMPLEMENTED"] = 12] = "UNIMPLEMENTED";
// Internal errors. Means some invariants expected by underlying System has
// been broken. If you see one of these errors, Something is very broken.
StatusCode[StatusCode["INTERNAL"] = 13] = "INTERNAL";
// The service is currently unavailable. This is a most likely a transient
// condition and may be corrected by retrying with a backoff.
//
// See litmus test above for deciding between FAILED_PRECONDITION, ABORTED,
// and UNAVAILABLE.
StatusCode[StatusCode["UNAVAILABLE"] = 14] = "UNAVAILABLE";
// Unrecoverable data loss or corruption.
StatusCode[StatusCode["DATA_LOSS"] = 15] = "DATA_LOSS";
// The request does not have valid authentication credentials for the
// operation.
StatusCode[StatusCode["UNAUTHENTICATED"] = 16] = "UNAUTHENTICATED";
})(StatusCode || (exports.StatusCode = StatusCode = {}));
var codes = {
0: StatusCode.ABORTED,
200: StatusCode.OK,
400: StatusCode.INVALID_ARGUMENT,
401: StatusCode.UNAUTHENTICATED,
403: StatusCode.PERMISSION_DENIED,
404: StatusCode.NOT_FOUND,
409: StatusCode.ABORTED,
412: StatusCode.FAILED_PRECONDITION,
429: StatusCode.RESOURCE_EXHAUSTED,
499: StatusCode.CANCELLED,
500: StatusCode.UNKNOWN,
501: StatusCode.UNIMPLEMENTED,
503: StatusCode.UNAVAILABLE,
504: StatusCode.DEADLINE_EXCEEDED,
};
var fromHttpStatus = function (status) { var _a; return (_a = codes[status]) !== null && _a !== void 0 ? _a : StatusCode.UNKNOWN; };
exports.fromHttpStatus = fromHttpStatus;
//# sourceMappingURL=status.js.map