com.tencentcloudapi.thpc.v20230321.models.ComputeNode Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of tencentcloud-sdk-java-thpc Show documentation
Show all versions of tencentcloud-sdk-java-thpc Show documentation
Tencent Cloud Open API SDK for Java
/*
* Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.tencentcloudapi.thpc.v20230321.models;
import com.tencentcloudapi.common.AbstractModel;
import com.tencentcloudapi.common.SSEResponseModel;
import com.google.gson.annotations.SerializedName;
import com.google.gson.annotations.Expose;
import java.util.HashMap;
public class ComputeNode extends AbstractModel {
/**
* 节点[计费类型](https://cloud.tencent.com/document/product/213/2180)。PREPAID:预付费,即包年包月 POSTPAID_BY_HOUR:按小时后付费 SPOTPAID:竞价付费 默认值:POSTPAID_BY_HOUR。
*/
@SerializedName("InstanceChargeType")
@Expose
private String InstanceChargeType;
/**
* 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月节点的购买时长、是否设置自动续费等属性。若指定节点的付费模式为预付费则该参数必传。
*/
@SerializedName("InstanceChargePrepaid")
@Expose
private InstanceChargePrepaid InstanceChargePrepaid;
/**
* 节点机型。不同实例机型指定了不同的资源规格。具体取值可通过调用接口[DescribeInstanceTypeConfigs](https://cloud.tencent.com/document/api/213/15749)来获得最新的规格表或参见[实例规格](https://cloud.tencent.com/document/product/213/11518)描述。
*/
@SerializedName("InstanceType")
@Expose
private String InstanceType;
/**
* 节点系统盘配置信息。若不指定该参数,则按照系统默认值进行分配。
*/
@SerializedName("SystemDisk")
@Expose
private SystemDisk SystemDisk;
/**
* 节点数据盘配置信息。若不指定该参数,则默认不购买数据盘。支持购买的时候指定21块数据盘,其中最多包含1块LOCAL_BASIC数据盘或者LOCAL_SSD数据盘,最多包含20块CLOUD_BASIC数据盘、CLOUD_PREMIUM数据盘或者CLOUD_SSD数据盘。
*/
@SerializedName("DataDisks")
@Expose
private DataDisk [] DataDisks;
/**
* 公网带宽相关信息设置。若不指定该参数,则默认公网带宽为0Mbps。
*/
@SerializedName("InternetAccessible")
@Expose
private InternetAccessible InternetAccessible;
/**
* 节点显示名称。不指定节点显示名称则默认显示‘未命名’。
最多支持60个字符。
*/
@SerializedName("InstanceName")
@Expose
private String InstanceName;
/**
* 实例所属项目ID。该参数可以通过调用 [DescribeProject](https://cloud.tencent.com/document/api/651/78725) 的返回值中的 projectId 字段来获取。不填为默认项目。
*/
@SerializedName("ProjectId")
@Expose
private Long ProjectId;
/**
* 实例资源类型,默认是CVM资源
*/
@SerializedName("ResourceType")
@Expose
private String ResourceType;
/**
* Get 节点[计费类型](https://cloud.tencent.com/document/product/213/2180)。PREPAID:预付费,即包年包月 POSTPAID_BY_HOUR:按小时后付费 SPOTPAID:竞价付费 默认值:POSTPAID_BY_HOUR。
* @return InstanceChargeType 节点[计费类型](https://cloud.tencent.com/document/product/213/2180)。PREPAID:预付费,即包年包月 POSTPAID_BY_HOUR:按小时后付费 SPOTPAID:竞价付费 默认值:POSTPAID_BY_HOUR。
*/
public String getInstanceChargeType() {
return this.InstanceChargeType;
}
/**
* Set 节点[计费类型](https://cloud.tencent.com/document/product/213/2180)。PREPAID:预付费,即包年包月 POSTPAID_BY_HOUR:按小时后付费 SPOTPAID:竞价付费 默认值:POSTPAID_BY_HOUR。
* @param InstanceChargeType 节点[计费类型](https://cloud.tencent.com/document/product/213/2180)。PREPAID:预付费,即包年包月 POSTPAID_BY_HOUR:按小时后付费 SPOTPAID:竞价付费 默认值:POSTPAID_BY_HOUR。
*/
public void setInstanceChargeType(String InstanceChargeType) {
this.InstanceChargeType = InstanceChargeType;
}
/**
* Get 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月节点的购买时长、是否设置自动续费等属性。若指定节点的付费模式为预付费则该参数必传。
* @return InstanceChargePrepaid 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月节点的购买时长、是否设置自动续费等属性。若指定节点的付费模式为预付费则该参数必传。
*/
public InstanceChargePrepaid getInstanceChargePrepaid() {
return this.InstanceChargePrepaid;
}
/**
* Set 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月节点的购买时长、是否设置自动续费等属性。若指定节点的付费模式为预付费则该参数必传。
* @param InstanceChargePrepaid 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月节点的购买时长、是否设置自动续费等属性。若指定节点的付费模式为预付费则该参数必传。
*/
public void setInstanceChargePrepaid(InstanceChargePrepaid InstanceChargePrepaid) {
this.InstanceChargePrepaid = InstanceChargePrepaid;
}
/**
* Get 节点机型。不同实例机型指定了不同的资源规格。具体取值可通过调用接口[DescribeInstanceTypeConfigs](https://cloud.tencent.com/document/api/213/15749)来获得最新的规格表或参见[实例规格](https://cloud.tencent.com/document/product/213/11518)描述。
* @return InstanceType 节点机型。不同实例机型指定了不同的资源规格。具体取值可通过调用接口[DescribeInstanceTypeConfigs](https://cloud.tencent.com/document/api/213/15749)来获得最新的规格表或参见[实例规格](https://cloud.tencent.com/document/product/213/11518)描述。
*/
public String getInstanceType() {
return this.InstanceType;
}
/**
* Set 节点机型。不同实例机型指定了不同的资源规格。具体取值可通过调用接口[DescribeInstanceTypeConfigs](https://cloud.tencent.com/document/api/213/15749)来获得最新的规格表或参见[实例规格](https://cloud.tencent.com/document/product/213/11518)描述。
* @param InstanceType 节点机型。不同实例机型指定了不同的资源规格。具体取值可通过调用接口[DescribeInstanceTypeConfigs](https://cloud.tencent.com/document/api/213/15749)来获得最新的规格表或参见[实例规格](https://cloud.tencent.com/document/product/213/11518)描述。
*/
public void setInstanceType(String InstanceType) {
this.InstanceType = InstanceType;
}
/**
* Get 节点系统盘配置信息。若不指定该参数,则按照系统默认值进行分配。
* @return SystemDisk 节点系统盘配置信息。若不指定该参数,则按照系统默认值进行分配。
*/
public SystemDisk getSystemDisk() {
return this.SystemDisk;
}
/**
* Set 节点系统盘配置信息。若不指定该参数,则按照系统默认值进行分配。
* @param SystemDisk 节点系统盘配置信息。若不指定该参数,则按照系统默认值进行分配。
*/
public void setSystemDisk(SystemDisk SystemDisk) {
this.SystemDisk = SystemDisk;
}
/**
* Get 节点数据盘配置信息。若不指定该参数,则默认不购买数据盘。支持购买的时候指定21块数据盘,其中最多包含1块LOCAL_BASIC数据盘或者LOCAL_SSD数据盘,最多包含20块CLOUD_BASIC数据盘、CLOUD_PREMIUM数据盘或者CLOUD_SSD数据盘。
* @return DataDisks 节点数据盘配置信息。若不指定该参数,则默认不购买数据盘。支持购买的时候指定21块数据盘,其中最多包含1块LOCAL_BASIC数据盘或者LOCAL_SSD数据盘,最多包含20块CLOUD_BASIC数据盘、CLOUD_PREMIUM数据盘或者CLOUD_SSD数据盘。
*/
public DataDisk [] getDataDisks() {
return this.DataDisks;
}
/**
* Set 节点数据盘配置信息。若不指定该参数,则默认不购买数据盘。支持购买的时候指定21块数据盘,其中最多包含1块LOCAL_BASIC数据盘或者LOCAL_SSD数据盘,最多包含20块CLOUD_BASIC数据盘、CLOUD_PREMIUM数据盘或者CLOUD_SSD数据盘。
* @param DataDisks 节点数据盘配置信息。若不指定该参数,则默认不购买数据盘。支持购买的时候指定21块数据盘,其中最多包含1块LOCAL_BASIC数据盘或者LOCAL_SSD数据盘,最多包含20块CLOUD_BASIC数据盘、CLOUD_PREMIUM数据盘或者CLOUD_SSD数据盘。
*/
public void setDataDisks(DataDisk [] DataDisks) {
this.DataDisks = DataDisks;
}
/**
* Get 公网带宽相关信息设置。若不指定该参数,则默认公网带宽为0Mbps。
* @return InternetAccessible 公网带宽相关信息设置。若不指定该参数,则默认公网带宽为0Mbps。
*/
public InternetAccessible getInternetAccessible() {
return this.InternetAccessible;
}
/**
* Set 公网带宽相关信息设置。若不指定该参数,则默认公网带宽为0Mbps。
* @param InternetAccessible 公网带宽相关信息设置。若不指定该参数,则默认公网带宽为0Mbps。
*/
public void setInternetAccessible(InternetAccessible InternetAccessible) {
this.InternetAccessible = InternetAccessible;
}
/**
* Get 节点显示名称。不指定节点显示名称则默认显示‘未命名’。
最多支持60个字符。
* @return InstanceName 节点显示名称。不指定节点显示名称则默认显示‘未命名’。
最多支持60个字符。
*/
public String getInstanceName() {
return this.InstanceName;
}
/**
* Set 节点显示名称。不指定节点显示名称则默认显示‘未命名’。
最多支持60个字符。
* @param InstanceName 节点显示名称。不指定节点显示名称则默认显示‘未命名’。
最多支持60个字符。
*/
public void setInstanceName(String InstanceName) {
this.InstanceName = InstanceName;
}
/**
* Get 实例所属项目ID。该参数可以通过调用 [DescribeProject](https://cloud.tencent.com/document/api/651/78725) 的返回值中的 projectId 字段来获取。不填为默认项目。
* @return ProjectId 实例所属项目ID。该参数可以通过调用 [DescribeProject](https://cloud.tencent.com/document/api/651/78725) 的返回值中的 projectId 字段来获取。不填为默认项目。
*/
public Long getProjectId() {
return this.ProjectId;
}
/**
* Set 实例所属项目ID。该参数可以通过调用 [DescribeProject](https://cloud.tencent.com/document/api/651/78725) 的返回值中的 projectId 字段来获取。不填为默认项目。
* @param ProjectId 实例所属项目ID。该参数可以通过调用 [DescribeProject](https://cloud.tencent.com/document/api/651/78725) 的返回值中的 projectId 字段来获取。不填为默认项目。
*/
public void setProjectId(Long ProjectId) {
this.ProjectId = ProjectId;
}
/**
* Get 实例资源类型,默认是CVM资源
* @return ResourceType 实例资源类型,默认是CVM资源
*/
public String getResourceType() {
return this.ResourceType;
}
/**
* Set 实例资源类型,默认是CVM资源
* @param ResourceType 实例资源类型,默认是CVM资源
*/
public void setResourceType(String ResourceType) {
this.ResourceType = ResourceType;
}
public ComputeNode() {
}
/**
* NOTE: Any ambiguous key set via .set("AnyKey", "value") will be a shallow copy,
* and any explicit key, i.e Foo, set via .setFoo("value") will be a deep copy.
*/
public ComputeNode(ComputeNode source) {
if (source.InstanceChargeType != null) {
this.InstanceChargeType = new String(source.InstanceChargeType);
}
if (source.InstanceChargePrepaid != null) {
this.InstanceChargePrepaid = new InstanceChargePrepaid(source.InstanceChargePrepaid);
}
if (source.InstanceType != null) {
this.InstanceType = new String(source.InstanceType);
}
if (source.SystemDisk != null) {
this.SystemDisk = new SystemDisk(source.SystemDisk);
}
if (source.DataDisks != null) {
this.DataDisks = new DataDisk[source.DataDisks.length];
for (int i = 0; i < source.DataDisks.length; i++) {
this.DataDisks[i] = new DataDisk(source.DataDisks[i]);
}
}
if (source.InternetAccessible != null) {
this.InternetAccessible = new InternetAccessible(source.InternetAccessible);
}
if (source.InstanceName != null) {
this.InstanceName = new String(source.InstanceName);
}
if (source.ProjectId != null) {
this.ProjectId = new Long(source.ProjectId);
}
if (source.ResourceType != null) {
this.ResourceType = new String(source.ResourceType);
}
}
/**
* Internal implementation, normal users should not use it.
*/
public void toMap(HashMap map, String prefix) {
this.setParamSimple(map, prefix + "InstanceChargeType", this.InstanceChargeType);
this.setParamObj(map, prefix + "InstanceChargePrepaid.", this.InstanceChargePrepaid);
this.setParamSimple(map, prefix + "InstanceType", this.InstanceType);
this.setParamObj(map, prefix + "SystemDisk.", this.SystemDisk);
this.setParamArrayObj(map, prefix + "DataDisks.", this.DataDisks);
this.setParamObj(map, prefix + "InternetAccessible.", this.InternetAccessible);
this.setParamSimple(map, prefix + "InstanceName", this.InstanceName);
this.setParamSimple(map, prefix + "ProjectId", this.ProjectId);
this.setParamSimple(map, prefix + "ResourceType", this.ResourceType);
}
}