Bases: Generic[T]
Base class for callback handlers in AuthX.
PARAMETER | DESCRIPTION |
Generic | TYPE: T |
RAISES | DESCRIPTION |
AttributeError | |
Base class for callback handlers in AuthX.
PARAMETER | DESCRIPTION |
model | TYPE: Optional[T] DEFAULT: None |
PARAMETER | DESCRIPTION |
model | TYPE: T DEFAULT: None |
Source code in authx/_internal/_callback.py
| def __init__(self, model: Optional[T] = None) -> None:
"""Base class for callback handlers in AuthX.
Args:
model (T): Model instance
"""
self._model: Optional[T] = model
self.callback_get_model_instance: Optional[ModelCallback[T]] = None
self.callback_is_token_in_blocklist: Optional[TokenCallback] = None
# Exceptions
self._callback_model_set_exception = AttributeError(
f"Model callback not set for {self._model.__class__.__name__} instance"
)
self._callback_token_set_exception = AttributeError(
f"Token callback not set for {self._model.__class__.__name__} instance"
)
|
callback_get_model_instance instance-attribute
callback_get_model_instance = None
callback_is_token_in_blocklist instance-attribute
callback_is_token_in_blocklist = None
is_model_callback_set property
Check if callback is set for model instance
is_token_callback_set property
Check if callback is set for token
set_callback_get_model_instance
set_callback_get_model_instance(callback)
Set callback for model instance
PARAMETER | DESCRIPTION |
callback | TYPE: ModelCallback[T] |
Source code in authx/_internal/_callback.py
| def set_callback_get_model_instance(self, callback: ModelCallback[T]) -> None:
"""Set callback for model instance"""
self.callback_get_model_instance = callback
|
set_callback_token_blocklist
set_callback_token_blocklist(callback)
Set callback for token
PARAMETER | DESCRIPTION |
callback | TYPE: TokenCallback |
Source code in authx/_internal/_callback.py
| def set_callback_token_blocklist(self, callback: TokenCallback) -> None:
"""Set callback for token"""
self.callback_is_token_in_blocklist = callback
|
set_subject_getter
set_subject_getter(callback)
Set the callback to run for subject retrieval and serialization
PARAMETER | DESCRIPTION |
callback | TYPE: ModelCallback[T] |
Source code in authx/_internal/_callback.py
| def set_subject_getter(self, callback: ModelCallback[T]) -> None:
"""Set the callback to run for subject retrieval and serialization"""
self.set_callback_get_model_instance(callback)
|
set_token_blocklist
set_token_blocklist(callback)
Set the callback to run for validation of revoked tokens
PARAMETER | DESCRIPTION |
callback | TYPE: TokenCallback |
Source code in authx/_internal/_callback.py
| def set_token_blocklist(self, callback: TokenCallback) -> None:
"""Set the callback to run for validation of revoked tokens"""
self.set_callback_token_blocklist(callback)
|
is_token_in_blocklist
is_token_in_blocklist(token, **kwargs)
Check if token is in blocklist
PARAMETER | DESCRIPTION |
token | TYPE: Optional[str] |
**kwargs | TYPE: ParamSpecKwargs DEFAULT: {} |
Source code in authx/_internal/_callback.py
| def is_token_in_blocklist(
self, token: Optional[str], **kwargs: ParamSpecKwargs
) -> bool:
"""Check if token is in blocklist"""
if self._check_token_callback_is_set(ignore_errors=True):
callback: Optional[TokenCallback] = self.callback_is_token_in_blocklist
if callback is not None and token is not None:
return callback(token, **kwargs) # type: ignore
return False
|