File: //opt/alt/python311/lib/python3.11/site-packages/botocore/__pycache__/session.cpython-311.pyc
�
/�;f � � �� � d Z ddlZddlZddlZddlZddlZddlZddlZddl Zddl
ZddlZddlmZm
Z
mZmZmZmZmZmZmZ ddlmZmZ ddlmZmZmZmZmZmZmZ ddl m!Z! ddl"m#Z#m$Z$m%Z%m&Z&m'Z' ddl(m)Z)m*Z*m+Z+ dd l,m-Z- dd
l.m/Z/ ddl0m1Z1 ddl2m3Z3 dd
l4m5Z5 ddl6m7Z7m8Z8m9Z9 ddlmZ ej: e;� � Z< G d� d� � Z= G d� d� � Z> G d� de� � Z? G d� d� � Z@dd�ZAdS )zV
This module contains the main interface to the botocore package, the
Session object.
� N) �UNSIGNED�__version__�handlers�invoke_initializers�
monitoring�paginate�retryhandler� translate�waiter)�HAS_CRT�MutableMapping)�!BOTOCORE_DEFAUT_SESSION_VARIABLES�ConfigChainFactory�ConfiguredEndpointProvider�ConfigValueStore�DefaultConfigResolver�SmartDefaultsConfigStoreFactory�&create_botocore_default_config_mapping)�ClientExceptionsFactory)�ConfigNotFound�InvalidDefaultsMode�PartialCredentialsError�ProfileNotFound�UnknownServiceError)�EventAliaser�HierarchicalEmitter�first_non_none_response)�
create_loader)�ServiceModel)�ResponseParserFactory)�EndpointResolver)�UserAgentString)�
EVENT_ALIASES�IMDSRegionProvider�validate_region_name)r c � � e Zd ZdZ ej e� � ZdZ dDd�Zd� Z d� Z
d� Zd � Zd
� Z
d� Zd� Zd
� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zed� � � Zd� Zed� � � ZdEd�Zd� Z d� Z!d� Z"d� Z#ed � � � Z$d!� Z%d"� Z&dEd#�Z'd$� Z(d%� Z)d&� Z*d'� Z+dEd(�Z,dEd)�Z-dEd*�Z.dEd+�Z/d,� Z0dFd.�Z1 dGd/�Z2dFd0�Z3 dHd2�Z4 dId3�Z5d4� Z6d5� Z7d6� Z8d7� Z9d8� Z:d9� Z;d:� Z< dJd;�Z=d<� Z>d=� Z?d>� Z@d?� ZAd@� ZBdA� ZC dKdC�ZDdS )L�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 �d � |�t � � | _ n|| _ t | j � � | _ |r| � | j � � d| _ t | _ d| _ d| _ d| _
d| _ d| _ d| _
i | _ |�
|| j d<