Source code for kappa_sdk.enumerator.data_enumerator_settings

from typing import Optional, Dict, Union
from uuid import UUID
from datetime import datetime, timezone
from ..datetime_utils import datetime_to_utc
from .interpolation_method_enum import InterpolationMethodEnum
from .time_range_enum import TimeRangeEnum
from .extrapolation_method_enum import ExtrapolationMethodEnum


[docs] class DataEnumeratorSettings: """Python wrapper for the DataProductSettings. """ def __init__(self, time_range: TimeRangeEnum = TimeRangeEnum.total, exclusive_start: Optional[datetime] = datetime.min, inclusive_end: Optional[datetime] = datetime.max, extrapolation_method: ExtrapolationMethodEnum = ExtrapolationMethodEnum.use_slope, interpolation_method: InterpolationMethodEnum = InterpolationMethodEnum.absent_value, read_chunk_size: int = 10000, reference_vector_id: Optional[str] = None, reference_vector_count: Optional[int] = None, max_count: Union[Optional[Dict[str, int]], int] = None): self.time_range: TimeRangeEnum = time_range self.exclusive_start = datetime_to_utc(exclusive_start) if exclusive_start is not None else datetime.min.replace(tzinfo=timezone.utc) self.inclusive_end = datetime_to_utc(inclusive_end) if inclusive_end is not None else datetime.max.replace(tzinfo=timezone.utc) self.extrapolation_method: ExtrapolationMethodEnum = extrapolation_method self.interpolation_method: InterpolationMethodEnum = interpolation_method self.read_chunk_size: int = read_chunk_size self.reference_vector_id: Optional[Union[UUID, str]] = reference_vector_id self.reference_vector_count: Optional[int] = reference_vector_count self.max_count: Union[Optional[Dict[str, int]], int] = max_count