33 lines
958 B
Python
33 lines
958 B
Python
# Copyright (c) 2025 Patrick Motsch
|
|
# All rights reserved.
|
|
"""
|
|
Service Center Context.
|
|
Minimal context passed to services: user, mandate, feature instance, workflow.
|
|
"""
|
|
|
|
from dataclasses import dataclass
|
|
from typing import Any, Optional
|
|
|
|
from modules.datamodels.datamodelUam import User
|
|
|
|
|
|
@dataclass
|
|
class ServiceCenterContext:
|
|
"""Context for service resolution: user, mandate, feature instance, optional workflow."""
|
|
|
|
user: User
|
|
mandate_id: Optional[str] = None
|
|
feature_instance_id: Optional[str] = None
|
|
workflow_id: Optional[str] = None
|
|
workflow: Any = None
|
|
requireNeutralization: Optional[bool] = None
|
|
|
|
@property
|
|
def mandateId(self) -> Optional[str]:
|
|
"""Alias for mandate_id (backward compatibility)."""
|
|
return self.mandate_id
|
|
|
|
@property
|
|
def featureInstanceId(self) -> Optional[str]:
|
|
"""Alias for feature_instance_id (backward compatibility)."""
|
|
return self.feature_instance_id
|