
    &g                     J    d dl mZmZ d dl mZ d dlmZ  G d de          ZdS )    )WebApplicationClientInsecureTransportError)is_secure_transport)AuthBasec                        e Zd ZdZddZd ZdS )OAuth2z:Adds proof of authorization (OAuth2 token) to the request.Nc                     |pt          ||          | _        |r0|                                D ]\  }}t          | j        ||           dS dS )a  Construct a new OAuth 2 authorization object.

        :param client_id: Client id obtained during registration
        :param client: :class:`oauthlib.oauth2.Client` to be used. Default is
                       WebApplicationClient which is useful for any
                       hosted application but not mobile or desktop.
        :param token: Token dictionary, must include access_token
                      and token_type.
        )tokenN)r   _clientitemssetattr)self	client_idclientr
   kvs         O/var/www/api/venv/lib/python3.11/site-packages/requests_oauthlib/oauth2_auth.py__init__zOAuth2.__init__	   sl     M!5iu!M!M!M 	, , ,1a++++	, 	,, ,    c                     t          |j                  st                      | j                            |j        |j        |j        |j                  \  |_        |_        |_        |S )a  Append an OAuth 2 token to the request.

        Note that currently HTTPS is required for all requests. There may be
        a token type that allows for plain HTTP in the future and then this
        should be updated to allow plain HTTP on a white list basis.
        )http_methodbodyheaders)r   urlr   r   	add_tokenmethodr   r   )r   rs     r   __call__zOAuth2.__call__   sc     #15)) 	+(***#'<#9#9Eqxafai $: $
 $
 qy!& r   )NNN)__name__
__module____qualname____doc__r   r    r   r   r   r      s=        DD, , , ,    r   r   N)oauthlib.oauth2r   r   r   requests.authr   r   r#   r   r   <module>r&      su    H H H H H H H H / / / / / / " " " " " "    X     r   