| // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| // ignore_for_file: constant_identifier_names |
| |
| import 'src/exception.dart'; |
| |
| /// Error codes defined in the [JSON-RPC 2.0 specification][spec]. |
| /// |
| /// These codes are generally used for protocol-level communication. Most of |
| /// them shouldn't be used by the application. Those that should have |
| /// convenience constructors in [RpcException]. |
| /// |
| /// [spec]: http://www.jsonrpc.org/specification#error_object |
| /// An error code indicating that invalid JSON was received by the server. |
| const PARSE_ERROR = -32700; |
| |
| /// An error code indicating that the request JSON was invalid according to the |
| /// JSON-RPC 2.0 spec. |
| const INVALID_REQUEST = -32600; |
| |
| /// An error code indicating that the requested method does not exist or is |
| /// unavailable. |
| const METHOD_NOT_FOUND = -32601; |
| |
| /// An error code indicating that the request parameters are invalid for the |
| /// requested method. |
| const INVALID_PARAMS = -32602; |
| |
| /// An internal JSON-RPC error. |
| const INTERNAL_ERROR = -32603; |
| |
| /// An unexpected error occurred on the server. |
| /// |
| /// The spec reserves the range from -32000 to -32099 for implementation-defined |
| /// server exceptions, but for now we only use one of those values. |
| const SERVER_ERROR = -32000; |
| |
| /// Returns a human-readable name for [errorCode] if it's one specified by the |
| /// JSON-RPC 2.0 spec. |
| /// |
| /// If [errorCode] isn't defined in the JSON-RPC 2.0 spec, returns `null`. |
| String? name(int errorCode) => switch (errorCode) { |
| PARSE_ERROR => 'parse error', |
| INVALID_REQUEST => 'invalid request', |
| METHOD_NOT_FOUND => 'method not found', |
| INVALID_PARAMS => 'invalid parameters', |
| INTERNAL_ERROR => 'internal error', |
| _ => null |
| }; |