huaweicloud-sdk-python-v3/huaweicloud-sdk-ecs/huaweicloudsdkecs/v2/model/pre_paid_server_extend_para...

376 lines
15 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# coding: utf-8
import pprint
import re
import six
class PrePaidServerExtendParam(object):
"""
Attributes:
openapi_types (dict): The key is attribute name
and the value is attribute type.
attribute_map (dict): The key is attribute name
and the value is json key in definition.
"""
sensitive_list = []
openapi_types = {
'charging_mode': 'str',
'region_id': 'str',
'period_type': 'str',
'period_num': 'int',
'is_auto_renew': 'str',
'is_auto_pay': 'str',
'enterprise_project_id': 'str',
'support_auto_recovery': 'bool',
'market_type': 'str',
'spot_price': 'str',
'disk_prior': 'str'
}
attribute_map = {
'charging_mode': 'chargingMode',
'region_id': 'regionID',
'period_type': 'periodType',
'period_num': 'periodNum',
'is_auto_renew': 'isAutoRenew',
'is_auto_pay': 'isAutoPay',
'enterprise_project_id': 'enterprise_project_id',
'support_auto_recovery': 'support_auto_recovery',
'market_type': 'marketType',
'spot_price': 'spotPrice',
'disk_prior': 'diskPrior'
}
def __init__(self, charging_mode=None, region_id=None, period_type=None, period_num=None, is_auto_renew=None, is_auto_pay=None, enterprise_project_id='0', support_auto_recovery=False, market_type=None, spot_price=None, disk_prior=None): # noqa: E501
"""PrePaidServerExtendParam - a model defined in huaweicloud sdk"""
self._charging_mode = None
self._region_id = None
self._period_type = None
self._period_num = None
self._is_auto_renew = None
self._is_auto_pay = None
self._enterprise_project_id = None
self._support_auto_recovery = None
self._market_type = None
self._spot_price = None
self._disk_prior = None
self.discriminator = None
if charging_mode is not None:
self.charging_mode = charging_mode
if region_id is not None:
self.region_id = region_id
if period_type is not None:
self.period_type = period_type
if period_num is not None:
self.period_num = period_num
if is_auto_renew is not None:
self.is_auto_renew = is_auto_renew
if is_auto_pay is not None:
self.is_auto_pay = is_auto_pay
if enterprise_project_id is not None:
self.enterprise_project_id = enterprise_project_id
if support_auto_recovery is not None:
self.support_auto_recovery = support_auto_recovery
if market_type is not None:
self.market_type = market_type
if spot_price is not None:
self.spot_price = spot_price
if disk_prior is not None:
self.disk_prior = disk_prior
@property
def charging_mode(self):
"""Gets the charging_mode of this PrePaidServerExtendParam.
计费模式。 功能说明:付费方式 取值范围: - prePaid-预付费,即包年包月; - postPaid-后付费,即按需付费; - 默认值是postPaid > 说明: > > 当chargingMode为prePaid即创建包年包月付费的云服务器且使用SSH秘钥方式登录云服务器时metadata 中的 op_svc_userid 字段为必选字段。
:return: The charging_mode of this PrePaidServerExtendParam.
:rtype: str
"""
return self._charging_mode
@charging_mode.setter
def charging_mode(self, charging_mode):
"""Sets the charging_mode of this PrePaidServerExtendParam.
计费模式。 功能说明:付费方式 取值范围: - prePaid-预付费,即包年包月; - postPaid-后付费,即按需付费; - 默认值是postPaid > 说明: > > 当chargingMode为prePaid即创建包年包月付费的云服务器且使用SSH秘钥方式登录云服务器时metadata 中的 op_svc_userid 字段为必选字段。
:param charging_mode: The charging_mode of this PrePaidServerExtendParam.
:type: str
"""
self._charging_mode = charging_mode
@property
def region_id(self):
"""Gets the region_id of this PrePaidServerExtendParam.
云服务器所在区域ID。 请参考[地区和终端节点](https://developer.huaweicloud.com/endpoint)获取。
:return: The region_id of this PrePaidServerExtendParam.
:rtype: str
"""
return self._region_id
@region_id.setter
def region_id(self, region_id):
"""Sets the region_id of this PrePaidServerExtendParam.
云服务器所在区域ID。 请参考[地区和终端节点](https://developer.huaweicloud.com/endpoint)获取。
:param region_id: The region_id of this PrePaidServerExtendParam.
:type: str
"""
self._region_id = region_id
@property
def period_type(self):
"""Gets the period_type of this PrePaidServerExtendParam.
订购周期类型。 取值范围: - month-月 - year-年 > 说明: > > chargingMode为prePaid时生效且为必选值。
:return: The period_type of this PrePaidServerExtendParam.
:rtype: str
"""
return self._period_type
@period_type.setter
def period_type(self, period_type):
"""Sets the period_type of this PrePaidServerExtendParam.
订购周期类型。 取值范围: - month-月 - year-年 > 说明: > > chargingMode为prePaid时生效且为必选值。
:param period_type: The period_type of this PrePaidServerExtendParam.
:type: str
"""
self._period_type = period_type
@property
def period_num(self):
"""Gets the period_num of this PrePaidServerExtendParam.
订购周期数。 取值范围: - periodType=month周期类型为月取值为[19] - periodType=year周期类型为年取值为[13] > 说明: > > chargingMode为prePaid时生效且为必选值。 > > periodNum为正整数。
:return: The period_num of this PrePaidServerExtendParam.
:rtype: int
"""
return self._period_num
@period_num.setter
def period_num(self, period_num):
"""Sets the period_num of this PrePaidServerExtendParam.
订购周期数。 取值范围: - periodType=month周期类型为月取值为[19] - periodType=year周期类型为年取值为[13] > 说明: > > chargingMode为prePaid时生效且为必选值。 > > periodNum为正整数。
:param period_num: The period_num of this PrePaidServerExtendParam.
:type: int
"""
self._period_num = period_num
@property
def is_auto_renew(self):
"""Gets the is_auto_renew of this PrePaidServerExtendParam.
是否自动续订。 - “true”自动续订 - “false”不自动续订 > 说明: > > chargingMode为prePaid时生效不传该字段时默认为不自动续订。
:return: The is_auto_renew of this PrePaidServerExtendParam.
:rtype: str
"""
return self._is_auto_renew
@is_auto_renew.setter
def is_auto_renew(self, is_auto_renew):
"""Sets the is_auto_renew of this PrePaidServerExtendParam.
是否自动续订。 - “true”自动续订 - “false”不自动续订 > 说明: > > chargingMode为prePaid时生效不传该字段时默认为不自动续订。
:param is_auto_renew: The is_auto_renew of this PrePaidServerExtendParam.
:type: str
"""
self._is_auto_renew = is_auto_renew
@property
def is_auto_pay(self):
"""Gets the is_auto_pay of this PrePaidServerExtendParam.
下单订购后,是否自动从客户的账户中支付,而不需要客户手动去进行支付。 - “true”自动支付 - “false”需要客户手动支付 > 说明: > > chargingMode为prePaid时生效不传该字段时默认为客户手动支付。
:return: The is_auto_pay of this PrePaidServerExtendParam.
:rtype: str
"""
return self._is_auto_pay
@is_auto_pay.setter
def is_auto_pay(self, is_auto_pay):
"""Sets the is_auto_pay of this PrePaidServerExtendParam.
下单订购后,是否自动从客户的账户中支付,而不需要客户手动去进行支付。 - “true”自动支付 - “false”需要客户手动支付 > 说明: > > chargingMode为prePaid时生效不传该字段时默认为客户手动支付。
:param is_auto_pay: The is_auto_pay of this PrePaidServerExtendParam.
:type: str
"""
self._is_auto_pay = is_auto_pay
@property
def enterprise_project_id(self):
"""Gets the enterprise_project_id of this PrePaidServerExtendParam.
企业项目ID。 > 说明: > > 关于企业项目ID的获取及企业项目特性的详细信息请参见《[企业管理服务用户指南](https://support.huaweicloud.com/usermanual-em/zh-cn_topic_0126101490.html)》。 > > 该字段不传或传为字符串“0”则将资源绑定给默认企业项目。
:return: The enterprise_project_id of this PrePaidServerExtendParam.
:rtype: str
"""
return self._enterprise_project_id
@enterprise_project_id.setter
def enterprise_project_id(self, enterprise_project_id):
"""Sets the enterprise_project_id of this PrePaidServerExtendParam.
企业项目ID。 > 说明: > > 关于企业项目ID的获取及企业项目特性的详细信息请参见《[企业管理服务用户指南](https://support.huaweicloud.com/usermanual-em/zh-cn_topic_0126101490.html)》。 > > 该字段不传或传为字符串“0”则将资源绑定给默认企业项目。
:param enterprise_project_id: The enterprise_project_id of this PrePaidServerExtendParam.
:type: str
"""
self._enterprise_project_id = enterprise_project_id
@property
def support_auto_recovery(self):
"""Gets the support_auto_recovery of this PrePaidServerExtendParam.
是否配置弹性云服务器自动恢复的功能。 - “true”配置该功能 - “false”不配置该功能 > 说明: > > 此参数为boolean类型若传入非boolean类型字符程序将按照【“false”不配置该功能】方式处理。 > > 当marketType为spot时不支持该功能。
:return: The support_auto_recovery of this PrePaidServerExtendParam.
:rtype: bool
"""
return self._support_auto_recovery
@support_auto_recovery.setter
def support_auto_recovery(self, support_auto_recovery):
"""Sets the support_auto_recovery of this PrePaidServerExtendParam.
是否配置弹性云服务器自动恢复的功能。 - “true”配置该功能 - “false”不配置该功能 > 说明: > > 此参数为boolean类型若传入非boolean类型字符程序将按照【“false”不配置该功能】方式处理。 > > 当marketType为spot时不支持该功能。
:param support_auto_recovery: The support_auto_recovery of this PrePaidServerExtendParam.
:type: bool
"""
self._support_auto_recovery = support_auto_recovery
@property
def market_type(self):
"""Gets the market_type of this PrePaidServerExtendParam.
创建竞价实例时需指定该参数的值为“spot”。 > 说明: > > 当chargingMode=postPaid且marketType=spot时此参数生效。
:return: The market_type of this PrePaidServerExtendParam.
:rtype: str
"""
return self._market_type
@market_type.setter
def market_type(self, market_type):
"""Sets the market_type of this PrePaidServerExtendParam.
创建竞价实例时需指定该参数的值为“spot”。 > 说明: > > 当chargingMode=postPaid且marketType=spot时此参数生效。
:param market_type: The market_type of this PrePaidServerExtendParam.
:type: str
"""
self._market_type = market_type
@property
def spot_price(self):
"""Gets the spot_price of this PrePaidServerExtendParam.
用户愿意为竞价实例每小时支付的最高价格。 > 说明: > > 仅chargingMode=postPaid且marketType=spot时该参数设置后生效。 > > 当chargingMode=postPaid且marketType=spot时如果不传递spotPrice或者传递一个空字符串默认使用按需购买的价格作为竞价。
:return: The spot_price of this PrePaidServerExtendParam.
:rtype: str
"""
return self._spot_price
@spot_price.setter
def spot_price(self, spot_price):
"""Sets the spot_price of this PrePaidServerExtendParam.
用户愿意为竞价实例每小时支付的最高价格。 > 说明: > > 仅chargingMode=postPaid且marketType=spot时该参数设置后生效。 > > 当chargingMode=postPaid且marketType=spot时如果不传递spotPrice或者传递一个空字符串默认使用按需购买的价格作为竞价。
:param spot_price: The spot_price of this PrePaidServerExtendParam.
:type: str
"""
self._spot_price = spot_price
@property
def disk_prior(self):
"""Gets the disk_prior of this PrePaidServerExtendParam.
是否支持先创建卷,再创建虚拟机。 “true”配置该功能 “false”不配置该功能
:return: The disk_prior of this PrePaidServerExtendParam.
:rtype: str
"""
return self._disk_prior
@disk_prior.setter
def disk_prior(self, disk_prior):
"""Sets the disk_prior of this PrePaidServerExtendParam.
是否支持先创建卷,再创建虚拟机。 “true”配置该功能 “false”不配置该功能
:param disk_prior: The disk_prior of this PrePaidServerExtendParam.
:type: str
"""
self._disk_prior = disk_prior
def to_dict(self):
"""Returns the model properties as a dict"""
result = {}
for attr, _ in six.iteritems(self.openapi_types):
value = getattr(self, attr)
if isinstance(value, list):
result[attr] = list(map(
lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
value
))
elif hasattr(value, "to_dict"):
result[attr] = value.to_dict()
elif isinstance(value, dict):
result[attr] = dict(map(
lambda item: (item[0], item[1].to_dict())
if hasattr(item[1], "to_dict") else item,
value.items()
))
else:
if attr in self.sensitive_list:
result[attr] = "****"
else:
result[attr] = value
return result
def to_str(self):
"""Returns the string representation of the model"""
return pprint.pformat(self.to_dict())
def __repr__(self):
"""For `print` and `pprint`"""
return self.to_str()
def __eq__(self, other):
"""Returns true if both objects are equal"""
if not isinstance(other, PrePaidServerExtendParam):
return False
return self.__dict__ == other.__dict__
def __ne__(self, other):
"""Returns true if both objects are not equal"""
return not self == other