MCPcopy Create free account
hub / github.com/Botloader/botloader / check_broken_session

Function check_broken_session

components/webapi/src/middlewares/mw_session.rs:114–134  ·  view source on GitHub ↗
(
    state: &Arc<crate::app_state::InnerAppState>,
    logged_in_session: &LoggedInSession,
)

Source from the content-addressed store, hash-verified

112}
113
114async fn check_broken_session(
115 state: &Arc<crate::app_state::InnerAppState>,
116 logged_in_session: &LoggedInSession,
117) -> bool {
118 if !logged_in_session.api_client.is_broken() {
119 return false;
120 }
121
122 // the refresh token is invalid, the user needs to re-authorize;
123 // drop the client and log them out everywhere
124 let user_id = logged_in_session.session.user.id;
125 state.oauth_api_client_cache.del(user_id);
126 state
127 .db
128 .del_all_sessions(user_id)
129 .await
130 .map_err(|err| error!(%err, "failed clearing sessions from broken token"))
131 .ok();
132
133 true
134}
135
136#[derive(Clone)]
137pub struct RequireAuthLayer {}

Callers 1

session_mwFunction · 0.85

Calls 3

is_brokenMethod · 0.80
del_all_sessionsMethod · 0.80
delMethod · 0.45

Tested by

no test coverage detected