Source code for ReFreSH.MobileSuit.Core.SuitContext

from ..RequestStatus import RequestStatus
from ...DependencyInjection import ServiceProvider

from typing import Optional, Any


[docs] class SuitContext(object): """ Context through the lifetime of a SuitRequest(A Command) """ def __init__(self, sp: ServiceProvider): self.Properties: dict[str, object] = {} """Properties of current request.""" self.RequestStatus: RequestStatus = RequestStatus.NoRequest """The execution status of current request.""" self.Exception: Optional[Exception] = None """The exception caught in the execution.""" self.Request: list[str] = [] """A command from input stream""" self.ServiceProvider = sp """The ServiceProvider who provides services through whole request.""" self.Response: Optional[str] = None """Output to the output stream"""
[docs] def GetRequiredService(self, T) -> Any: return self.ServiceProvider.GetRequiredService(T)
[docs] def GetService(self, T) -> Optional[Any]: return self.ServiceProvider.GetService(T)
[docs] def Dispose(self): self.ServiceProvider.Dispose()