com.tencentcloudapi.thpc.v20230321.models.ExpansionNodeConfig 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 ExpansionNodeConfig extends AbstractModel {
/**
* 扩容实例所在的位置。
*/
@SerializedName("Placement")
@Expose
private Placement Placement;
/**
* 节点[计费类型](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("VirtualPrivateCloud")
@Expose
private VirtualPrivateCloud VirtualPrivateCloud;
/**
* 实例所属项目ID。该参数可以通过调用 [DescribeProject](https://cloud.tencent.com/document/api/651/78725) 的返回值中的 projectId 字段来获取。不填为默认项目。
*/
@SerializedName("ProjectId")
@Expose
private Long ProjectId;
/**
* Get 扩容实例所在的位置。
* @return Placement 扩容实例所在的位置。
*/
public Placement getPlacement() {
return this.Placement;
}
/**
* Set 扩容实例所在的位置。
* @param Placement 扩容实例所在的位置。
*/
public void setPlacement(Placement Placement) {
this.Placement = Placement;
}
/**
* 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 VirtualPrivateCloud 私有网络相关信息配置。
*/
public VirtualPrivateCloud getVirtualPrivateCloud() {
return this.VirtualPrivateCloud;
}
/**
* Set 私有网络相关信息配置。
* @param VirtualPrivateCloud 私有网络相关信息配置。
*/
public void setVirtualPrivateCloud(VirtualPrivateCloud VirtualPrivateCloud) {
this.VirtualPrivateCloud = VirtualPrivateCloud;
}
/**
* 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;
}
public ExpansionNodeConfig() {
}
/**
* 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 ExpansionNodeConfig(ExpansionNodeConfig source) {
if (source.Placement != null) {
this.Placement = new Placement(source.Placement);
}
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.VirtualPrivateCloud != null) {
this.VirtualPrivateCloud = new VirtualPrivateCloud(source.VirtualPrivateCloud);
}
if (source.ProjectId != null) {
this.ProjectId = new Long(source.ProjectId);
}
}
/**
* Internal implementation, normal users should not use it.
*/
public void toMap(HashMap map, String prefix) {
this.setParamObj(map, prefix + "Placement.", this.Placement);
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 + "VirtualPrivateCloud.", this.VirtualPrivateCloud);
this.setParamSimple(map, prefix + "ProjectId", this.ProjectId);
}
}