
    ^h
                         S r SSKrSSKJr  SSKJr  SSKJr  SSKJ	r	  SSK
Jr  S	r " S
 S\R                  \	5      rS\-  \4/rg)zKernelspecs API Handlers.    N)ensure_async)web)
authorized   )JupyterHandler)kernel_name_regexkernelspecsc                       \ rS rSrSrSr\rS r\	R                  \S	S j5       5       r\	R                  \S 5       5       rSrg)
KernelSpecResourceHandler   zA Kernelspec resource handler.)GETHEADc                 @    [         R                  R                  U SS9  g)z)Initialize a kernelspec resource handler. )pathN)r   StaticFileHandler
initialize)selfs    ]/home/james-whalen/.local/lib/python3.13/site-packages/jupyter_server/kernelspecs/handlers.pyr   $KernelSpecResourceHandler.initialize   s    ((B(7    c                 H  #    U R                   nUR                  5       R                  S5      (       a  U R                  SSS 35        U R                   n[	        US5      (       a  UR                  X5      I Sh  vN nUbL  X l        [        R                  " U5      S   =(       d    SnU R                  S	U5        U R                  U5        gU R                  R                  S
U SU S35         [        UR                  U5      5      I Sh  vN nUR                  U l        U R                  R'                  SU R                  5        ["        R(                  R+                  XUS9I Sh  vN $  N Nc! [          a   n["        R$                  " SSU-  5      UeSnAff = f N57f)zGet a kernelspec resource.z.pngzCache-Controlzmax-age=i ' get_kernel_spec_resourceNr   z
text/plainzContent-TypezKernelspec resource 'z' for 'ze' not found.  Kernel spec manager may not support resource serving. Falling back to reading from diski  zKernel spec %s not foundz Serving kernel resource from: %sinclude_body)kernel_spec_managerlowerendswith
set_headerhasattrr   absolute_path	mimetypes
guess_typefinishlogwarningr   get_kernel_specresource_dirrootKeyErrorr   	HTTPErrordebugr   get)	r   kernel_namer   r   ksmkernel_spec_resmimetypekspeces	            r   r-   KernelSpecResourceHandler.get   s~     &&::<  ((OOOx}-EF&&3233 %($@$@$SSO* &*" ) 4 4T :1 = M9O,  +D6 FW W	V&s':':;'GHHE**DI 	9499E**..t.UUU) T I 	V--%?+%MNTUU	V VsV   A7F"9E/:A5F"0E3 E1E3 #AF"*F +F"1E3 3
F=FFF"c                 P   #    [        U R                  XSS95      I Sh  vN $  N7f)z(Get the head info for a kernel resource.Fr   N)r   r-   )r   r.   r   s      r   headKernelSpecResourceHandler.head;   s%      "$((;5("QRRRRs   &$&)r!   r)   N)T)__name__
__module____qualname____firstlineno____doc__SUPPORTED_METHODSAUTH_RESOURCEauth_resourcer   r   authenticatedr   r-   r6   __static_attributes__ r   r   r   r      s]    ('!M8 	V  V> 	S  Sr   r   z/kernelspecs/%s/(?P<path>.*))r<   r"   jupyter_core.utilsr   tornador   jupyter_server.auth.decoratorr   base.handlersr   services.kernelspecs.handlersr   r>   r   r   default_handlersrB   r   r   <module>rI      sO      +  4 * =/S 5 5~ /Sf %'88:ST r   