
    sOi,                     f   d dl mZmZ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 d dlmZ  ej                   d      Z edd	      Zeeeef      Zeeeef   ef   Zd
ZdedededefdZ	 	 	 	 	 	 ddedeeef   dedededefdZerd dlmZ  G d d      Z G d de      Z G d de      Zy
)    )TYPE_CHECKINGAnyDictSetTypeVarUnion)	BaseModel)VERSION)*)modelsz2.Modelr	   )boundNmodelargskwargsreturnc                 V    t         r | j                  |i |S  | j                  |i |S N)PYDANTIC_V2model_dump_jsonjson)r   r   r   s      i/volume1/homes/robertsu/coba/app/.venv/lib/python3.12/site-packages/qdrant_client/http/api/service_api.pyto_jsonr      s3    $u$$d5f55uzz4*6**    objincludeby_aliasskip_defaultsexclude_unsetexclude_nonec           
      r    t        | d      st        | d      rt        | |||t        |xs |      |      S | S )Nr   r   )r   excluder   r   r    )hasattrr   bool)r   r   r"   r   r   r   r    s          r   jsonable_encoderr%      sH     sFws,=>}=>%
 	
 Jr   )	ApiClientc                   ^    e Zd ZddZd Zd Z	 	 ddedefdZd Z	d	 Z
	 	 	 dded
edefdZy)_ServiceApic                     || _         y r   )
api_client)selfr*   s     r   __init__z_ServiceApi.__init__4   s	    $r   c                 ^    i }| j                   j                  t        dd|r|      S d      S )E
        An endpoint for health checking used in Kubernetes.
        GETz/healthzNtype_methodurlheadersr*   requeststrr+   r4   s     r   _build_for_healthzz_ServiceApi._build_for_healthz7   sG     &&&G	 ' 
 	
 -1	 ' 
 	
r   c                 ^    i }| j                   j                  t        dd|r|      S d      S )r.   r/   z/livezNr0   r5   r8   s     r   _build_for_livezz_ServiceApi._build_for_livezE   sG     &&&G	 ' 
 	
 -1	 ' 
 	
r   N	anonymizetimeoutc                     i }|t        |      j                         |d<   |t        |      |d<   i }| j                  j                  t         dd|r||      S d|      S )h
        Collect metrics data including app info, collections info, cluster info and statistics
        Nr<   r=   r/   z/metricsr1   r2   r3   r4   params)r7   lowerr*   r6   )r+   r<   r=   query_paramsr4   s        r   _build_for_metricsz_ServiceApi._build_for_metricsS   s      (+I(<(<(>L%&)'lL#&&&G ' 
 	
 -1 ' 
 	
r   c                 ^    i }| j                   j                  t        dd|r|      S d      S )r.   r/   z/readyzNr0   r5   r8   s     r   _build_for_readyzz_ServiceApi._build_for_readyzj   sG     &&&G	 ' 
 	
 -1	 ' 
 	
r   c                 r    i }| j                   j                  t        j                  dd|r|      S d      S )b
        Returns information about the running Qdrant instance like version and commit id
        r/   /Nr0   )r*   r6   mVersionInfor8   s     r   _build_for_rootz_ServiceApi._build_for_rootx   sK     &&--&G	 ' 
 	
 -1	 ' 
 	
r   details_levelc                     i }|t        |      j                         |d<   |t        |      |d<   |t        |      |d<   i }| j                  j                  t        j
                  dd|r||      S d|      S )
        Collect telemetry data including app info, system info, collections info, cluster info, configs and statistics
        Nr<   rM   r=   r/   z
/telemetryr@   )r7   rB   r*   r6   rJ   InlineResponse2002)r+   r<   rM   r=   rC   r4   s         r   _build_for_telemetryz _ServiceApi._build_for_telemetry   s      (+I(<(<(>L%$,/,>L)&)'lL#&&&&&G ' 
 	
 -1 ' 
 	
r   )r*   z Union[ApiClient, AsyncApiClient]NNNNN)__name__
__module____qualname__r,   r9   r;   r$   intrD   rF   rL   rQ    r   r   r(   r(   3   sf    %

  

 
.

  !	

 
 	
r   r(   c            	           e Zd ZdefdZdefdZ	 	 ddededefdZdefdZ	de
j                  fd	Z	 	 	 dded
edede
j                  fdZy)AsyncServiceApir   c                 >   K   | j                          d{   S 7 wr.   Nr9   r+   s    r   healthzzAsyncServiceApi.healthz   s      ,,....   c                 >   K   | j                          d{   S 7 wr\   r;   r^   s    r   livezzAsyncServiceApi.livez   s      **,,,,r`   Nr<   r=   c                 D   K   | j                  ||       d{   S 7 w)r?   r<   r=   NrD   r+   r<   r=   s      r   metricszAsyncServiceApi.metrics   s0      ,, - 
 
 	
 
s     c                 >   K   | j                          d{   S 7 wr\   rF   r^   s    r   readyzzAsyncServiceApi.readyz   s      ++----r`   c                 >   K   | j                          d{   S 7 w)rH   NrL   r^   s    r   rootzAsyncServiceApi.root   s      ))++++r`   rM   c                 F   K   | j                  |||       d{   S 7 w)rO   r<   rM   r=   NrQ   r+   r<   rM   r=   s       r   	telemetryzAsyncServiceApi.telemetry   s3      ..' / 
 
 	
 
s   !!rR   rS   rT   rU   rV   r7   r_   rc   r$   rW   rh   rk   rJ   rK   rn   rP   rs   rX   r   r   rZ   rZ      s    /	/-	- 

 
 
	
.	.,	
, !	

 
 	

 
		
r   rZ   c            	           e Zd ZdefdZdefdZ	 	 ddededefdZdefdZ	de
j                  fd	Z	 	 	 dded
edede
j                  fdZy)SyncServiceApir   c                 "    | j                         S r.   r]   r^   s    r   r_   zSyncServiceApi.healthz   s     &&((r   c                 "    | j                         S rx   rb   r^   s    r   rc   zSyncServiceApi.livez   s     $$&&r   Nr<   r=   c                 (    | j                  ||      S )r?   re   rf   rg   s      r   rh   zSyncServiceApi.metrics   s"     && ' 
 	
r   c                 "    | j                         S rx   rj   r^   s    r   rk   zSyncServiceApi.readyz   s     %%''r   c                 "    | j                         S )rH   rm   r^   s    r   rn   zSyncServiceApi.root  s     ##%%r   rM   c                 *    | j                  |||      S )rO   rp   rq   rr   s       r   rs   zSyncServiceApi.telemetry  s%     ((' ) 
 	
r   rR   rS   rt   rX   r   r   rv   rv      s    )	)'	' 

 
 
	
(	(&	
& !	

 
 	

 
		
r   rv   )NNTNTT) typingr   r   r   r   r   r   pydanticr	   pydantic.mainpydantic.versionr
   PYDANTIC_VERSIONqdrant_client.http.modelsr   rJ   
startswithr   r   rW   r7   	SetIntStrDictIntStrAnyfiler   r$   r%   qdrant_client.http.api_clientr&   r(   rZ   rv   rX   r   r   <module>r      s   @ @  # 8 ' 1)))$/{+c3h 	U38_c)*+9 +S +C +C + 04	9m+, 	
   , 7k
 k
\;
k ;
|;
[ ;
r   