Skip to content
Clone
538d47b
46 lines 1.8 KB Rust
use crate::AuthSvc;
use crate::internal::context::RequestMeta;
use tonic::{Request, Response, Status};
use crate::internal::session::SessionApi;
use crate::protos::auth::v1::session_service_server::SessionService;
pub struct SessionClient {
api: SessionApi,
}
impl SessionClient {
pub fn new(service: AuthSvc) -> Self {
Self {
api: SessionApi::new(service),
}
}
pub async fn list_user_sessions(
&mut self,
mut request: Request<crate::protos::auth::v1::ListUserSessionsRequest>,
) -> Result<Response<crate::protos::auth::v1::ListUserSessionsResponse>, Status> {
request.extensions_mut().insert(RequestMeta::internal());
self.api.list_user_sessions(request).await
}
pub async fn revoke_session(
&mut self,
mut request: Request<crate::protos::auth::v1::RevokeSessionRequest>,
) -> Result<Response<crate::protos::auth::v1::RevokeSessionResponse>, Status> {
request.extensions_mut().insert(RequestMeta::internal());
self.api.revoke_session(request).await
}
pub async fn revoke_user_sessions(
&mut self,
mut request: Request<crate::protos::auth::v1::RevokeUserSessionsRequest>,
) -> Result<Response<crate::protos::auth::v1::RevokeUserSessionsResponse>, Status> {
request.extensions_mut().insert(RequestMeta::internal());
self.api.revoke_user_sessions(request).await
}
pub async fn bump_security_version(
&mut self,
mut request: Request<crate::protos::auth::v1::BumpSecurityVersionRequest>,
) -> Result<Response<crate::protos::auth::v1::BumpSecurityVersionResponse>, Status> {
request.extensions_mut().insert(RequestMeta::internal());
self.api.bump_security_version(request).await
}
}