
    _i                         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 " S S\5      rg)z*
This module provides models for BCC-SDK.
c                   "    \ rS rSrSrSS jrSrg)Billing   a  
This class define billing.
param: paymentTiming: 
        The pay time of the payment,
        see more detail in https://bce.baidu.com/doc/BCC/API.html#Billing
param: reservationLength: 
        The duration to buy in specified time unit,
        available values are [1,2,3,4,5,6,7,8,9,12,24,36] now.
param: reservationTimeUnit: 
        The time unit to specify the duration ,only "Month" can be used now.
Nc                 2    U(       a  Xl         UUS.U l        g )N)reservationLengthreservationTimeUnitpaymentTimingreservation)selfr	   r   r   s       [/var/www/html/land-ocr/venv/lib/python3.13/site-packages/baidubce/services/bcc/bcc_model.py__init__Billing.__init__$   s    !.!2#6
    r   )N   Month__name__
__module____qualname____firstlineno____doc__r   __static_attributes__ r   r   r   r      s    

r   r   c                   "    \ rS rSrSrSS jrSrg)EphemeralDisk-   z
This class define detail of creating ephemeral volume.
param: sizeInGB:
    The size of volume in GB.
    param: storageType:
            The storage type of volume,
            see more detail in https://bce.baidu.com/doc/BCC/API.html#StorageType
c                     Xl         X l        g NsizeInGBstorageType)r   r    r!   s      r   r   EphemeralDisk.__init__7   s     &r   r   N)satar   r   r   r   r   r   -   s    'r   r   c                   "    \ rS rSrSrSS jrSrg)CreateCdsModel<   a/  
This class define detail of creating volume.
param: cdsSizeInGB: 
        The size of volume in GB.
param: storageType: 
        The storage type of volume, 
        see more detail in https://bce.baidu.com/doc/BCC/API.html#StorageType
param: snapshotId: 
        The id of snapshot.
param: encryptKey
Nc                 @    Xl         X l        X0l        X@l        XPl        g r   )cdsSizeInGBr!   
snapshotId
encryptKeydeleteWithInstance)r   r(   r!   r)   r*   r+   s         r   r   CreateCdsModel.__init__I   s    &&$$"4r   )r(   r+   r*   r)   r!   )Nhp1NNNr   r   r   r   r%   r%   <   s    
5r   r%   c                   (    \ rS rSrSr   SS jrSrg)SecurityGroupRuleModelQ   a|  
This class define the rule of the securitygroup.
param: remark: 
        The remark for the rule.
param: direction: 
        The parameter to define the rule direction,available value are "ingress/egress".
param: ethertype: 
        The ethernet protocol.
param: portRange: 
        The port range to specify the port which the rule will work on.
        Available range is rang [0, 65535], the fault value is "" for all port.
param: protocol: 
        The parameter specify which protocol will the rule work on, the fault value is "" for all protocol.
        Available protocol are tcp, udp and icmp.
param: sourceGroupId: 
        The id of source securitygroup.
        Only works for direction = "ingress".
param: sourceIp: 
        The source ip range with CIDR formats. The default value 0.0.0.0/0 (allow all ip address),
        other supported formats such as {ip_addr}/12 or {ip_addr}. Only supports IPV4.
        Only works for  direction = "ingress".
param: destGroupId: 
        The id of destination securitygroup.
        Only works for  direction = "egress".
param: destIp: 
        The destination ip range with CIDR formats. The default value 0.0.0.0/0 (allow all ip address),
        other supported formats such as {ip_addr}/12 or {ip_addr}. Only supports IPV4.
        Only works for  direction = "egress".
param: securityGroupId: 
        The id of the securitygroup for the rule.
Nc                 |    Xl         X l        X0l        X@l        XPl        X`l        Xpl        Xl        Xl        Xl	        g r   )
remark	direction	ethertype	portRangeprotocolsourceGroupIdsourceIpdestGroupIddestIpsecurityGroupId)r   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   s              r   r   SecurityGroupRuleModel.__init__r   s9     """ * &.r   )
r9   r:   r3   r4   r5   r6   r2   r;   r7   r8   )
NNNNNNNNNNr   r   r   r   r/   r/   Q   s    @ OS\`!%/r   r/   c                   "    \ rS rSrSrSS jrSrg)TagModel   z

TAGModel
Nc                     Xl         X l        g r   tagKeytagValue)r   rB   rC   s      r   r   TagModel.__init__   s     r   rA   NNr   r   r   r   r>   r>      s    !r   r>   c                   &    \ rS rSrSr  SS jrSrg)PayTimingChangeReqModel   z0
This class define detail of change pay timing.
Nc	                 d    Xl         X l        X0l        Xl        X@l        XPl        X`l        Xpl        g r   )
instanceIdrelationCdscdsListeffectiveTypedurationautoPay	autoRenewautoRenewPeriod)	r   rJ   rK   rL   rN   rO   rP   rQ   rM   s	            r   r    PayTimingChangeReqModel.__init__   s-    $&* ".r   )rO   rP   rQ   rL   rN   rM   rJ   rK   )FNNTNNNr   r   r   r   rG   rG      s     \`EI	/r   rG   c                       \ rS rSrSrS rSrg)DestRegionInfoModel   z-
This class define for snapshot remote copy.
c                     Xl         X l        g r   
destRegionname)r   rX   rY   s      r   r   DestRegionInfoModel.__init__   s    $	r   rW   Nr   r   r   r   rT   rT      s    r   rT   c                   "    \ rS rSrSrSS jrSrg)AutoSnapshotPolicyModel   z)
This class define auto snapshot policy.
Nc                 4    Xl         X l        X0l        X@l        g r   )rY   
timePointsrepeatWeekdaysretentionDays)r   rY   r_   r`   ra   s        r   r    AutoSnapshotPolicyModel.__init__   s    	$,*r   )rY   r`   ra   r_   r   r   r   r   r   r\   r\      s    +r   r\   c                   "    \ rS rSrSrSS jrSrg)ModifyReservedInstanceModel   z
ModifyReservedInstanceModel
Nc                 4    Xl         X l        X0l        X@l        g r   )reservedInstanceIdzoneNamereservedInstanceNameehcClusterId)r   rg   rh   ri   rj   s        r   r   $ModifyReservedInstanceModel.__init__   s    "4 $8!(r   )rj   rg   ri   rh   NNNNr   r   r   r   rd   rd      s    )r   rd   c                   "    \ rS rSrSrSS jrSrg)CdsCustomPeriod   z"
This class define custom period.
Nc                     Xl         X l        g r   periodvolumeId)r   rr   	volume_ids      r   r   CdsCustomPeriod.__init__   s    !r   rq   rE   r   r   r   r   rn   rn      s    "r   rn   c                   "    \ rS rSrSrSS jrSrg)FileSystemModel   z 
This class define file system.
Nc                 4    Xl         X l        X0l        X@l        g r   fsIdmountAdspathr6   )r   r{   r|   r}   r6   s        r   r   FileSystemModel.__init__   s    	 	 r   rz   rl   r   r   r   r   rw   rw      s    !r   rw   N)r   objectr   r   r%   r/   r>   rG   rT   r\   rd   rn   rw   r   r   r   <module>r      s   $

f 
,'F '5V 5*-/V -/`!v !/f /"& 	+f 	+	)& 	)"f "	!f 	!r   