48 lines
1.4 KiB
Python
48 lines
1.4 KiB
Python
"""Base context for middleware."""
|
|
|
|
from typing import Optional, Dict, Any, Union, TYPE_CHECKING
|
|
|
|
if TYPE_CHECKING:
|
|
from ApiServices.Token.token_handler import OccupantTokenObject, EmployeeTokenObject
|
|
|
|
|
|
class BaseContext:
|
|
"""Base context class for middleware."""
|
|
|
|
def __init__(self) -> None:
|
|
self._token_context: Optional[
|
|
Union["OccupantTokenObject", "EmployeeTokenObject"]
|
|
] = None
|
|
self._function_code: Optional[str] = None
|
|
|
|
@property
|
|
def token_context(
|
|
self,
|
|
) -> Optional[Union["OccupantTokenObject", "EmployeeTokenObject"]]:
|
|
"""Get token context if available."""
|
|
return self._token_context
|
|
|
|
@token_context.setter
|
|
def token_context(
|
|
self, value: Union["OccupantTokenObject", "EmployeeTokenObject"]
|
|
) -> None:
|
|
"""Set token context."""
|
|
self._token_context = value
|
|
|
|
@property
|
|
def function_code(self) -> Optional[str]:
|
|
"""Get function code if available."""
|
|
return self._function_code
|
|
|
|
@function_code.setter
|
|
def function_code(self, value: str) -> None:
|
|
"""Set function code."""
|
|
self._function_code = value
|
|
|
|
def to_dict(self) -> Dict[str, Any]:
|
|
"""Convert context to dictionary."""
|
|
return {
|
|
"token_context": self._token_context,
|
|
"function_code": self._function_code,
|
|
}
|