HEX
Server: LiteSpeed
System: Linux php-prod-1.spaceapp.ru 5.15.0-157-generic #167-Ubuntu SMP Wed Sep 17 21:35:53 UTC 2025 x86_64
User: sport3497 (1034)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //usr/local/CyberCP/lib64/python3.10/site-packages/botocore/docs/__pycache__/waiter.cpython-310.pyc
o

�h��@snddlZddlmZddlmZddlmZddlmZddl	m
Z
ddlmZGdd	�d	�Z
	
d
dd�ZdS)�N)�
xform_name)�OrderedDict)�DocumentStructure)�document_model_driven_method)�DocumentedShape)�get_service_module_namec@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�WaiterDocumentercCs6||_|jjj|_|jjjj|_||_||_	d|_
dS)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_path�r�G/usr/local/CyberCP/lib/python3.10/site-packages/botocore/docs/waiter.py�__init__s�zWaiterDocumenter.__init__cCs�|j�d�|�|�|j��|�d�|j��|jjD]*}|j�|j	�d|���t
|dd�}|�||�tj
�|j|j	d�}|�||�qdS)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_pathrrr�document_waiters#s 



�
��z!WaiterDocumenter.document_waiterscCs�|�d�}|j�|jd|j���|�d|���|�|�|�|�}|jj|j�d|��d�|j��|j�	�|�dt
|��d��|j��|j�	�t|||j
jj|j
jj|jd�dS)	N�
breadcrumbz../../z / Waiter / z.Waiter.)�
class_namezwaiter = client.get_waiter('z'))r,r-�
event_emitterrr)�add_new_sectionr�refrr�write�add_title_section�start_sphinx_py_class�start_codeblockr"r�
end_codeblock�document_wait_methodr	r
�eventsrr)rr,r-�breadcrumb_section�waiter_sectionrrrr';s0
�

�

�


�z#WaiterDocumenter._add_single_waitercCs>|j��|�d�|jjd|jd�|�d�|j��dS)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�.)rr"r6�
external_linkr)rr,rrrr!Ys
��
zWaiterDocumenter._add_overviewN)r�
__module__�__qualname__rr0r'r!rrrrrs
rTcCs�|�|�}|�|j�}t�}tddd|j�d�d�|d<tddd|j�d�d�|d<tdd	d
|d�g}	dt|��d
t|j��d|j�d|j�d�	}
t	|d|||
d|	d|d�	dS)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�integerzD<p>The amount of time in seconds to wait between attempts. Default: z</p>)�name�	type_name�
documentation�MaxAttemptsz7<p>The maximum number of attempts to be made. Default: �WaiterConfig�	structurezI<p>A dictionary that provides parameters to control waiting behavior.</p>)rGrHrI�memberszPolls :py:meth:`z.Client.z` every zI seconds until a successful state is reached. An error is returned after z failed checks.�waitzwaiter.waitF)r3�method_description�example_prefix�
include_input�document_output�include_signatureN)
�
get_waiter�operation_model�	operationrr�delay�max_attemptsrrr)r,r-r3rrrS�waiter_modelrU�waiter_config_members�botocore_waiter_params�wait_descriptionrrrr;isV
�
�	�
�
��
����
�r;)T)r(�botocorer�botocore.compatr�botocore.docs.bcdoc.restdocr�botocore.docs.methodr�botocore.docs.utilsr�botocore.utilsrrr;rrrr�<module>sX�