HEX
Server: nginx/1.24.0
System: Linux webserver 6.8.0-85-generic #85-Ubuntu SMP PREEMPT_DYNAMIC Thu Sep 18 15:26:59 UTC 2025 x86_64
User: wpuser (1002)
PHP: 8.3.6
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/botocore/docs/__pycache__/waiter.cpython-312.pyc
�

P��e���r�ddlZddlmZddlmZddlmZddlmZddl	m
Z
ddlmZGd�d	�Z
	dd
�Zy)�N)�
xform_name)�OrderedDict)�DocumentStructure)�document_model_driven_method)�DocumentedShape)�get_service_module_namec�$�eZdZd�Zd�Zd�Zd�Zy)�WaiterDocumenterc���||_|jjj|_|jjj
j|_||_||_	d|_
y)NzRhttps://boto3.amazonaws.com/v1/documentation/api/latest/guide/clients.html#waiters)�_client�	__class__�__name__�_client_class_name�meta�
service_model�service_name�
_service_name�_service_waiter_model�_root_docs_path�_USER_GUIDE_LINK)�self�client�service_waiter_model�root_docs_paths    �6/usr/lib/python3/dist-packages/botocore/docs/waiter.py�__init__zWaiterDocumenter.__init__s]�����"&�,�,�"8�"8�"A�"A���!�\�\�.�.�<�<�I�I���%9��"�-���
E�	
��c�<�|jjd�|j|�|jj�|j	d�|jj�|jjD]�}|jj|j�d|���t|d��}|j||�tjj|j|jd�}|j!||���y)zgDocuments the various waiters for a service.

        :param section: The section to write to.
        �WaiterszThe available waiters are:z/waiter/�html)�target�waiterN)�style�h2�
_add_overview�new_line�writeln�toctreer�waiter_names�tocitemrr�_add_single_waiter�os�path�joinr�
write_to_file)r�section�waiter_name�waiter_doc_structure�waiter_dir_paths     r�document_waitersz!WaiterDocumenter.document_waiters#s���
	�
�
����#����7�#��
�
��� ����4�5��
�
�����5�5�B�B�	M�K��M�M�!�!�T�%7�%7�$8���
�"N�O�#4��F�$� �
�#�#�$8�+�F�!�g�g�l�l��$�$�d�&8�&8�(��O�
!�.�.���L�	Mrc��|jd�}|jj|jd|j���|jd|���|j
|�|j|�}|jj|j�d|����|jj�|jj�|jdt|�z�|jj�|jj�t|||jjj|jjj |j"��y)N�
breadcrumbz../../z / Waiter / z.Waiter.)�
class_namez waiter = client.get_waiter('%s'))r0r1�
event_emitterrr)�add_new_sectionr#�refrr�write�add_title_section�start_sphinx_py_class�start_codeblockr&r�
end_codeblock�document_wait_methodrr�eventsrr)rr0r1�breadcrumb_section�waiter_sections     rr+z#WaiterDocumenter._add_single_waiter;sI��$�4�4�\�B��� � �$�$��#�#�v�d�.@�.@�-A�%B�	
�	� � �<��}�!=�>��!�!�+�.� �0�0��=�����2�2��1�1�2�(�;�-�H�	3�	
�
	���,�,�.����%�%�'����0�:�k�3J�J�	
�	���*�*�,�	���%�%�'��"�#��,�,�+�+�2�2��,�,�+�+�9�9�!%�!;�!;�	
rc��|jj�|jd�|jjd|j��|jd�|jj�y)Nz�Waiters are available on a client instance via the ``get_waiter`` method. For more detailed instructions and examples on the usage or waiters, see the waiters z
user guide)�title�link�.)r#r&r;�
external_linkr)rr0s  rr%zWaiterDocumenter._add_overviewYsf���
�
��� ��
�
�
�	
�	�
�
�#�#���&�&�	$�	
�	�
�
�c���
�
��� rN)r�
__module__�__qualname__rr4r+r%�rrr
r
s��	
�M�0
�<
!rr
c���|j|�}|j|j�}t�}t	dddj|j���|d<t	dddj|j���|d<t	ddd	|�
�g}	djt|�t|j�|j|j�}
t|d|||
d
|	d|��	y)a�Documents a the wait method of a waiter

    :param section: The section to write to

    :param waiter_name: The name of the waiter

    :param event_emitter: The event emitter to use to emit events

    :param service_model: The service model

    :param service_waiter_model: The waiter model associated to the service

    :param include_signature: Whether or not to include the signature.
        It is useful for generating docstrings.
    �Delay�integerzJ<p>The amount of time in seconds to wait between attempts. Default: {}</p>)�name�	type_name�
documentation�MaxAttemptsz=<p>The maximum number of attempts to be made. Default: {}</p>�WaiterConfig�	structurezI<p>A dictionary that provides parameters to control waiting behavior.</p>)rOrPrQ�membersz�Polls :py:meth:`{}.Client.{}` every {} seconds until a successful state is reached. An error is returned after {} failed checks.�waitzwaiter.waitF)r8�method_description�example_prefix�
include_input�document_output�include_signatureN)�
get_waiter�operation_model�	operationrr�format�delay�max_attemptsrrr)r0r1r8rrr[�waiter_modelr]�waiter_config_members�botocore_waiter_params�wait_descriptions           rr@r@is
��.(�2�2�;�?�L�#�3�3�L�4J�4J�K�O�'�M��%4�
��
(�(.��|�/A�/A�(B�&��'�"�,;�
��
�$�f�\�%>�%>�?�,��-�(�	��!�(�*�	
�
��	+�+1�6�#�M�2��|�-�-�.�����%�%�	,
��!����#�+�$�,��+�
r)T)r,�botocorer�botocore.compatr�botocore.docs.bcdoc.restdocr�botocore.docs.methodr�botocore.docs.utilsr�botocore.utilsrr
r@rKrr�<module>rls4��
��'�9�=�/�2�O!�O!�p�
Or