1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- use crate::protobuf::ErrorCode as ProtoBufErrorCode;
- use derive_more::Display;
- use flowy_derive::ProtoBuf_Enum;
- use protobuf::ProtobufEnum;
- use std::convert::{TryFrom, TryInto};
- #[derive(Debug, Clone, ProtoBuf_Enum, Display, PartialEq, Eq)]
- pub enum ErrorCode {
- #[display(fmt = "Workspace name can not be empty or whitespace")]
- WorkspaceNameInvalid = 0,
- #[display(fmt = "Workspace id can not be empty or whitespace")]
- WorkspaceIdInvalid = 1,
- #[display(fmt = "Color style of the App is invalid")]
- AppColorStyleInvalid = 2,
- #[display(fmt = "Workspace desc is invalid")]
- WorkspaceDescTooLong = 3,
- #[display(fmt = "Workspace description too long")]
- WorkspaceNameTooLong = 4,
- #[display(fmt = "App id can not be empty or whitespace")]
- AppIdInvalid = 10,
- #[display(fmt = "App name can not be empty or whitespace")]
- AppNameInvalid = 11,
- #[display(fmt = "View name can not be empty or whitespace")]
- ViewNameInvalid = 20,
- #[display(fmt = "Thumbnail of the view is invalid")]
- ViewThumbnailInvalid = 21,
- #[display(fmt = "View id can not be empty or whitespace")]
- ViewIdInvalid = 22,
- #[display(fmt = "View desc too long")]
- ViewDescTooLong = 23,
- #[display(fmt = "View data is invalid")]
- ViewDataInvalid = 24,
- #[display(fmt = "View name too long")]
- ViewNameTooLong = 25,
- #[display(fmt = "User unauthorized")]
- UserUnauthorized = 100,
- #[display(fmt = "Workspace websocket error")]
- WsConnectError = 200,
- #[display(fmt = "Server error")]
- InternalError = 1000,
- #[display(fmt = "Record not found")]
- RecordNotFound = 1001,
- }
- impl std::default::Default for ErrorCode {
- fn default() -> Self { ErrorCode::InternalError }
- }
- impl ErrorCode {
- pub fn value(&self) -> i32 {
- let code: ProtoBufErrorCode = self.clone().try_into().unwrap();
- code.value()
- }
- pub fn from_i32(value: i32) -> Self {
- match ProtoBufErrorCode::from_i32(value) {
- None => ErrorCode::InternalError,
- Some(code) => ErrorCode::try_from(&code).unwrap(),
- }
- }
- }
|