2024-12-15 14:40:03 +01:00
|
|
|
"""Load forecast module for load predictions."""
|
|
|
|
|
2025-01-12 05:19:37 +01:00
|
|
|
from typing import Optional, Union
|
2024-12-15 14:40:03 +01:00
|
|
|
|
2024-12-16 20:26:08 +01:00
|
|
|
from pydantic import Field
|
2024-12-15 14:40:03 +01:00
|
|
|
|
|
|
|
from akkudoktoreos.config.configabc import SettingsBaseModel
|
2025-01-05 14:41:07 +01:00
|
|
|
from akkudoktoreos.core.logging import get_logger
|
2025-01-12 05:19:37 +01:00
|
|
|
from akkudoktoreos.prediction.loadakkudoktor import LoadAkkudoktorCommonSettings
|
|
|
|
from akkudoktoreos.prediction.loadimport import LoadImportCommonSettings
|
2024-12-15 14:40:03 +01:00
|
|
|
|
|
|
|
logger = get_logger(__name__)
|
|
|
|
|
|
|
|
|
|
|
|
class LoadCommonSettings(SettingsBaseModel):
|
2025-01-05 14:41:07 +01:00
|
|
|
"""Common settings for loaod forecast providers."""
|
|
|
|
|
2024-12-16 20:26:08 +01:00
|
|
|
load_provider: Optional[str] = Field(
|
2024-12-15 14:40:03 +01:00
|
|
|
default=None, description="Load provider id of provider to be used."
|
|
|
|
)
|
2025-01-12 05:19:37 +01:00
|
|
|
|
|
|
|
provider_settings: Optional[Union[LoadAkkudoktorCommonSettings, LoadImportCommonSettings]] = (
|
|
|
|
None
|
|
|
|
)
|