
    Pin#                     X   d dl Z d dlZd dlmZ d dlmZ d dlmZmZm	Z	m
Z
mZ dZdZdZdZd	Zd!d
ededz  dedz  fdZd!d
ededz  defdZd
edefdZd!d
ededz  ddfdZdededz  fdZd!d
ededz  ddfdZd!d
ededz  dedz  fdZd!d
ededz  defdZd!d
ededz  defdZd!d
e
dedz  defdZd!d
ededz  defdZd!d
e	dedz  defdZd
e	defdZd
edefdZd
edefdZ d
e
defdZ!d!d
e	dedz  defdZ"d!d
ededz  defdZ#d!d
e
dedz  defdZ$d!d
ededz  defd Z%dS )"    N)Path)get_cache_folder)CompetitionHandleDatasetHandleModelHandleNotebookHandleResourceHandledatasets	notebookscompetitionsmodels	.completehandlepathreturnc                     t          | |          }t          | |          }t          j                            |          r!t          j                            |          r|ndS )a  Return path for the requested resource from the cache.

    Args:
        handle: Resource handle
        path: Optional path to a file within the bundle.

    Returns:
        A string representing the path to the requested resource in the cache or None on cache miss.
    N)_get_completion_marker_filepathget_cached_pathosr   exists)r   r   marker_path	full_paths       c/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/kagglehub/cache.pyload_from_cacher      sS     2&$??K--I{33[y8Q8Q[99W[[    c                 L   t          | t                    rt          | |          S t          | t                    rt	          | |          S t          | t
                    rt          | |          S t          | t                    rt          | |          S d}t          |          NzInvalid handle)

isinstancer   _get_model_pathr   _get_dataset_pathr   _get_competition_pathr   _get_notebook_output_path
ValueErrorr   r   msgs      r   r   r      s    &+&& 
vt,,,	FM	*	*  ...	F-	.	. $VT222	FN	+	+ (666oor   c                 D   t          | t                    rt          |           S t          | t                    rt	          |           S t          | t
                    rt          |           S t          | t                    rt          |           S d}t          |          r   )
r   r   _get_model_archive_pathr   _get_dataset_archive_pathr   _get_competition_archive_pathr   !_get_notebook_output_archive_pathr#   )r   r%   s     r   get_cached_archive_pathr+   -   s    &+&& 
&v...	FM	*	* (000	F-	.	. ,V444	FN	+	+ 0888oor   c                     t          | |          }t          j        t          j                            |          d           t          |                                           d S )NT)exist_ok)r   r   makedirsr   dirnamer   touchr   r   r   s      r   mark_as_completer2   ;   sT    1&$??KK,,t<<<<r   c                 ^   t           j                            |           rt           j                            |           rt	          j        |            nt          j        |            t           j                            |           }t          t          j	        |                    dk    r~|t                      k    rlt           j                            |          }t          j        |           |}t          t          j	        |                    dk    r|t                      k    l| S d S )Nr   )r   r   r   isdirshutilrmtreeremover/   lenlistdirr   rmdir)r   curr_dir
parent_dirs      r   _delete_from_cache_folderr=   A   s    	w~~d 7== 	M$IdOOO 7??4(("*X&&''1,,=M=O=O1O1O22JHX!H "*X&&''1,,=M=O=O1O1O 4r   c                 D    t          | |          }t          |           d S N)r   r=   r1   s      r   mark_as_incompleter@   T   s%    1&$??Kk*****r   c                 `    t          | |           t          | |          }t          |          S )a   Delete resource from the cache, even if incomplete.

    Args:
        handle: Resource handle
        path: Optional path to a file within the bundle.

    Returns:
        A string representing the path of the deleted resource or None on cache miss.
    )r@   r   r=   )r   r   model_full_paths      r   delete_from_cacherC   Y   s1     vt$$$%fd33O$_555r   c                 L   t          | t                    rt          | |          S t          | t                    rt	          | |          S t          | t
                    rt          | |          S t          | t                    rt          | |          S d}t          |          r   )
r   r   &_get_models_completion_marker_filepathr   (_get_datasets_completion_marker_filepathr   ,_get_competitions_completion_marker_filepathr   /_get_notebook_output_completion_marker_filepathr#   r$   s      r   r   r   h   s    &+&& 
5fdCCC	FM	*	* 7EEE	F-	.	. ;FDIII	FN	+	+ >vtLLLoor   c                 R   t           j                            t                      t          | j        | j                  }|                                 r3t           j                            |dt          | j	                            }|r t           j                            ||          n|S )Nversions)
r   r   joinr   DATASETS_CACHE_SUBFOLDERownerdatasetis_versionedstrversionr   r   	base_paths      r   r    r    v   s    -//1I6<Y_YghhI MGLLJFN8K8KLL	,0?27<<	4(((i?r   c                 T   t           j                            t                      t          | j        | j        d          }|                                 r3t           j                            |dt          | j	                            }|r t           j                            ||          n|S )NoutputrJ   )
r   r   rK   r   NOTEBOOKS_CACHE_SUBFOLDERrM   notebookrO   rP   rQ   rR   s      r   r"   r"   ~   s    -//1JFLZ`ZiksttI MGLLJFN8K8KLL	,0?27<<	4(((i?r   c                     t           j                            t                      t          | j                  }|r t           j                            ||          n|S r?   r   r   rK   r   COMPETITIONS_CACHE_SUBFOLDERcompetitionrR   s      r   r!   r!      sD    -//1MvOabbI,0?27<<	4(((i?r   c                    t           j                            t                      t          | j        | j        | j        | j        t          | j
                            }|r t           j                            ||          n|S r?   )r   r   rK   r   MODELS_CACHE_SUBFOLDERrM   model	framework	variationrP   rQ   rR   s      r   r   r      sh    FN I -1?27<<	4(((i?r   c           
          t           j                            t                      t          | j        | j        | j        | j        | j	        d          S Nz.archive)
r   r   rK   r   r]   rM   r^   r_   r`   rQ   r   s    r   r'   r'      sJ    7<<>%%%  r   c                     t           j                            t                      t          | j        | j        | j        d          S rb   )r   r   rK   r   rL   rM   rN   rQ   rc   s    r   r(   r(      s>    7<< >%%%  r   c                 v    t           j                            t                      t          | j         d          S rb   rY   rc   s    r   r)   r)      s5    7<<$'''  r   c                 ~    t           j                            t                      t          | j        | j        d          S )Nz!output-{handle.version!s}.archive)r   r   rK   r   rV   rM   rW   rc   s    r   r*   r*      s3    7<<!+  r   c                 v   |rft           j                            t                      t          | j        | j        | j        | j        t          t          | j                  | d	  	        S t           j                            t                      t          | j        | j        | j        | j        | j        d          S Nr   )r   r   rK   r   r]   rM   r^   r_   r`   FILE_COMPLETION_MARKER_FOLDERrP   rQ   r   r   s     r   rE   rE      s     
w||"LL)

 

 
	
 7<<>&&&  r   c           
      F   |rZt           j                            t                      t          | j        | j        t          t          | j	                  | d          S t           j                            t                      t          | j        | j        | j	        d          S rh   )
r   r   rK   r   rL   rM   rN   ri   rP   rQ   rj   s     r   rF   rF      s     	
w||$LN)
 
 	
 7<< >&&&  r   c           
      "   |rPt           j                            t                      t          | j        | j        t          d| j        | d          S t           j                            t                      t          | j        | j        d          S )Nzoutput-r   z"output-{handle.version!s}.complete)	r   r   rK   r   rV   rM   rW   ri   rQ   rj   s     r   rH   rH      s     	
w||%LO)(fn((
 
 	
 7<<!,  r   c                     |rBt           j                            t                      t          t
          | j         | d          S t           j                            t                      t          | j         d          S rh   )r   r   rK   r   rZ   ri   r[   rj   s     r   rG   rG     s{     
w||()!#
 
 	
 7<<$(((  r   r?   )&r   r5   pathlibr   kagglehub.configr   kagglehub.handler   r   r   r   r	   rL   rV   rZ   r]   ri   rP   r   r   r+   r2   r=   r@   rC   r   r    r"   r!   r   r'   r(   r)   r*   rE   rF   rH   rG    r   r   <module>rr      s[   				        - - - - - - j j j j j j j j j j j j j j% ' - !  + \ \N \#* \d
 \ \ \ \ N #*     N s     ^ 3:     C C$J    &+ +~ +S4Z +4 + + + +
6 6n 6C$J 6#PT* 6 6 6 6 N #* X[    @ @m @3: @ @ @ @ @@ @n @C$J @RU @ @ @ @@ @"3 @3: @QT @ @ @ @
@ @K @sTz @S @ @ @ @	K 	C 	 	 	 	m     *;     n      ; cDj \_    2 ] #PT* `c    * N RUX\R\ hk    * 9J RUX\R\ hk      r   