
    &`i7                         d dl Z d dlZd dlmZmZmZ d dlmZ d dlm	Z	 d dl
mZmZmZmZ d dlmZ d dlmZ d dlmZ d d	lmZ  e j        e          Z G d
 de          ZdS )    N)DictListOptional)try_to_create_directory)RuntimeEnvContext)delete_packagedownload_and_unpack_packageget_local_dir_from_uri
is_jar_uri)RuntimeEnvPlugin)get_directory_size_bytes)	GcsClient)RuntimeEnvSetupErrorc                      e Zd ZdZdedefdZdefdZefdede	e
j                 defd	Zd
edee         fdZefdede	e
j                 fdZefded
ddede	e
j                 def
dZefdee         dedede	e
j                 fdZdS )JavaJarsPlugin	java_jarsresources_dir
gcs_clientc                     t           j                            |d          | _        || _        t          | j                   d S )Njava_jars_files)ospathjoin_resources_dir_gcs_clientr   )selfr   r   s      v/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/ray/_private/runtime_env/java_jars.py__init__zJavaJarsPlugin.__init__   s:     gll=:KLL% 344444    uric                 ,    t          || j                  S N)r
   r   )r   r    s     r   _get_local_dir_from_uriz&JavaJarsPlugin._get_local_dir_from_uri   s    %c4+>???r   loggerreturnc                     t          || j                  }t          |          }t          || j                  }|s|                    d| d           dS |S )z2Delete URI and return the number of bytes deleted.z!Tried to delete nonexistent URI: .r   )r
   r   r   r   warning)r   r    r$   	local_dirlocal_dir_sizedeleteds         r   
delete_urizJavaJarsPlugin.delete_uri!   sf     +30CDD	1)<< d&9:: 	NNEsEEEFFF1r   runtime_envc                 *    |                                 S r"   )r   )r   r-   s     r   get_uriszJavaJarsPlugin.get_uris/   s    $$&&&r   c                   K   	 t          || j        | j        |           d{V }n5# t          $ r(}t	          d                    |                    |d}~ww xY w|                     |          }|                    d| d           |S )zDownload a jar URI.r$   NFailed to download jar file: {}zSucceeded to download jar file z .)r	   r   r   	Exceptionr   formatr#   debug)r   r    r$   jar_filee
module_dirs         r   _download_jarszJavaJarsPlugin._download_jars2   s      	8T($*:6        HH  	 	 	&188;; 	 11#66
CxCCCDDDs   #( 
A#AA
RuntimeEnvcontextc                 :  K   |sdS t          |          r|                     ||           d {V }nZ	 t          || j        | j        |           d {V }n5# t
          $ r(}t          d                    |                    |d }~ww xY wt          |          S )Nr   )r    r$   r1   r2   )	r   r9   r	   r   r   r3   r   r4   r   )r   r    r-   r;   r$   r8   r7   s          r   createzJavaJarsPlugin.createB   s        	1c?? 
	#22s62JJJJJJJJJJ#>,d.>v$ $ $      

    *5<<Q?? 
 (
333s   #A 
B##BBurisruntime_env_dictc                     |D ]h}|                      |          }|                                st          d| d| d          |j                            t          |                     id S )NzLocal directory z	 for URI z| does not exist on the cluster. Something may have gone wrong while downloading, unpacking or installing the java jar files.)r#   exists
ValueErrorr   appendstr)r   r>   r?   r;   r$   r    r8   s          r   modify_contextzJavaJarsPlugin.modify_contextY   s      	6 	6C55c::J$$&&  Oz O OC O O O  
 $$S__5555	6 	6r   N)__name__
__module____qualname__namerD   r   r   r#   default_loggerr   loggingLoggerintr,   dictr   r/   r9   r   r=   r   rE    r   r   r   r      s       D5c 5y 5 5 5 5
@3 @ @ @ @ <J  ( 8	   'D 'T#Y ' ' ' ' <J  ( 8   * ,:4 44 "4 #	4
 (4 
4 4 4 48 ,:6 63i6 6 #	6
 (6 6 6 6 6 6r   r   )rK   r   typingr   r   r   ray._common.utilsr    ray._private.runtime_env.contextr   "ray._private.runtime_env.packagingr   r	   r
   r   ray._private.runtime_env.pluginr   ray._private.utilsr   ray._rayletr   ray.exceptionsr   	getLoggerrF   rJ   r   rO   r   r   <module>rY      s0    				 ' ' ' ' ' ' ' ' ' ' 5 5 5 5 5 5 > > > > > >            = < < < < < 7 7 7 7 7 7 ! ! ! ! ! ! / / / / / /""8,,S6 S6 S6 S6 S6% S6 S6 S6 S6 S6r   