def resolve_runs(self, graphene_info, **kwargs): from .pipelines.pipeline import GrapheneRun if kwargs.get("limit") and self._batch_loader: limit = kwargs["limit"] records = (self._batch_loader.get_run_records_for_sensor( self._instigator_state.name, limit) if self._instigator_state.instigator_type == InstigatorType.SENSOR else self._batch_loader.get_run_records_for_schedule( self._instigator_state.name, limit)) return [GrapheneRun(record) for record in records] if self._instigator_state.instigator_type == InstigatorType.SENSOR: filters = RunsFilter.for_sensor(self._instigator_state) else: filters = RunsFilter.for_schedule(self._instigator_state) return [ GrapheneRun(record) for record in graphene_info.context.instance.get_run_records( filters=filters, limit=kwargs.get("limit"), ) ]
def resolve_runsCount(self, graphene_info): if self._instigator_state.instigator_type == InstigatorType.SENSOR: filters = RunsFilter.for_sensor(self._instigator_state) else: filters = RunsFilter.for_schedule(self._instigator_state) return graphene_info.context.instance.get_runs_count(filters=filters)