Files
ARR-2.0-0918/integrations/ohip/collect_arr_named_day.py
T

23 lines
809 B
Python

"""v3 day capture: reservation search/detail/rate plus bounded primary summaries."""
from dataclasses import dataclass, field
from . import collect_arr_day as day, collect_arr_source as source, profile_summary
VERSION = "arr-api-capture/v3"
OPERATIONS = [*day.OPERATIONS, profile_summary.OPERATION]
@dataclass(frozen=True)
class Options(day.Options):
max_profiles: int = field(kw_only=True)
def validate(self):
super().validate()
source.require(type(self.max_profiles) is int and 1 <= self.max_profiles <= self.max_records,
"invalid_profile_limit")
def collect(options, archive, reader, rates, profiles):
source.require(type(options) is Options, "invalid_named_day_options")
return day._collect(options, archive, reader, rates, profiles=profiles)