File: //lib/python3.6/site-packages/botocore/docs/__pycache__/waiter.cpython-36.pyc
3
�T_� � @ sZ d dl mZ d dlmZ d dlmZ d dlmZ d dlm Z G dd� de
�Zdd d
�ZdS )
� )�
xform_name)�OrderedDict)�DocumentedShape)�get_service_module_name)�document_model_driven_methodc @ s$ e Zd Zdd� Zdd� Zdd� ZdS )�WaiterDocumenterc C s || _ | j jjj| _|| _d S )N)�_client�meta�
service_modelZservice_nameZ
_service_name�_service_waiter_model)�selfZclient�service_waiter_model� r �/usr/lib/python3.6/waiter.py�__init__ s zWaiterDocumenter.__init__c C s\ |j jd� |j j� |jd� x6| jjD ]*}|j jd| jjj |f � | j
||� q*W dS )zgDocuments the various waiters for a service.
:param section: The section to write to.
ZWaiterszThe available waiters are:z:py:class:`%s.Waiter.%s`N)�styleZh2�new_lineZwritelnr Zwaiter_namesZlir � __class__�__name__�_add_single_waiter)r �section�waiter_namer r r �document_waiters s
z!WaiterDocumenter.document_waitersc C s� |j |�}|jjd| jjj|f d� |jj� |jj� |jdt |� � |jj
� |jj� t||| jjj
| jjj| jd� d S )Nz%s.Waiter.%s)�
class_namez waiter = client.get_waiter('%s'))r r �
event_emitterr
r
)Zadd_new_sectionr Zstart_sphinx_py_classr r r Zstart_codeblockr �writer Z
end_codeblock�document_wait_methodr Zeventsr
r )r r r r r r r ( s
z#WaiterDocumenter._add_single_waiterN)r �
__module__�__qualname__r r r r r r r r s r Tc C s� |j |�}|j|j�}t� }tdddj|j�d�|d<