163952e
use crate::AuthSvc;
use crate::internal::context::RequestMeta;
use tonic::{Request, Response, Status};
use uuid::Uuid;
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 {
request_id: Uuid::now_v7().to_string(),
caller_service: "kenapi".to_owned(),
});
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 {
request_id: Uuid::now_v7().to_string(),
caller_service: "kenapi".to_owned(),
});
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 {
request_id: Uuid::now_v7().to_string(),
caller_service: "kenapi".to_owned(),
});
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 {
request_id: Uuid::now_v7().to_string(),
caller_service: "kenapi".to_owned(),
});
self.api.bump_security_version(request).await
}
}