oauth2_passkey/session/
errors.rs1use thiserror::Error;
2
3use crate::storage::{CacheErrorConversion, StorageError};
4use crate::userdb::UserError;
5use crate::utils::UtilError;
6
7#[derive(Debug, Error, Clone)]
12pub enum SessionError {
13 #[error("Session error")]
15 SessionError,
16
17 #[error("Storage error: {0}")]
19 Storage(String),
20
21 #[error("Crypto error: {0}")]
23 Crypto(String),
24
25 #[error("Cookie error: {0}")]
27 Cookie(String),
28
29 #[error("Page session token error: {0}")]
31 PageSessionToken(String),
32
33 #[error("CSRF token error: {0}")]
35 CsrfToken(String),
36
37 #[error("Session expired error")]
39 SessionExpiredError,
40
41 #[error("Validation error: {0}")]
43 Validation(String),
44
45 #[error("Utils error: {0}")]
47 Utils(#[from] UtilError),
48
49 #[error("Header error: {0}")]
51 HeaderError(String),
52
53 #[error("User error: {0}")]
55 User(#[from] UserError),
56}
57
58impl CacheErrorConversion<SessionError> for SessionError {
59 fn convert_storage_error(error: StorageError) -> SessionError {
60 SessionError::Storage(error.to_string())
61 }
62}