use {
crate::models,
serde::{Deserialize, Serialize},
};
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum ErrorCodes {
#[serde(rename = "INVALID_TOKEN")]
InvalidToken,
#[serde(rename = "MISSING_PARAMETER")]
MissingParameter,
#[serde(rename = "INVALID_PARAMETER")]
InvalidParameter,
#[serde(rename = "RESOURCE_NOT_FOUND")]
ResourceNotFound,
#[serde(rename = "INVALID_TIME_RANGE")]
InvalidTimeRange,
#[serde(rename = "UNAUTHORIZED")]
Unauthorized,
#[serde(rename = "ACCOUNT_NOT_ACTIVE")]
AccountNotActive,
#[serde(rename = "UNMANAGED_WALLET_NOT_APPROVED")]
UnmanagedWalletNotApproved,
}
impl std::fmt::Display for ErrorCodes {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::InvalidToken => write!(f, "INVALID_TOKEN"),
Self::MissingParameter => write!(f, "MISSING_PARAMETER"),
Self::InvalidParameter => write!(f, "INVALID_PARAMETER"),
Self::ResourceNotFound => write!(f, "RESOURCE_NOT_FOUND"),
Self::InvalidTimeRange => write!(f, "INVALID_TIME_RANGE"),
Self::Unauthorized => write!(f, "UNAUTHORIZED"),
Self::AccountNotActive => write!(f, "ACCOUNT_NOT_ACTIVE"),
Self::UnmanagedWalletNotApproved => write!(f, "UNMANAGED_WALLET_NOT_APPROVED"),
}
}
}
impl Default for ErrorCodes {
fn default() -> ErrorCodes {
Self::InvalidToken
}
}