rearrange types

This commit is contained in:
Florian Förster 2025-03-05 15:05:53 +01:00
parent e60cc99583
commit a1cb3ddbe9
2 changed files with 19 additions and 18 deletions

View File

@ -1,5 +1,5 @@
from typing import Final
from delta_barth.errors import ErrorHandler
from delta_barth.errors import StateHandler
ERROR_HANDLER: Final[ErrorHandler] = ErrorHandler()
STATE_HANDLER: Final[StateHandler] = StateHandler()

View File

@ -8,17 +8,31 @@ from typing import NotRequired, TypeAlias, TypedDict
import pandas as pd
from pydantic import BaseModel, SkipValidation
# ** API
ErrorDescription: TypeAlias = tuple[str, int, str]
# ** Pipeline state management
StatusDescription: TypeAlias = tuple[str, int, str]
class Status(BaseModel):
status_code: SkipValidation[int]
code: SkipValidation[int]
description: SkipValidation[str]
message: SkipValidation[str] = ""
api_server_error: SkipValidation[DelBarApiError | None] = None
@dataclass(slots=True)
class DataPipeStates:
SUCCESS: Status
TOO_FEW_POINTS: Status
BAD_QUALITY: Status
@dataclass(slots=True)
class PipeResult:
status: Status
data: pd.DataFrame | None
# ** API
class DelBarApiError(BaseModel):
status_code: int
message: str = ""
@ -30,13 +44,6 @@ class DelBarApiError(BaseModel):
traceId: str | None = None
@dataclass(slots=True)
class DataPipeStates:
SUCCESS: Status
TOO_FEW_POINTS: Status
BAD_QUALITY: Status
class HttpRequestTypes(enum.StrEnum):
GET = enum.auto()
POST = enum.auto()
@ -101,9 +108,3 @@ class CustomerDataSalesForecast:
order: list[int] = field(default_factory=list)
date: list[pd.Timestamp] = field(default_factory=list)
sales: list[float] = field(default_factory=list)
@dataclass(slots=True)
class PipeResult:
status: Status
data: pd.DataFrame | None