eba4fd1
use tonic::Status;
use admin::errors::AdminError;
pub fn status(error: AdminError) -> Status {
match error {
AdminError::BadRequest(message) => Status::invalid_argument(message),
AdminError::InvalidCredentials => Status::unauthenticated("invalid credentials"),
AdminError::Unauthorized => Status::unauthenticated("authentication required"),
AdminError::Forbidden => Status::permission_denied("operation not allowed"),
AdminError::NotFound => Status::not_found("resource not found"),
AdminError::Conflict(message) => Status::already_exists(message),
AdminError::RateLimited(message) => Status::resource_exhausted(message),
AdminError::Internal(message) => Status::internal(message),
}
}