Ë
    rPêjƒ  ã                   ór   — d dl Z d dlmZ d dlmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZ  G d„ d	«      Z	 dd
„Zy)é    N)Ú
xform_name)ÚOrderedDict)ÚDocumentStructure)Údocument_model_driven_method)ÚDocumentedShape)Úget_service_module_namec                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)ÚWaiterDocumenterc                 óä   — || _         | j                   j                  j                  | _        | j                   j                  j
                  j                  | _        || _        || _	        d| _
        y )NzChttps://docs.aws.amazon.com/boto3/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       úY/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/botocore/docs/waiter.pyÚ__init__zWaiterDocumenter.__init__   s\   € ØˆŒØ"&§,¡,×"8Ñ"8×"AÑ"AˆÔØ!Ÿ\™\×.Ñ.×<Ñ<×IÑIˆÔØ%9ˆÔ"Ø-ˆÔð6ð 	Õó    c                 ó<  — |j                   j                  d«       | j                  |«       |j                   j                  «        |j	                  d«       |j                   j                  «        | j                  j                  D ]’  }|j                   j                  | j                  › d|› �«       t        |d¬«      }| j                  ||«       t        j                  j                  | j                  | j                  d«      }|j!                  ||«       Œ” y)zgDocuments the various waiters for a service.

        :param section: The section to write to.
        ÚWaiterszThe available waiters are:z/waiter/Úhtml)ÚtargetÚwaiterN)ÚstyleÚh2Ú_add_overviewÚnew_lineÚwritelnÚtoctreer   Úwaiter_namesÚtocitemr   r   Ú_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ñ	Mr   c                 ó  — |j                  d«      }|j                  j                  | j                  d| j                  › �«       |j                  d|› �«       |j                  |«       |j                  |«      }|j                  j                  | j                  › d|› �¬«       |j                  j                  «        |j                  j                  «        |j                  dt        |«      › d�«       |j                  j                  «        |j                  j                  «        t        ||| j                  j                  j                  | j                  j                  j                   | j"                  ¬«       y )	NÚ
breadcrumbz../../z / Waiter / z.Waiter.)Ú
class_namezwaiter = client.get_waiter('z'))r0   r1   Úevent_emitterr   r   )Úadd_new_sectionr#   Úrefr   r   ÚwriteÚadd_title_sectionÚstart_sphinx_py_classÚstart_codeblockr&   r   Úend_codeblockÚdocument_wait_methodr   r   Úeventsr   r   )r   r0   r1   Úbreadcrumb_sectionÚwaiter_sections        r   r+   z#WaiterDocumenter._add_single_waiter;   sN  € Ø$×4Ñ4°\ÓBÐØ× Ñ ×$Ñ$Ø×#Ñ# v¨d×.@Ñ.@Ð-AÐ%Bô	
ð 	× Ñ  <°¨}Ð!=Ô>Ø×!Ñ! +Ô.Ø ×0Ñ0°Ó=ˆØ×Ñ×2Ñ2Ø×1Ñ1Ð2°(¸;¸-ÐHð 	3ô 	
ð
 	×Ñ×,Ñ,Ô.Ø×Ñ×%Ñ%Ô'Ø×ÑØ+¬J°{Ó,CÐ+DÀCÐHô	
ð 	×Ñ×*Ñ*Ô,ð 	×Ñ×%Ñ%Ô'ÜØ"Ø#ØŸ,™,×+Ñ+×2Ñ2ØŸ,™,×+Ñ+×9Ñ9Ø!%×!;Ñ!;ö	
r   c                 óþ   — |j                   j                  «        |j                  d«       |j                   j                  d| j                  ¬«       |j                  d«       |j                   j                  «        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   )r   r0   s     r   r%   zWaiterDocumenter._add_overviewY   sf   € Ø�‰×ÑÔ Ø�‰ðô	
ð 	�‰×#Ñ#ØØ×&Ñ&ð 	$ô 	
ð 	�‰�cÔØ�‰×ÑÕ r   N)r   Ú
__module__Ú__qualname__r   r4   r+   r%   © r   r   r
   r
      s   „ ò	
òMò0
ó<!r   r
   c                 ó²  — |j                  |«      }|j                  |j                  «      }t        «       }t	        ddd|j
                  › d�¬«      |d<   t	        ddd|j                  › d�¬«      |d<   t	        dd	d
|¬«      g}	dt        |«      › dt        |j                  «      › d|j
                  › d|j                  › d�	}
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Ú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>)rO   rP   rQ   ÚmemberszPolls :py:meth:`z.Client.z` every zG seconds until a successful state is reached. An error is raised after z failed checks.Úwaitzwaiter.waitF)r8   Úmethod_descriptionÚexample_prefixÚinclude_inputÚdocument_outputÚinclude_signatureN)
Ú
get_waiterÚoperation_modelÚ	operationr   r   ÚdelayÚmax_attemptsr   r   r   )r0   r1   r8   r   r   r[   Úwaiter_modelr]   Úwaiter_config_membersÚbotocore_waiter_paramsÚwait_descriptions              r   r@   r@   i   s&  € ð. (×2Ñ2°;Ó?€LØ#×3Ñ3°L×4JÑ4JÓK€Oä'›MÐä%4ØØð"Ø".×"4Ñ"4Ð!5°Tð;ô	&Ð˜'Ñ"ô ,;ØØðØ$×1Ñ1Ð2°$ð8ô	,Ð˜-Ñ(ô 	ØØ!ð(ð *ô	
ð
Ðð Ô2°=ÓAÐBÀ(Ü�l×,Ñ,Ó-Ð
.¨h°|×7IÑ7IÐ6Jð Kà$×1Ñ1Ð2°/ð	Cð ô !ØØØØ#Ø+Ø$Ø,ØØ+ö
r   )T)r,   Úbotocorer   Úbotocore.compatr   Úbotocore.docs.bcdoc.restdocr   Úbotocore.docs.methodr   Úbotocore.docs.utilsr   Úbotocore.utilsr   r
   r@   rK   r   r   ú<module>rk      s4   ðó 
å Ý 'Ý 9Ý =Ý /Ý 2÷O!ñ O!ðp ôKr   