def iter_list_sessions(
self,
*,
config_overrides: Optional[RedshiftDataClientConfig] = None,
next_token: Optional["capo_redshift_data.types.string.String"] = None,
max_results: Optional[
"capo_redshift_data.types.list_statements_limit.ListStatementsLimit"
] = None,
session_id: Optional["capo_redshift_data.types.uuid.UUID"] = None,
status: Optional[
"capo_redshift_data.types.session_status_string.SessionStatusString"
] = None,
role_level: Optional[bool] = None,
cluster_identifier: Optional[
"capo_redshift_data.types.cluster_identifier_string.ClusterIdentifierString"
] = None,
workgroup_name: Optional[
"capo_redshift_data.types.workgroup_name_string.WorkgroupNameString"
] = None,
database: Optional["capo_redshift_data.types.string.String"] = None,
) -> "Iterator[capo_redshift_data.types.session_data.SessionData]":
_token = next_token
while True:
_response = self.list_sessions(
config_overrides=config_overrides,
next_token=_token,
max_results=max_results,
session_id=session_id,
status=status,
role_level=role_level,
cluster_identifier=cluster_identifier,
workgroup_name=workgroup_name,
database=database,
)
_page = _resolve_path(_response, ("sessions",))
for _item in _page or []:
yield _item
_token = _resolve_path(_response, ("next_token",))
if not _token:
break