
    9i5!                         S r  " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S	 S
\5      r " S S\5      r " S S\5      r " S S\5      r	 " S S\5      r
 " S S\5      rg)z,
This module provides a model class for AS.
c                   ,   ^  \ rS rSrSrU 4S jrSrU =r$ )Config   zE
This class defines the Config object within AutoScalingGroupConfig.
c                 J   > [         [        U ]  5         XS'   X S'   X0S'   X@S'   g)a)  
:param min_node_num: Minimum number of nodes in the auto scaling group
:type min_node_num: int
:param expect_num: Expected number of nodes in the auto scaling group
:type expect_num: int
...
:param cooldown_in_sec: Cooldown period in seconds for the auto scaling group
:type cooldown_in_sec: int

minNodeNum	expectNum
maxNodeNumcooldownInSecN)superr   __init__)selfmin_node_num
expect_nummax_node_numcooldown_in_sec	__class__s        f/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/baidubce/services/autoscaling/as_model.pyr   Config.__init__   s2     	fd$&)\&[)\ /_     __name__
__module____qualname____firstlineno____doc__r   __static_attributes____classcell__r   s   @r   r   r      s    0 0r   r   c                   ,   ^  \ rS rSrSrU 4S jrSrU =r$ )HealthCheck   zJ
This class defines the HealthCheck object within AutoScalingGroupConfig.
c                 :   > [         [        U ]  5         XS'   X S'   g)z
:param health_check_interval: Interval for health checks in seconds
:type health_check_interval: int
:param grace_time: Grace period for health checks in seconds
:type grace_time: int
healthCheckInterval	graceTimeN)r
   r    r   )r   health_check_interval
grace_timer   s      r   r   HealthCheck.__init__!   s#     	k4)+&;"#&[r   r   r   r   s   @r   r    r       s    	' 	'r   r    c                   ,   ^  \ rS rSrSrU 4S jrSrU =r$ )ZoneInfo-   z)
This class defines the ZoneInfo object.
c                 :   > [         [        U ]  5         XS'   X S'   g)z`
:param zone: Zone information
:type zone: str
:param subnet_id: Subnet ID
:type subnet_id: str
zonesubnetIdN)r
   r)   r   )r   r,   	subnet_idr   s      r   r   ZoneInfo.__init__2   s!     	h&(V$Zr   r   r   r   s   @r   r)   r)   -       	% 	%r   r)   c                   ,   ^  \ rS rSrSrU 4S jrSrU =r$ )AssignTagInfo>   z.
This class defines the AssignTagInfo object.
c                 :   > [         [        U ]  5         XS'   X S'   g)z^
:param relation_tag: Relation tag
:type relation_tag: str
:param tags: Tags
:type tags: list
relationTagtagsN)r
   r2   r   )r   relation_tagr6   r   s      r   r   AssignTagInfo.__init__C   s!     	mT+-*]Vr   r   r   r   s   @r   r2   r2   >   s    	 	r   r2   c                   ,   ^  \ rS rSrSrU 4S jrSrU =r$ )TagO   z$
This class defines the Tag object.
c                 :   > [         [        U ]  5         XS'   X S'   g)z]
:param tag_key: Tag Key
:type tag_key: str
:param tag_value: Tag Value
:type tag_value: str
tagKeytagValueN)r
   r:   r   )r   tag_key	tag_valuer   s      r   r   Tag.__init__T   s!     	c4!# X$Zr   r   r   r   s   @r   r:   r:   O   r0   r   r:   c                   ,   ^  \ rS rSrSrU 4S jrSrU =r$ )Node`   z%
This class defines the Node object.
c                    > [         [        U ]  5         XS'   X S'   X0S'   X@S'   XPS'   X`S'   XpS'   XS'   XS	'   XS
'   XS'   XS'   XS'   XS'   XS'   UU S'   UU S'   UU S'   UU S'   g)a  
:param cpu_count: The number of CPU cores
:type cpu_count: int
:param memory_capacity_in_gb: The capacity of the memory in GB
:type memory_capacity_in_gb: int
:param sys_disk_type: The type of the system disk
:type sys_disk_type: str
:param sys_disk_in_gb: The capacity of the system disk in GB
:type sys_disk_in_gb: int
:param instance_type: The type of the instance
:type instance_type: str
:param product_type: The type of the product
:type product_type: str
:param image_id: The ID of the image
:type image_id: str
:param image_type: The type of the image
:type image_type: str
:param os_type: The type of the operating system
:type os_type: str
:param security_group_id: The ID of the security group
:type security_group_id: str
:param spec: The specification
:type spec: str
:param ephemeral_disks: The ephemeral disks
:type ephemeral_disks: list
:param asp_id: The ID of the ASP
:type asp_id: str
:param priorities: The priorities
:type priorities: list
:param zone_subnet: The subnet of the zone
:type zone_subnet: str
:param total_count: The total count
:type total_count: int
:param bid_model: The model of the bid
:type bid_model: str
:param bid_price: The price of the bid
:type bid_price: float
:param cds: The CDS
:type cds: list
cpuCountmemoryCapacityInGBsysDiskTypesysDiskInGBinstanceTypeproductTypeimageId	imageTypeosTypesecurityGroupIdspecephemeralDisksaspId
priorities
zoneSubnet
totalCountbidModelbidPricecdsN)r
   rC   r   )r   	cpu_countmemory_capacity_in_gbsys_disk_typesys_disk_in_gbinstance_typeproduct_typeimage_id
image_typeos_typesecurity_group_idrP   ephemeral_disksasp_idrS   zone_subnettotal_count	bid_model	bid_pricerX   r   s                       r   r   Node.__init__e   s    V 	dD"$$Z%:!"+],],^*]"Y&[ X"3V!0W'\(\(\$Z$ZUr   r   r   r   s   @r   rC   rC   `   s    > >r   rC   c                   ,   ^  \ rS rSrSrU 4S jrSrU =r$ )Eip   z%
This class defines EIP information.
c                 B   > [         [        U ]  5         XS'   X S'   X0S'   g)z
:param if_bind_eip: if bind eip
:type if_bind_eip: bool
:param bandwidth_in_mbps: bandwidth_in_mbps
:type bandwidth_in_mbps: int
:param eip_product_type: eip_product_type
:type eip_product_type: string
	ifBindEipbandwidthInMbpseipProductTypeN)r
   rk   r   )r   if_bind_eipbandwidth_in_mbpseip_product_typer   s       r   r   Eip.__init__   s,     	c4!#'["3!1r   r   r   r   s   @r   rk   rk      s    2 2r   rk   c                   ,   ^  \ rS rSrSrU 4S jrSrU =r$ )Billing   z(
This class defines the Billing object.
c                 2   > [         [        U ]  5         XS'   g)zL
:param payment_timing: The timing of the payment
:type payment_timing: str
paymentTimingN)r
   rv   r   )r   payment_timingr   s     r   r   Billing.__init__   s    
 	gt%' ._r   r   r   r   s   @r   rv   rv      s    / /r   rv   c                   ,   ^  \ rS rSrSrU 4S jrSrU =r$ )	CmdConfig   z*
This class defines the CmdConfig object.
c                 z   > [         [        U ]  5         XS'   X S'   X0S'   X@S'   XPS'   X`S'   XpS'   XS'   XS	'   XS
'   g)aC  
:param has_decrease_cmd: If has decrease command
:type has_decrease_cmd: bool
:param dec_cmd_strategy: The strategy of the decrease command
:type dec_cmd_strategy: str
:param dec_cmd_data: The data of the decrease command
:type dec_cmd_data: str
:param dec_cmd_timeout: The timeout of the decrease command
:type dec_cmd_timeout: int
:param dec_cmd_manual: If the decrease command is manual
:type dec_cmd_manual: bool
:param has_increase_cmd: If has increase command
:type has_increase_cmd: bool
:param inc_cmd_strategy: The strategy of the increase command
:type inc_cmd_strategy: str
:param inc_cmd_data: The data of the increase command
:type inc_cmd_data: str
:param inc_cmd_timeout: The timeout of the increase command
:type inc_cmd_timeout: int
:param inc_cmd_manual: If the increase command is manual
:type inc_cmd_manual: bool
hasDecreaseCmddecCmdStrategy
decCmdDatadecCmdTimeoutdecCmdManualhasIncreaseCmdincCmdStrategy
incCmdDataincCmdTimeoutincCmdManualN)r
   r}   r   )r   has_decrease_cmddec_cmd_strategydec_cmd_datadec_cmd_timeoutdec_cmd_manualhas_increase_cmdinc_cmd_strategyinc_cmd_datainc_cmd_timeoutinc_cmd_manualr   s              r   r   CmdConfig.__init__   sf    0 	i')!1!1)\ /_-^!1!1)\ /_-^r   r   r   r   s   @r   r}   r}      s    ". ".r   r}   c                   ,   ^  \ rS rSrSrU 4S jrSrU =r$ )BccNameConfig   z.
This class defines the BccNameConfig object.
c                 :   > [         [        U ]  5         XS'   X S'   g)z
:param bcc_name: The name of the BCC
:type bcc_name: str
:param bcc_hostname: The hostname of the BCC
:type bcc_hostname: str
bccNamebccHostnameN)r
   r   r   )r   bcc_namebcc_hostnamer   s      r   r   BccNameConfig.__init__   s!     	mT+-"Y*]r   r   r   r   s   @r   r   r      s    	+ 	+r   r   N)r   dictr   r    r)   r2   r:   rC   rk   rv   r}   r   r   r   r   <module>r      s   
0T 0,'$ '"%t %"D "%$ %"C4 CL2$ 2(/d /'. '.T+D +r   