
    9i                         S 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  \R                   " \5      r " S S\5      rg)z/
This module provides a client class for TSDB.
    N)bce_v1_signer)BceBaseClient)bce_http_client)handler)http_content_types)http_headers)http_methods)tsdb_handlerc                   ^    \ rS rSrSrSS jr   SS jrS rS rS r	S	 r
     SS
 jrSrg)TsdbAdminClient"   z
sdk client
Nc                 0    [         R                  " X5        g N)r   __init__)selfconfigs     h/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/baidubce/services/tsdb/tsdb_admin_client.pyr   TsdbAdminClient.__init__&   s    t,    c           	         SnSU0n	[         R                  " UR                  5       UR                  5       UUUUR                  5       S.5      R                  S5      n
U R	                  [
        R                  XU	[        R                  S9$ )a  
create_database

:param client_token: a unique id for idempotence
:type client_token: string
:param database_name: name of database
:type database_name: string
:param description: optional, description for database
:type description: string
:param ingest_datapoints_monthly: max ingest datapoints count per month,unit Million
:type ingest_datapoints_monthly: int
:param store_bytes_quota: optional, unit GB
:type store_bytes_quota: int
:param purchase_length: purchase length, unit Month
:type purchase_length: int
:param coupon_name: optional, coupon number
:type coupon_name: type

:return: {database_id:,charge:,expired_time:order_id:}
:rtype: baidubce.bce_response.BceResponse
   /v1/databaseclientToken)databaseNamedescriptioningestDataPointsMonthlystoreBytesQuotapurchaseLength
couponNamezutf-8)pathbodyparamsbody_parser)	jsondumpsdecodeencode_send_requestr	   POSTr
   
parse_json)r   client_tokendatabase_nameingest_datapoints_monthlypurchase_lengthr   store_bytes_quotacoupon_namer   r!   r    s              r   create_databaseTsdbAdminClient.create_database)   s    > .zz)002&--/'@0-%,,.
  6'? 	 !!,"3"3$)/\=T=T " V 	Vr   c                 f    SU-   nU R                  [        R                  U[        R                  S9$ )z
delete database

:param database_id: database id to delete
:type database_id: string

:return: bce_request_id
:rtype: baidubce.bce_response.BceResponses
   /v1/database/r"   )r'   r	   DELETEr
   r)   r   database_idr   s      r   delete_databaseTsdbAdminClient.delete_databaseU   s2      +-!!,"5"5tI`I`!aar   c                 f    SU-   nU R                  [        R                  U[        R                  S9$ )z
get database

:param database_id: database id to delete
:type database_id: string

:return: database info
:rtype: baidubce.bce_response.BceResponse
r3   r4   r'   r	   GETr
   r)   r6   s      r   get_databaseTsdbAdminClient.get_databaseb   s2      +-!!,"2"2DlF]F]!^^r   c                 `    SnU R                  [        R                  U[        R                  S9$ )zU
get all databases

:return: database dict
:rtype: baidubce.bce_response.BceResponse
r   r4   r;   )r   r   s     r   get_all_databases!TsdbAdminClient.get_all_databasesp   s-     !!,"2"2DlF]F]!^^r   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TsdbAdminClient._merge_config{   s7    >;;4;;/J,,V4r   c           
         U R                  U5      nUc   [        R                  [        R                  0nUc  [
        R                  n[        R                  " U[        R                  [
        R                  U/XX5U5      $ r   )rF   r   CONTENT_TYPEr   JSONr   r)   r   send_requestr   signparse_error)r   http_methodr   r    r!   headersr   r"   s           r   r'   TsdbAdminClient._send_request   ss     ##F+?#002D2I2IJG!,,K++M&&)<)<k(Jtf6 	6r    r   )NNN)NNNNN)__name__
__module____qualname____firstlineno____doc__r   r0   r8   r=   r@   rF   r'   __static_attributes__rQ   r   r   r   r   "   sK    - "*VXb_	_ 6r   r   )rV   rC   r#   loggingbaidubce.authr   baidubce.bce_base_clientr   baidubce.httpr   r   r   r   r	   baidubce.services.tsdbr
   	getLoggerrR   _loggerr   rQ   r   r   <module>r_      sM       ' 2 ) ! , & & / 

H
%o6m o6r   