File: //opt/saltstack/salt/lib/python3.10/site-packages/libcloud/common/__pycache__/aws.cpython-310.pyc
o
;j�@ � @ s� d dl Z d dlZd dlZd dlZd dlmZmZmZ d dlmZ d dl m Z d dl
mZmZm
Z
mZmZmZ d dlmZmZ d dlmZmZmZmZ d dlmZmZ zd dlZW n
eye d dlZY nw g d �Zd
Z dZ!d�"� Z#G d
d� de�Z$G dd� de$�Z%G dd� de�Z&G dd� d�Z'G dd� de'�Z(G dd� de'�Z)G dd� d�Z*G dd� de&�Z+G dd� de�Z,d&d d!�Z-d"d#� Z.G d$d%� d%e�Z/dS )'� N)�Dict�Type�Optional)�sha256)�datetime)�ET�b�httplib�urlquote�
basestring�
_real_unicode)�findall_ignore_namespace�findtext_ignore_namespace)�
BaseDriver�XmlResponse�JsonResponse�ConnectionUserAndKey)�InvalidCredsError�MalformedResponseError)�AWSBaseResponse�AWSGenericResponse�AWSTokenConnection�SignedAWSConnection�AWSRequestSignerAlgorithmV2�AWSRequestSignerAlgorithmV4� AWSDriver�2zUNSIGNED-PAYLOADa�
"params" dictionary contains an attribute "%s" which value (%s, %s) is not a
string.
Parameters are sent via query parameters and not via request body and as such,
all the values need to be of a simple type (string, int, bool).
For arrays and other complex types, you should use notation similar to this
one:
params['TagSpecification.1.Tag.Value'] = 'foo'
params['TagSpecification.2.Tag.Value'] = 'bar'
See https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html
for details.
c @ s e Zd ZdZdd� ZdS )r Nc C s( t |d| jd�}t |d| jd�}||fS )z�
Parse code and message from the provided error element.
:return: ``tuple`` with two elements: (code, message)
:rtype: ``tuple``
ZCode��element�xpath� namespace�Message)r r )�selfr �code�message� r% �G/opt/saltstack/salt/lib/python3.10/site-packages/libcloud/common/aws.py�_parse_error_detailsE s
�z$AWSBaseResponse._parse_error_details)�__name__�
__module__�__qualname__r r'