
    '{gE                     2    S r SSKJrJrJr   " S S\5      rg)z
authlib.openid.connect.core.tokens
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This module contains methods for adding JWT tokens to requests.
    )	TokenBaseget_token_from_headerrandom_token_generatorc                   <    \ rS rSrSr  S	S jrS
S jrS rS rSr	g)JWTToken   )request_validatortoken_generatorrefresh_token_generator
expires_inNc                     Xl         U=(       d    [        U l        U=(       d    U R                  U l        U=(       d    SU l        g )Ni  )r	   r   r
   r   r   )selfr	   r
   r   r   s        E/usr/lib/python3/dist-packages/oauthlib/openid/connect/core/tokens.py__init__JWTToken.__init__   s:    !2.H2H#;t';'; 	$ %,    c                     [        U R                  5      (       a  U R                  U5      nOU R                  nX1l        U R                  R                  SSU5      $ )z2Create a JWT Token, using requestvalidator method.N)callabler   r	   get_jwt_bearer_token)r   requestrefresh_tokenr   s       r   create_tokenJWTToken.create_token   sK     DOO$$1JJ'%%::4wOOr   c                 d    [        U5      nU R                  R                  X!R                  U5      $ )N)r   r	   validate_jwt_bearer_tokenscopesr   r   tokens      r   validate_requestJWTToken.validate_request'   s.    %g.%%??>>7, 	,r   c                     [        U5      nU(       a,  UR                  S5      (       a  UR                  S5      S;   a  gg)Ney.)      
   r   )r   
startswithcountr   s      r   estimate_typeJWTToken.estimate_type,   s5    %g.U%%d++C0@F0Jr   )r   r   r	   r
   )NNNN)F)
__name__
__module____qualname____firstlineno__	__slots__r   r   r   r)   __static_attributes__ r   r   r   r      s(    I
 @D:>-
P,
r   r   N)__doc__oauthlib.oauth2.rfc6749.tokensr   r   r   r   r1   r   r   <module>r4      s     
$y $r   