from abc import ABC, abstractmethod from typing import Set from sziszapangma.integration.repository.experiment_repository import ExperimentRepository class RecordIdIterator(ABC): @abstractmethod def get_all_records(self) -> Set[str]: pass class RepositoryRecordIdIterator(RecordIdIterator): _experiment_repository: ExperimentRepository def __init__(self, experiment_repository: ExperimentRepository): self._experiment_repository = experiment_repository def get_all_records(self) -> Set[str]: return self._experiment_repository.get_all_record_ids()