
    9i3                         S r SSKJr  SSKrSSK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S	KJr  SS
KJr  SSKJr  SSKJr  \R&                  " \5      r " S S\R,                  5      rg)z/
This module provides a client class for CERT.
    )unicode_literalsN)bce_base_client)utils)bce_v1_signer)bce_http_client)handler)http_content_types)http_headers)http_methods)
cert_modelc                   x    \ rS rSrSrSrSS jr\S 5       r   SS jr	SS jr
SS	 jrSS
 jrSS jrSS jrSrg)
CertClient$   z
CertClient
s   /v1/certificateNc                 B    [         R                  R                  X5        g N)r   BceBaseClient__init__selfconfigs     b/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/baidubce/services/cert/cert_client.pyr   CertClient.__init__*   s    %%..t<    c                     Uc  U R                   $ [        R                  " U R                   5      nUR                  U5        U$ r   )r   copymerge_non_none_values)r   r   
new_configs      r   _merge_configCertClient._merge_config-   s7    >;;4;;/J,,V4r   c           
      \   U R                  X5      nUc  [        R                  nU=(       d    0 n[        R                  U[
        R                  '   [        R                  " U[        R                  [        R                  U/U[        R                  " [        R                  U5      X4U5      $ r   )r   r   
parse_jsonr	   JSONr
   CONTENT_TYPEr   send_requestr   signparse_errorr   
append_urir   prefix)r   http_methodpathbodyheadersparamsr   body_parsers           r   _send_requestCertClient._send_request6   s    
 ##D1!,,K-R-?-D-D))*++M&&)<)<k(J))**;*;TBDSY[ 	[r   c                 ~    U R                  [        R                  S[        R                  " UR
                  5      US9$ )z
create certificate

:param cert_create_request: certificate base informations
:type cert_create_request: cert_model.CertCreateRequest

:param config: None
:type config: baidubce.BceClientConfiguration

:return:
:rtype: baidubce.bce_response.BceResponse
 )r+   r   )r/   r   POSTjsondumps__dict__)r   cert_create_requestr   s      r   create_certCertClient.create_certE   s<     !!r

3F3O3O(P "  	r   c                 @    U R                  [        R                  SUS9$ )z
list user's certificates

:param config: None
:type config: baidubce.BceClientConfiguration

:return:
:rtype: baidubce.bce_response.BceResponse
r2   r   r/   r   GETr   s     r   list_user_certsCertClient.list_user_certsV   s*     !!b "  	r   c                 F    U R                  [        R                  SU-   US9$ )z
get a certificate information by id

:param cert_id: certificate id
:type cert_id: string

:param config: None
:type config: baidubce.BceClientConfiguration

:return:
:rtype: baidubce.bce_response.BceResponse
/r;   r<   r   cert_idr   s      r   get_cert_infoCertClient.get_cert_infod   s.     !!cGm "  	r   c                 F    U R                  [        R                  SU-   US9$ )z
delete a certificate by id
:param cert_id: certificate id
:type cert_id: string
:param config: None
:type config: baidubce.BceClientConfiguration
:return:
:rtype: baidubce.bce_response.BceResponse
rA   r;   )r/   r   DELETErB   s      r   delete_certCertClient.delete_certu   s.     !!w "  	r   c                     U R                  [        R                  SU-   [        R                  " UR
                  5      SS0US9$ )a<  
delete a certificate by id

:param cert_id: certificate id
:type cert_id: string

:param cert_create_request: certificate base informations
:type cert_create_request: cert_model.CertCreateRequest

:param config: None
:type config: baidubce.BceClientConfiguration

:return:
:rtype: baidubce.bce_response.BceResponse
rA   certDatar2   )r+   r-   r   )r/   r   PUTr4   r5   r6   )r   rC   r7   r   s       r   replace_certCertClient.replace_cert   sI      !!cGm/889#	 "  	r    r   )NNNNN)__name__
__module____qualname____firstlineno____doc__r(   r   staticmethodr   r/   r8   r>   rD   rH   rM   __static_attributes__rO   r   r   r   r   $   sQ      F=   -1	[""r   r   )rT   
__future__r   r   r4   loggingbaidubcer   r   baidubce.authr   baidubce.httpr   r   r	   r
   r   baidubce.services.certr   	getLoggerrP   _loggerr   r   rO   r   r   <module>r_      sW    (    $  ' ) ! , & & -


H
%s.. sr   