
    9i                         S 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\5      rg)z.
This module provides a client class for DDC.
    N)utils)bce_v1_signer)BceBaseClient)bce_http_client)handler)http_methods)requiredc                       \ rS rSrSrSrSrSS jr\" \	\	\	S9SS j5       r
\" \	\	\	S9SS	 j5       r\" \	\	\	S
9SS j5       r\" \	\	S9SS j5       r\SS j5       rS r  SS jrSrg)	DdcClient   z
Ddc base sdk client
z/v1z/ddcNc                 0    [         R                  " X5        g)z>
:type config: baidubce.BceClientConfiguration
:param config:
N)r   __init__)selfconfigs     `/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/baidubce/services/ddc/ddc_client.pyr   DdcClient.__init__&   s    
 	t,    )instance_iddb_name
table_namec                     [         R                  [         R                  -   S-   U-   S-   U-   S-   n0 nUb  X6S'   U R                  [        R
                  U[        R                  " U5      US9$ )aI  
Create hard link.

:param instance_id:
    The id of instance
:type instance_id: string

:param db_name:
    The database name
:type db_name: string

:param table_name:
    The table name
:type table_name: string

:param config:
:type config: baidubce.BceClientConfiguration

:return: 

:rtype baidubce.bce_response.BceResponse

/instance/
/database/z/table/link	tableName)bodyr   )r   versionprefix_send_requestr   POSTjsondumps)r   r   r   r   r   pathr   s          r   lazydrop_create_hard_link#DdcClient.lazydrop_create_hard_link-   s    0   9#3#33
$%'346=>@MN! *!!,"3"3T

4@PY_!``r   c                     [         R                  [         R                  -   S-   U-   S-   U-   S-   U-   S-   nU R                  [        R
                  XTS9$ )aI  
Delete hard link.

:param instance_id:
    The id of instance
:type instance_id: string

:param db_name:
    The database name
:type db_name: string

:param table_name:
    The table name
:type table_name: string

:param config:
:type config: baidubce.BceClientConfiguration

:return: 

:rtype baidubce.bce_response.BceResponse
r   r   z/table/z/link)r   )r   r   r   r   r   DELETE)r   r   r   r   r   r"   s         r   lazydrop_delete_hard_link#DdcClient.lazydrop_delete_hard_linkM   ss    0   9#3#33
$%'346=>@IJLVWY`a !!,"5"5t!KKr   )r   log_typedatetimec                     S[         R                  -   S-   U-   S-   n0 nUb  X&S'   Ub  X6S'   U R                  [        R                  XVUS9$ )a7  
Delete hard link.

:param instance_id:
    The id of instance
:type instance_id: string

:param log_type:
    LogType
:type log_type: string

:param datetime:
    Datetime
:type datetime: string

:param config:
:type config: baidubce.BceClientConfiguration

:return: 

:rtype baidubce.bce_response.BceResponse
z/v2r   z/logslogTyper*   paramsr   )r   r   r   r   GET)r   r   r)   r*   r   r"   r.   s          r   list_log_by_instance_id!DdcClient.list_log_by_instance_idj   sc    0 y''',6DwN (9!):!!,"2"2DPV!WWr   )r   log_idc                     [         R                  [         R                  -   S-   U-   S-   U-   n0 nUb  X6S'   U R                  [        R
                  XVUS9$ )ad  
Delete hard link.

:param instance_id:
    The id of instance
:type instance_id: string

:param log_id:
    LogId
:type log_id: string

:param download_valid_time_in_sec:
    downloadValidTimeInSec
:type download_valid_time_in_sec: Integer

:param config:
:type config: baidubce.BceClientConfiguration

:return: 

:rtype baidubce.bce_response.BceResponse
r   z/logs/downloadValidTimeInSecr-   )r   r   r   r   r   r/   )r   r   r2   download_valid_time_in_secr   r"   r.   s          r   get_log_by_idDdcClient.get_log_by_id   sc    0   9#3#33lB[PS[[^dd%1/I+,!!,"2"2DPV!WWr   c                 r    U c  [         R                  n [        R                  " [         R                  U 5      $ )z1
:type prefix: string
:param prefix: path prefix
)r   r   r   
append_urir   )r   s    r   	_get_pathDdcClient._get_path   s-     >%%F	 1 16::r   c                     Uc  U R                   $ [        R                  " U R                   5      nUR                  U5        U$ )zH

:type config: baidubce.BceClientConfiguration
:param config:
:return:
)r   copymerge_non_none_values)r   r   
new_configs      r   _merge_configDdcClient._merge_config   s9     >;;4;;/J,,V4r   c           
          U R                  U5      nUc  [        R                  nUc  SSS.n[        R                  " U[
        R                  [        R                  U/XR                  5       X4U5      $ )z

:param http_method:
:param path:
:param body:
:param headers:
:param params:

:type config: baidubce.BceClientConfiguration
:param config:

:param body_parser:

:return: baidubce.BceResponse
s   */*s   application/json;charset=utf-8)s   Accepts   Content-Type)	r@   r   
parse_jsonr   send_requestr   signparse_errorencode)r   http_methodr"   r   headersr.   r   body_parsers           r   r   DdcClient._send_request   sp    " ##F+!,,K?"(;\]G++FM4F4F-4-@-@+,N,7W]_ 	_r    )N)NNNN)NNNNN)__name__
__module____qualname____firstlineno____doc__r   r   r   r	   strr#   r'   r0   r6   staticmethodr:   r@   r   __static_attributes__rL   r   r   r   r      s     GF- 3#CAa Ba> 3#CAL BL8 333@X AX@ 3.X /X: ; ; PT/3_r   r   )rQ   r=   r    baidubcer   baidubce.authr   baidubce.bce_base_clientr   baidubce.httpr   r   r   baidubce.utilsr	   r   rL   r   r   <module>rZ      s7       ' 2 ) ! & #|_ |_r   