gQZh d dl Z d dlZd dlmZ d dlmZ d dlmZm Z m Z mZ d dlm Z ddlmZmZ ddlmZ dd lmZmZ dd lmZ G d d ZdS ) N) lru_cache) SSLContext)AnyDictListOptional)URLError )PyJWKPyJWKSet)decode_complete)PyJWKClientConnectionErrorPyJWKClientError)JWKSetCachec e Zd Z ddeded ed ededeeeef d edee fdZ defdZddedefdZ ddedee fdZdedefdZdedefdZedee dedee fd ZdS )PyJWKClientF T, N uri cache_keysmax_cached_keys cache_jwk_setlifespanheaderstimeoutssl_contextc |i }|| _ d | _ || _ || _ || _ |r.|dk rt d| d t | | _ nd | _ |r% t | | j | _ d S d S )Nr z/Lifespan must be greater than 0, the input is "")maxsize) r jwk_set_cacher r r r r r get_signing_key) selfr r r r r r r r s a/builddir/build/BUILD/cloudlinux-venv-1.0.10/venv/lib/python3.11/site-packages/jwt/jwks_client.py__init__zPyJWKClient.__init__ s ?G48& & 1}}&QhQQQ "-X!6!6D!%D \ $F9_#E#E#EdFZ#[#[D \ \ returnc d } t j | j | j }t j || j | j 5 }t j | }d d d n# 1 swxY w Y || j | j | S S # t t f$ r}t d| d d }~ww xY w# | j | j | w w xY w)N)urlr )r contextz'Fail to fetch data from the url, err: "r )urllibrequestRequestr r urlopenr r jsonloadr! putr TimeoutErrorr )r# jwk_setrresponsees r$ fetch_datazPyJWKClient.fetch_data2 sV 0&&48T\&JJA''4<1A ( .)H-- . . . . . . . . . . . . . . . !-"&&w//// . ,' ,>!>>> !-"&&w//// .sN AB+ A<0B+ <B B+ B B+ C +C<CCC $C;refreshc d }| j |s| j }|| }t |t st d t j | S )Nz.The JWKS endpoint did not return a JSON object)r! getr7 isinstancedictr r from_dict)r# r8 datas r$ get_jwk_setzPyJWKClient.get_jwk_setD sp )')%))++D<??$$D$%% U"#STTT!$'''r&