
    }	                         S r SSKJr  SSKJrJr   " S S\5      r " S S\5      r " S S	\5      r	 " S
 S\5      r
 " S S\5      rg)zoauthlib.oauth1.rfc5849.errors ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Error used both by OAuth 1 clients and provicers to represent the spec
defined error responses for all four core grant types.
    )unicode_literals)add_params_to_uri	urlencodec                   Z   ^  \ rS rSrSrSrS	U 4S jjrS r\S 5       r	\S 5       r
SrU =r$ )
OAuth1Error   N c                    > U=(       d    U R                   U l         SU R                  < SU R                   < 3nU(       a  US[        U5      -   -  n[        [        U ]  U5        X l        X0l        g)a6  
description:    A human-readable ASCII [USASCII] text providing
                additional information, used to assist the client
                developer in understanding the error that occurred.
                Values for the "error_description" parameter MUST NOT
                include characters outside the set
                x20-21 / x23-5B / x5D-7E.

uri:    A URI identifying a human-readable web page with information
        about the error, used to provide the client developer with
        additional information about the error.  Values for the
        "error_uri" parameter MUST conform to the URI- Reference
        syntax, and thus MUST NOT include characters outside the set
        x21 / x23-5B / x5D-7E.

state:  A CSRF protection value received from the client.

request:  Oauthlib Request object
(z)  N)descriptionerrorreprsuperr   __init__uristatus_code)selfr   r   r   requestmessage	__class__s         1lib/third_party/oauthlib/oauth1/rfc5849/errors.pyr   OAuth1Error.__init__   s\    ( #6d&6&6D::t'7'78GtG}$$g	+t%g.H"    c                 ,    [        XR                  5      $ N)r   	twotuples)r   r   s     r   in_uriOAuth1Error.in_uri-   s    S..11r   c                     SU R                   4/nU R                  (       a  UR                  SU R                  45        U R                  (       a  UR                  SU R                  45        U$ )Nr   error_description	error_uri)r   r   appendr   )r   r   s     r   r   OAuth1Error.twotuples0   sU    tzz"#Ell')9)9:;xxllK*+Lr   c                 ,    [        U R                  5      $ r   )r   r   )r   s    r   
urlencodedOAuth1Error.urlencoded9   s    T^^$$r   )r   r   r   )NNi  N)__name__
__module____qualname____firstlineno__r   r   r   r   propertyr   r&   __static_attributes____classcell__)r   s   @r   r   r      s?    
%+#:2   % %r   r   c                       \ rS rSrSrSrSrg)InsecureTransportError>   insecure_transport_protocolz%Only HTTPS connections are permitted. N)r(   r)   r*   r+   r   r   r-   r3   r   r   r0   r0   >   s    
'%7+r   r0   c                       \ rS rSrSrSrg)InvalidSignatureMethodErrorC   invalid_signature_methodr3   Nr(   r)   r*   r+   r   r-   r3   r   r   r5   r5   C   s    
$%r   r5   c                       \ rS rSrSrSrg)InvalidRequestErrorG   invalid_requestr3   Nr8   r3   r   r   r:   r:   G   s    
%r   r:   c                       \ rS rSrSrSrg)InvalidClientErrorK   invalid_clientr3   Nr8   r3   r   r   r>   r>   K   s    
%r   r>   N)__doc__
__future__r   oauthlib.commonr   r   	Exceptionr   r0   r5   r:   r>   r3   r   r   <module>rE      sO   
 ( 8/%) /%d8[ 8
%+ %+  r   