actix_identity/
identity_ext.rs1use actix_web::{dev::ServiceRequest, guard::GuardContext, HttpMessage, HttpRequest};
2
3use crate::{error::GetIdentityError, Identity};
4
5pub trait IdentityExt {
7 fn get_identity(&self) -> Result<Identity, GetIdentityError>;
9}
10
11impl IdentityExt for HttpRequest {
12 fn get_identity(&self) -> Result<Identity, GetIdentityError> {
13 Identity::extract(&self.extensions())
14 }
15}
16
17impl IdentityExt for ServiceRequest {
18 fn get_identity(&self) -> Result<Identity, GetIdentityError> {
19 Identity::extract(&self.extensions())
20 }
21}
22
23impl IdentityExt for GuardContext<'_> {
24 fn get_identity(&self) -> Result<Identity, GetIdentityError> {
25 Identity::extract(&self.req_data())
26 }
27}