# # Copyright (c) 2023 Airbyte, Inc., all rights reserved. # from airbyte_cdk.models import SyncMode from airbyte_cdk.sources.streams import Stream def getter(D: dict, key_or_keys): if not isinstance(key_or_keys, list): key_or_keys = [key_or_keys] for k in key_or_keys: D = D[k] return D def read_full_refresh(stream_instance: Stream): slices = stream_instance.stream_slices(sync_mode=SyncMode.full_refresh) for _slice in slices: records = stream_instance.read_records(stream_slice=_slice, sync_mode=SyncMode.full_refresh) for record in records: yield record