File: //opt/alt/python37/lib/python3.7/site-packages/botocore/__pycache__/waiter.cpython-37.pyc
B
�P�e�7 � @ s� d dl Z d dlZd dlZd dlmZ d dlmZ ddlmZ ddl m
Z
mZmZ e �
e�Zdd� Zd d
� ZG dd� d�ZG d
d� d�ZG dd� d�ZG dd� d�ZG dd� d�ZdS )� N)�WaiterDocstring)�get_service_module_name� )�
xform_name)�ClientError�WaiterConfigError�WaiterErrorc C s| |� | �}t|j�}tt||��}dd� }t| |jj|jj|dd�|_ t
dt|jj�| f �}t|t
fd|i�}|| ||�S )a
:type waiter_name: str
:param waiter_name: The name of the waiter. The name should match
the name (including the casing) of the key name in the waiter
model file (typically this is CamelCasing).
:type waiter_model: botocore.waiter.WaiterModel
:param waiter_model: The model for the waiter configuration.
:type client: botocore.client.BaseClient
:param client: The botocore client associated with the service.
:rtype: botocore.waiter.Waiter
:return: The waiter object.
c [ s t j| f|� d S )N)�Waiter�wait)�self�kwargs� r
�@/opt/alt/python37/lib/python3.7/site-packages/botocore/waiter.pyr
6 s z'create_waiter_with_client.<locals>.waitF)�waiter_nameZ
event_emitter�
service_modelZservice_waiter_modelZinclude_signaturez%s.Waiter.%sr
)�
get_waiterr � operation�NormalizedOperationMethod�getattrr �meta�eventsr �__doc__�strr �typer ) r Zwaiter_model�client�single_waiter_configZoperation_name�operation_methodr
Zwaiter_class_nameZdocumented_waiter_clsr
r
r �create_waiter_with_client s"