File: //lib/python3/dist-packages/botocore/__pycache__/session.cpython-310.pyc
o
.&�ai� � @ s� d Z ddlZddlZddlZddlZddlZddlZddlmZ ddlm Z ddl
ZddlZddlZddl
mZ ddl
mZ ddl
mZ ddl
mZ dd lmZmZmZmZ dd
lmZ ddlmZ ddlmZmZ dd
lmZ ddlmZ ddl m!Z! ddl"m#Z# ddl$m%Z% ddlm&Z& ddlm'Z' ddlm(Z( ddlm)Z)m*Z* ddl+m,Z,m-Z- ddl.m/Z/m0Z0 e�1e2�Z3G dd� de4�Z5G dd� de4�Z6G dd� de/�Z7G dd� de4�Z8d"d d!�Z9dS )#zV
This module contains the main interface to the botocore package, the
Session object.
� N)�__version__)�UNSIGNED)�ConfigValueStore)�ConfigChainFactory)�&create_botocore_default_config_mapping)�!BOTOCORE_DEFAUT_SESSION_VARIABLES)�ConfigNotFound�ProfileNotFound�UnknownServiceError�PartialCredentialsError)�ClientExceptionsFactory)�handlers)�HierarchicalEmitter�first_non_none_response)�EventAliaser)�
create_loader)�ResponseParserFactory)�EndpointResolver)�ServiceModel)�
monitoring)�paginate)�waiter)�retryhandler� translate)�
EVENT_ALIASES�validate_region_name)�MutableMapping�HAS_CRTc @ s e Zd ZdZe�e�ZdZ dpdd�Zdd� Z d d
� Z
dd� Zd
d� Zdd� Z
dd� Zdd� Zdd� Zdd� Zdd� Zdd� Zdd� Zdd � Zed!d"� �Zd#d$� Zed%d&� �Zdqd'd(�Zd)d*� Zd+d,� Zd-d.� Zd/d0� Zed1d2� �Zd3d4� Z d5d6� Z!dqd7d8�Z"d9d:� Z#d;d<� Z$d=d>� Z%dqd?d@�Z&dqdAdB�Z'dqdCdD�Z(dqdEdF�Z)dGdH� Z*drdJdK�Z+ dsdLdM�Z,drdNdO�Z- PdtdQdR�Z. PdudSdT�Z/dUdV� Z0dWdX� Z1dYdZ� Z2d[d\� Z3d]d^� Z4d_d`� Z5dadb� Z6 dvdcdd�Z7dedf� Z8dgdh� Z9didj� Z:dkdl� Z; m Pdwdndo�Z<dS )x�Sessionae
The Session object collects together useful functionality
from `botocore` as well as important data such as configuration
information and credentials into a single, easy-to-use object.
:ivar available_profiles: A list of profiles defined in the config
file associated with this session.
:ivar profile: The current profile.
z4%(asctime)s - %(name)s - %(levelname)s - %(message)sNTc C s� |du r t � | _n|| _t| j�| _|r| �| j� d| _t| _d| _d| _ d| _
d| _d| _i | _
|dur;|| j
d<