com.tencentcloudapi.emr.v20190103.models.CreateInstanceRequest Maven / Gradle / Ivy
/*
* 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.emr.v20190103.models;
import com.tencentcloudapi.common.AbstractModel;
import com.google.gson.annotations.SerializedName;
import com.google.gson.annotations.Expose;
import java.util.HashMap;
public class CreateInstanceRequest extends AbstractModel{
/**
* Product ID. Different product IDs represent different EMR product versions. Valid values:
1: EMR v1.3.1.
2: EMR v2.0.1.
4: EMR v2.1.0.
7: EMR v3.0.0.
*/
@SerializedName("ProductId")
@Expose
private Long ProductId;
/**
* Configuration information of VPC. This parameter is used to specify the VPC ID, subnet ID, etc.
*/
@SerializedName("VPCSettings")
@Expose
private VPCSettings VPCSettings;
/**
* List of deployed components. Different required components need to be selected for different EMR product IDs (i.e., `ProductId`; for specific meanings, please see the `ProductId` field in the input parameter):
When `ProductId` is 1, the required components include hadoop-2.7.3, knox-1.2.0, and zookeeper-3.4.9
When `ProductId` is 2, the required components include hadoop-2.7.3, knox-1.2.0, and zookeeper-3.4.9
When `ProductId` is 4, the required components include hadoop-2.8.4, knox-1.2.0, and zookeeper-3.4.9
When `ProductId` is 7, the required components include hadoop-3.1.2, knox-1.2.0, and zookeeper-3.4.9
*/
@SerializedName("Software")
@Expose
private String [] Software;
/**
* Node resource specification.
*/
@SerializedName("ResourceSpec")
@Expose
private NewResourceSpec ResourceSpec;
/**
* Whether to enable high node availability. Valid values:
0: does not enable high availability of node.
1: enables high availability of node.
*/
@SerializedName("SupportHA")
@Expose
private Long SupportHA;
/**
* Instance name.
Length limit: 6-36 characters.
Only letters, numbers, dashes (-), and underscores (_) are supported.
*/
@SerializedName("InstanceName")
@Expose
private String InstanceName;
/**
* Instance billing mode. Valid values:
0: pay-as-you-go.
*/
@SerializedName("PayMode")
@Expose
private Long PayMode;
/**
* Instance location. This parameter is used to specify the AZ, project, and other attributes of the instance.
*/
@SerializedName("Placement")
@Expose
private Placement Placement;
/**
* Purchase duration of instance, which needs to be used together with `TimeUnit`.
When `TimeUnit` is `s`, this parameter can only be filled with 3600, indicating a pay-as-you-go instance.
When `TimeUnit` is `m`, the number entered in this parameter indicates the purchase duration of the monthly-subscription instance; for example, 1 means one month
*/
@SerializedName("TimeSpan")
@Expose
private Long TimeSpan;
/**
* Time unit of instance purchase duration. Valid values:
s: seconds. When `PayMode` is 0, `TimeUnit` can only be `s`.
m: month. When `PayMode` is 1, `TimeUnit` can only be `m`.
*/
@SerializedName("TimeUnit")
@Expose
private String TimeUnit;
/**
* Instance login settings. This parameter allows you to set the login password or key for your purchased node.
If the key is set, the password will be only used for login to the native component WebUI.
If the key is not set, the password will be used for login to all purchased nodes and the native component WebUI.
*/
@SerializedName("LoginSettings")
@Expose
private LoginSettings LoginSettings;
/**
* Parameter required for enabling COS access.
*/
@SerializedName("COSSettings")
@Expose
private COSSettings COSSettings;
/**
* Security group to which an instance belongs in the format of `sg-xxxxxxxx`. This parameter can be obtained from the `SecurityGroupId` field in the return value of the [DescribeSecurityGroups](https://intl.cloud.tencent.com/document/api/215/15808) API.
*/
@SerializedName("SgId")
@Expose
private String SgId;
/**
* Bootstrap script settings.
*/
@SerializedName("PreExecutedFileSettings")
@Expose
private PreExecuteFileSettings [] PreExecutedFileSettings;
/**
* Whether auto-renewal is enabled. Valid values:
0: auto-renewal not enabled.
1: auto-renewal enabled.
*/
@SerializedName("AutoRenew")
@Expose
private Long AutoRenew;
/**
* Client token.
*/
@SerializedName("ClientToken")
@Expose
private String ClientToken;
/**
* Whether to enable public IP access for master node. Valid values:
NEED_MASTER_WAN: enables public IP for master node.
NOT_NEED_MASTER_WAN: does not enable. Public IP is enabled for master node by default.
*/
@SerializedName("NeedMasterWan")
@Expose
private String NeedMasterWan;
/**
* Whether to enable remote public network login, i.e., port 22. When `SgId` is not empty, this parameter does not take effect.
*/
@SerializedName("RemoteLoginAtCreate")
@Expose
private Long RemoteLoginAtCreate;
/**
* Whether to enable secure cluster. 0: no; other values: yes.
*/
@SerializedName("CheckSecurity")
@Expose
private Long CheckSecurity;
/**
* Accesses to external file system.
*/
@SerializedName("ExtendFsField")
@Expose
private String ExtendFsField;
/**
* Tag description list. This parameter is used to bind a tag to a resource instance.
*/
@SerializedName("Tags")
@Expose
private Tag [] Tags;
/**
* List of spread placement group IDs. Only one can be specified currently.
*/
@SerializedName("DisasterRecoverGroupIds")
@Expose
private String [] DisasterRecoverGroupIds;
/**
* CBS disk encryption at the cluster level. 0: not encrypted, 1: encrypted
*/
@SerializedName("CbsEncrypt")
@Expose
private Long CbsEncrypt;
/**
* Hive-shared metadatabase type. Valid values:
EMR_DEFAULT_META: the cluster creates one by default.
EMR_EXIST_META: the cluster uses the specified EMR-MetaDB instance.
USER_CUSTOM_META: the cluster uses a custom MetaDB instance.
*/
@SerializedName("MetaType")
@Expose
private String MetaType;
/**
* EMR-MetaDB instance
*/
@SerializedName("UnifyMetaInstanceId")
@Expose
private String UnifyMetaInstanceId;
/**
* Custom MetaDB instance information
*/
@SerializedName("MetaDBInfo")
@Expose
private CustomMetaInfo MetaDBInfo;
/**
* Custom application role.
*/
@SerializedName("ApplicationRole")
@Expose
private String ApplicationRole;
/**
* Get Product ID. Different product IDs represent different EMR product versions. Valid values:
1: EMR v1.3.1.
2: EMR v2.0.1.
4: EMR v2.1.0.
7: EMR v3.0.0.
* @return ProductId Product ID. Different product IDs represent different EMR product versions. Valid values:
1: EMR v1.3.1.
2: EMR v2.0.1.
4: EMR v2.1.0.
7: EMR v3.0.0.
*/
public Long getProductId() {
return this.ProductId;
}
/**
* Set Product ID. Different product IDs represent different EMR product versions. Valid values:
1: EMR v1.3.1.
2: EMR v2.0.1.
4: EMR v2.1.0.
7: EMR v3.0.0.
* @param ProductId Product ID. Different product IDs represent different EMR product versions. Valid values:
1: EMR v1.3.1.
2: EMR v2.0.1.
4: EMR v2.1.0.
7: EMR v3.0.0.
*/
public void setProductId(Long ProductId) {
this.ProductId = ProductId;
}
/**
* Get Configuration information of VPC. This parameter is used to specify the VPC ID, subnet ID, etc.
* @return VPCSettings Configuration information of VPC. This parameter is used to specify the VPC ID, subnet ID, etc.
*/
public VPCSettings getVPCSettings() {
return this.VPCSettings;
}
/**
* Set Configuration information of VPC. This parameter is used to specify the VPC ID, subnet ID, etc.
* @param VPCSettings Configuration information of VPC. This parameter is used to specify the VPC ID, subnet ID, etc.
*/
public void setVPCSettings(VPCSettings VPCSettings) {
this.VPCSettings = VPCSettings;
}
/**
* Get List of deployed components. Different required components need to be selected for different EMR product IDs (i.e., `ProductId`; for specific meanings, please see the `ProductId` field in the input parameter):
When `ProductId` is 1, the required components include hadoop-2.7.3, knox-1.2.0, and zookeeper-3.4.9
When `ProductId` is 2, the required components include hadoop-2.7.3, knox-1.2.0, and zookeeper-3.4.9
When `ProductId` is 4, the required components include hadoop-2.8.4, knox-1.2.0, and zookeeper-3.4.9
When `ProductId` is 7, the required components include hadoop-3.1.2, knox-1.2.0, and zookeeper-3.4.9
* @return Software List of deployed components. Different required components need to be selected for different EMR product IDs (i.e., `ProductId`; for specific meanings, please see the `ProductId` field in the input parameter):
When `ProductId` is 1, the required components include hadoop-2.7.3, knox-1.2.0, and zookeeper-3.4.9
When `ProductId` is 2, the required components include hadoop-2.7.3, knox-1.2.0, and zookeeper-3.4.9
When `ProductId` is 4, the required components include hadoop-2.8.4, knox-1.2.0, and zookeeper-3.4.9
When `ProductId` is 7, the required components include hadoop-3.1.2, knox-1.2.0, and zookeeper-3.4.9
*/
public String [] getSoftware() {
return this.Software;
}
/**
* Set List of deployed components. Different required components need to be selected for different EMR product IDs (i.e., `ProductId`; for specific meanings, please see the `ProductId` field in the input parameter):
When `ProductId` is 1, the required components include hadoop-2.7.3, knox-1.2.0, and zookeeper-3.4.9
When `ProductId` is 2, the required components include hadoop-2.7.3, knox-1.2.0, and zookeeper-3.4.9
When `ProductId` is 4, the required components include hadoop-2.8.4, knox-1.2.0, and zookeeper-3.4.9
When `ProductId` is 7, the required components include hadoop-3.1.2, knox-1.2.0, and zookeeper-3.4.9
* @param Software List of deployed components. Different required components need to be selected for different EMR product IDs (i.e., `ProductId`; for specific meanings, please see the `ProductId` field in the input parameter):
When `ProductId` is 1, the required components include hadoop-2.7.3, knox-1.2.0, and zookeeper-3.4.9
When `ProductId` is 2, the required components include hadoop-2.7.3, knox-1.2.0, and zookeeper-3.4.9
When `ProductId` is 4, the required components include hadoop-2.8.4, knox-1.2.0, and zookeeper-3.4.9
When `ProductId` is 7, the required components include hadoop-3.1.2, knox-1.2.0, and zookeeper-3.4.9
*/
public void setSoftware(String [] Software) {
this.Software = Software;
}
/**
* Get Node resource specification.
* @return ResourceSpec Node resource specification.
*/
public NewResourceSpec getResourceSpec() {
return this.ResourceSpec;
}
/**
* Set Node resource specification.
* @param ResourceSpec Node resource specification.
*/
public void setResourceSpec(NewResourceSpec ResourceSpec) {
this.ResourceSpec = ResourceSpec;
}
/**
* Get Whether to enable high node availability. Valid values:
0: does not enable high availability of node.
1: enables high availability of node.
* @return SupportHA Whether to enable high node availability. Valid values:
0: does not enable high availability of node.
1: enables high availability of node.
*/
public Long getSupportHA() {
return this.SupportHA;
}
/**
* Set Whether to enable high node availability. Valid values:
0: does not enable high availability of node.
1: enables high availability of node.
* @param SupportHA Whether to enable high node availability. Valid values:
0: does not enable high availability of node.
1: enables high availability of node.
*/
public void setSupportHA(Long SupportHA) {
this.SupportHA = SupportHA;
}
/**
* Get Instance name.
Length limit: 6-36 characters.
Only letters, numbers, dashes (-), and underscores (_) are supported.
* @return InstanceName Instance name.
Length limit: 6-36 characters.
Only letters, numbers, dashes (-), and underscores (_) are supported.
*/
public String getInstanceName() {
return this.InstanceName;
}
/**
* Set Instance name.
Length limit: 6-36 characters.
Only letters, numbers, dashes (-), and underscores (_) are supported.
* @param InstanceName Instance name.
Length limit: 6-36 characters.
Only letters, numbers, dashes (-), and underscores (_) are supported.
*/
public void setInstanceName(String InstanceName) {
this.InstanceName = InstanceName;
}
/**
* Get Instance billing mode. Valid values:
0: pay-as-you-go.
* @return PayMode Instance billing mode. Valid values:
0: pay-as-you-go.
*/
public Long getPayMode() {
return this.PayMode;
}
/**
* Set Instance billing mode. Valid values:
0: pay-as-you-go.
* @param PayMode Instance billing mode. Valid values:
0: pay-as-you-go.
*/
public void setPayMode(Long PayMode) {
this.PayMode = PayMode;
}
/**
* Get Instance location. This parameter is used to specify the AZ, project, and other attributes of the instance.
* @return Placement Instance location. This parameter is used to specify the AZ, project, and other attributes of the instance.
*/
public Placement getPlacement() {
return this.Placement;
}
/**
* Set Instance location. This parameter is used to specify the AZ, project, and other attributes of the instance.
* @param Placement Instance location. This parameter is used to specify the AZ, project, and other attributes of the instance.
*/
public void setPlacement(Placement Placement) {
this.Placement = Placement;
}
/**
* Get Purchase duration of instance, which needs to be used together with `TimeUnit`.
When `TimeUnit` is `s`, this parameter can only be filled with 3600, indicating a pay-as-you-go instance.
When `TimeUnit` is `m`, the number entered in this parameter indicates the purchase duration of the monthly-subscription instance; for example, 1 means one month
* @return TimeSpan Purchase duration of instance, which needs to be used together with `TimeUnit`.
When `TimeUnit` is `s`, this parameter can only be filled with 3600, indicating a pay-as-you-go instance.
When `TimeUnit` is `m`, the number entered in this parameter indicates the purchase duration of the monthly-subscription instance; for example, 1 means one month
*/
public Long getTimeSpan() {
return this.TimeSpan;
}
/**
* Set Purchase duration of instance, which needs to be used together with `TimeUnit`.
When `TimeUnit` is `s`, this parameter can only be filled with 3600, indicating a pay-as-you-go instance.
When `TimeUnit` is `m`, the number entered in this parameter indicates the purchase duration of the monthly-subscription instance; for example, 1 means one month
* @param TimeSpan Purchase duration of instance, which needs to be used together with `TimeUnit`.
When `TimeUnit` is `s`, this parameter can only be filled with 3600, indicating a pay-as-you-go instance.
When `TimeUnit` is `m`, the number entered in this parameter indicates the purchase duration of the monthly-subscription instance; for example, 1 means one month
*/
public void setTimeSpan(Long TimeSpan) {
this.TimeSpan = TimeSpan;
}
/**
* Get Time unit of instance purchase duration. Valid values:
s: seconds. When `PayMode` is 0, `TimeUnit` can only be `s`.
m: month. When `PayMode` is 1, `TimeUnit` can only be `m`.
* @return TimeUnit Time unit of instance purchase duration. Valid values:
s: seconds. When `PayMode` is 0, `TimeUnit` can only be `s`.
m: month. When `PayMode` is 1, `TimeUnit` can only be `m`.
*/
public String getTimeUnit() {
return this.TimeUnit;
}
/**
* Set Time unit of instance purchase duration. Valid values:
s: seconds. When `PayMode` is 0, `TimeUnit` can only be `s`.
m: month. When `PayMode` is 1, `TimeUnit` can only be `m`.
* @param TimeUnit Time unit of instance purchase duration. Valid values:
s: seconds. When `PayMode` is 0, `TimeUnit` can only be `s`.
m: month. When `PayMode` is 1, `TimeUnit` can only be `m`.
*/
public void setTimeUnit(String TimeUnit) {
this.TimeUnit = TimeUnit;
}
/**
* Get Instance login settings. This parameter allows you to set the login password or key for your purchased node.
If the key is set, the password will be only used for login to the native component WebUI.
If the key is not set, the password will be used for login to all purchased nodes and the native component WebUI.
* @return LoginSettings Instance login settings. This parameter allows you to set the login password or key for your purchased node.
If the key is set, the password will be only used for login to the native component WebUI.
If the key is not set, the password will be used for login to all purchased nodes and the native component WebUI.
*/
public LoginSettings getLoginSettings() {
return this.LoginSettings;
}
/**
* Set Instance login settings. This parameter allows you to set the login password or key for your purchased node.
If the key is set, the password will be only used for login to the native component WebUI.
If the key is not set, the password will be used for login to all purchased nodes and the native component WebUI.
* @param LoginSettings Instance login settings. This parameter allows you to set the login password or key for your purchased node.
If the key is set, the password will be only used for login to the native component WebUI.
If the key is not set, the password will be used for login to all purchased nodes and the native component WebUI.
*/
public void setLoginSettings(LoginSettings LoginSettings) {
this.LoginSettings = LoginSettings;
}
/**
* Get Parameter required for enabling COS access.
* @return COSSettings Parameter required for enabling COS access.
*/
public COSSettings getCOSSettings() {
return this.COSSettings;
}
/**
* Set Parameter required for enabling COS access.
* @param COSSettings Parameter required for enabling COS access.
*/
public void setCOSSettings(COSSettings COSSettings) {
this.COSSettings = COSSettings;
}
/**
* Get Security group to which an instance belongs in the format of `sg-xxxxxxxx`. This parameter can be obtained from the `SecurityGroupId` field in the return value of the [DescribeSecurityGroups](https://intl.cloud.tencent.com/document/api/215/15808) API.
* @return SgId Security group to which an instance belongs in the format of `sg-xxxxxxxx`. This parameter can be obtained from the `SecurityGroupId` field in the return value of the [DescribeSecurityGroups](https://intl.cloud.tencent.com/document/api/215/15808) API.
*/
public String getSgId() {
return this.SgId;
}
/**
* Set Security group to which an instance belongs in the format of `sg-xxxxxxxx`. This parameter can be obtained from the `SecurityGroupId` field in the return value of the [DescribeSecurityGroups](https://intl.cloud.tencent.com/document/api/215/15808) API.
* @param SgId Security group to which an instance belongs in the format of `sg-xxxxxxxx`. This parameter can be obtained from the `SecurityGroupId` field in the return value of the [DescribeSecurityGroups](https://intl.cloud.tencent.com/document/api/215/15808) API.
*/
public void setSgId(String SgId) {
this.SgId = SgId;
}
/**
* Get Bootstrap script settings.
* @return PreExecutedFileSettings Bootstrap script settings.
*/
public PreExecuteFileSettings [] getPreExecutedFileSettings() {
return this.PreExecutedFileSettings;
}
/**
* Set Bootstrap script settings.
* @param PreExecutedFileSettings Bootstrap script settings.
*/
public void setPreExecutedFileSettings(PreExecuteFileSettings [] PreExecutedFileSettings) {
this.PreExecutedFileSettings = PreExecutedFileSettings;
}
/**
* Get Whether auto-renewal is enabled. Valid values:
0: auto-renewal not enabled.
1: auto-renewal enabled.
* @return AutoRenew Whether auto-renewal is enabled. Valid values:
0: auto-renewal not enabled.
1: auto-renewal enabled.
*/
public Long getAutoRenew() {
return this.AutoRenew;
}
/**
* Set Whether auto-renewal is enabled. Valid values:
0: auto-renewal not enabled.
1: auto-renewal enabled.
* @param AutoRenew Whether auto-renewal is enabled. Valid values:
0: auto-renewal not enabled.
1: auto-renewal enabled.
*/
public void setAutoRenew(Long AutoRenew) {
this.AutoRenew = AutoRenew;
}
/**
* Get Client token.
* @return ClientToken Client token.
*/
public String getClientToken() {
return this.ClientToken;
}
/**
* Set Client token.
* @param ClientToken Client token.
*/
public void setClientToken(String ClientToken) {
this.ClientToken = ClientToken;
}
/**
* Get Whether to enable public IP access for master node. Valid values:
NEED_MASTER_WAN: enables public IP for master node.
NOT_NEED_MASTER_WAN: does not enable. Public IP is enabled for master node by default.
* @return NeedMasterWan Whether to enable public IP access for master node. Valid values:
NEED_MASTER_WAN: enables public IP for master node.
NOT_NEED_MASTER_WAN: does not enable. Public IP is enabled for master node by default.
*/
public String getNeedMasterWan() {
return this.NeedMasterWan;
}
/**
* Set Whether to enable public IP access for master node. Valid values:
NEED_MASTER_WAN: enables public IP for master node.
NOT_NEED_MASTER_WAN: does not enable. Public IP is enabled for master node by default.
* @param NeedMasterWan Whether to enable public IP access for master node. Valid values:
NEED_MASTER_WAN: enables public IP for master node.
NOT_NEED_MASTER_WAN: does not enable. Public IP is enabled for master node by default.
*/
public void setNeedMasterWan(String NeedMasterWan) {
this.NeedMasterWan = NeedMasterWan;
}
/**
* Get Whether to enable remote public network login, i.e., port 22. When `SgId` is not empty, this parameter does not take effect.
* @return RemoteLoginAtCreate Whether to enable remote public network login, i.e., port 22. When `SgId` is not empty, this parameter does not take effect.
*/
public Long getRemoteLoginAtCreate() {
return this.RemoteLoginAtCreate;
}
/**
* Set Whether to enable remote public network login, i.e., port 22. When `SgId` is not empty, this parameter does not take effect.
* @param RemoteLoginAtCreate Whether to enable remote public network login, i.e., port 22. When `SgId` is not empty, this parameter does not take effect.
*/
public void setRemoteLoginAtCreate(Long RemoteLoginAtCreate) {
this.RemoteLoginAtCreate = RemoteLoginAtCreate;
}
/**
* Get Whether to enable secure cluster. 0: no; other values: yes.
* @return CheckSecurity Whether to enable secure cluster. 0: no; other values: yes.
*/
public Long getCheckSecurity() {
return this.CheckSecurity;
}
/**
* Set Whether to enable secure cluster. 0: no; other values: yes.
* @param CheckSecurity Whether to enable secure cluster. 0: no; other values: yes.
*/
public void setCheckSecurity(Long CheckSecurity) {
this.CheckSecurity = CheckSecurity;
}
/**
* Get Accesses to external file system.
* @return ExtendFsField Accesses to external file system.
*/
public String getExtendFsField() {
return this.ExtendFsField;
}
/**
* Set Accesses to external file system.
* @param ExtendFsField Accesses to external file system.
*/
public void setExtendFsField(String ExtendFsField) {
this.ExtendFsField = ExtendFsField;
}
/**
* Get Tag description list. This parameter is used to bind a tag to a resource instance.
* @return Tags Tag description list. This parameter is used to bind a tag to a resource instance.
*/
public Tag [] getTags() {
return this.Tags;
}
/**
* Set Tag description list. This parameter is used to bind a tag to a resource instance.
* @param Tags Tag description list. This parameter is used to bind a tag to a resource instance.
*/
public void setTags(Tag [] Tags) {
this.Tags = Tags;
}
/**
* Get List of spread placement group IDs. Only one can be specified currently.
* @return DisasterRecoverGroupIds List of spread placement group IDs. Only one can be specified currently.
*/
public String [] getDisasterRecoverGroupIds() {
return this.DisasterRecoverGroupIds;
}
/**
* Set List of spread placement group IDs. Only one can be specified currently.
* @param DisasterRecoverGroupIds List of spread placement group IDs. Only one can be specified currently.
*/
public void setDisasterRecoverGroupIds(String [] DisasterRecoverGroupIds) {
this.DisasterRecoverGroupIds = DisasterRecoverGroupIds;
}
/**
* Get CBS disk encryption at the cluster level. 0: not encrypted, 1: encrypted
* @return CbsEncrypt CBS disk encryption at the cluster level. 0: not encrypted, 1: encrypted
*/
public Long getCbsEncrypt() {
return this.CbsEncrypt;
}
/**
* Set CBS disk encryption at the cluster level. 0: not encrypted, 1: encrypted
* @param CbsEncrypt CBS disk encryption at the cluster level. 0: not encrypted, 1: encrypted
*/
public void setCbsEncrypt(Long CbsEncrypt) {
this.CbsEncrypt = CbsEncrypt;
}
/**
* Get Hive-shared metadatabase type. Valid values:
EMR_DEFAULT_META: the cluster creates one by default.
EMR_EXIST_META: the cluster uses the specified EMR-MetaDB instance.
USER_CUSTOM_META: the cluster uses a custom MetaDB instance.
* @return MetaType Hive-shared metadatabase type. Valid values:
EMR_DEFAULT_META: the cluster creates one by default.
EMR_EXIST_META: the cluster uses the specified EMR-MetaDB instance.
USER_CUSTOM_META: the cluster uses a custom MetaDB instance.
*/
public String getMetaType() {
return this.MetaType;
}
/**
* Set Hive-shared metadatabase type. Valid values:
EMR_DEFAULT_META: the cluster creates one by default.
EMR_EXIST_META: the cluster uses the specified EMR-MetaDB instance.
USER_CUSTOM_META: the cluster uses a custom MetaDB instance.
* @param MetaType Hive-shared metadatabase type. Valid values:
EMR_DEFAULT_META: the cluster creates one by default.
EMR_EXIST_META: the cluster uses the specified EMR-MetaDB instance.
USER_CUSTOM_META: the cluster uses a custom MetaDB instance.
*/
public void setMetaType(String MetaType) {
this.MetaType = MetaType;
}
/**
* Get EMR-MetaDB instance
* @return UnifyMetaInstanceId EMR-MetaDB instance
*/
public String getUnifyMetaInstanceId() {
return this.UnifyMetaInstanceId;
}
/**
* Set EMR-MetaDB instance
* @param UnifyMetaInstanceId EMR-MetaDB instance
*/
public void setUnifyMetaInstanceId(String UnifyMetaInstanceId) {
this.UnifyMetaInstanceId = UnifyMetaInstanceId;
}
/**
* Get Custom MetaDB instance information
* @return MetaDBInfo Custom MetaDB instance information
*/
public CustomMetaInfo getMetaDBInfo() {
return this.MetaDBInfo;
}
/**
* Set Custom MetaDB instance information
* @param MetaDBInfo Custom MetaDB instance information
*/
public void setMetaDBInfo(CustomMetaInfo MetaDBInfo) {
this.MetaDBInfo = MetaDBInfo;
}
/**
* Get Custom application role.
* @return ApplicationRole Custom application role.
*/
public String getApplicationRole() {
return this.ApplicationRole;
}
/**
* Set Custom application role.
* @param ApplicationRole Custom application role.
*/
public void setApplicationRole(String ApplicationRole) {
this.ApplicationRole = ApplicationRole;
}
public CreateInstanceRequest() {
}
/**
* 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 CreateInstanceRequest(CreateInstanceRequest source) {
if (source.ProductId != null) {
this.ProductId = new Long(source.ProductId);
}
if (source.VPCSettings != null) {
this.VPCSettings = new VPCSettings(source.VPCSettings);
}
if (source.Software != null) {
this.Software = new String[source.Software.length];
for (int i = 0; i < source.Software.length; i++) {
this.Software[i] = new String(source.Software[i]);
}
}
if (source.ResourceSpec != null) {
this.ResourceSpec = new NewResourceSpec(source.ResourceSpec);
}
if (source.SupportHA != null) {
this.SupportHA = new Long(source.SupportHA);
}
if (source.InstanceName != null) {
this.InstanceName = new String(source.InstanceName);
}
if (source.PayMode != null) {
this.PayMode = new Long(source.PayMode);
}
if (source.Placement != null) {
this.Placement = new Placement(source.Placement);
}
if (source.TimeSpan != null) {
this.TimeSpan = new Long(source.TimeSpan);
}
if (source.TimeUnit != null) {
this.TimeUnit = new String(source.TimeUnit);
}
if (source.LoginSettings != null) {
this.LoginSettings = new LoginSettings(source.LoginSettings);
}
if (source.COSSettings != null) {
this.COSSettings = new COSSettings(source.COSSettings);
}
if (source.SgId != null) {
this.SgId = new String(source.SgId);
}
if (source.PreExecutedFileSettings != null) {
this.PreExecutedFileSettings = new PreExecuteFileSettings[source.PreExecutedFileSettings.length];
for (int i = 0; i < source.PreExecutedFileSettings.length; i++) {
this.PreExecutedFileSettings[i] = new PreExecuteFileSettings(source.PreExecutedFileSettings[i]);
}
}
if (source.AutoRenew != null) {
this.AutoRenew = new Long(source.AutoRenew);
}
if (source.ClientToken != null) {
this.ClientToken = new String(source.ClientToken);
}
if (source.NeedMasterWan != null) {
this.NeedMasterWan = new String(source.NeedMasterWan);
}
if (source.RemoteLoginAtCreate != null) {
this.RemoteLoginAtCreate = new Long(source.RemoteLoginAtCreate);
}
if (source.CheckSecurity != null) {
this.CheckSecurity = new Long(source.CheckSecurity);
}
if (source.ExtendFsField != null) {
this.ExtendFsField = new String(source.ExtendFsField);
}
if (source.Tags != null) {
this.Tags = new Tag[source.Tags.length];
for (int i = 0; i < source.Tags.length; i++) {
this.Tags[i] = new Tag(source.Tags[i]);
}
}
if (source.DisasterRecoverGroupIds != null) {
this.DisasterRecoverGroupIds = new String[source.DisasterRecoverGroupIds.length];
for (int i = 0; i < source.DisasterRecoverGroupIds.length; i++) {
this.DisasterRecoverGroupIds[i] = new String(source.DisasterRecoverGroupIds[i]);
}
}
if (source.CbsEncrypt != null) {
this.CbsEncrypt = new Long(source.CbsEncrypt);
}
if (source.MetaType != null) {
this.MetaType = new String(source.MetaType);
}
if (source.UnifyMetaInstanceId != null) {
this.UnifyMetaInstanceId = new String(source.UnifyMetaInstanceId);
}
if (source.MetaDBInfo != null) {
this.MetaDBInfo = new CustomMetaInfo(source.MetaDBInfo);
}
if (source.ApplicationRole != null) {
this.ApplicationRole = new String(source.ApplicationRole);
}
}
/**
* Internal implementation, normal users should not use it.
*/
public void toMap(HashMap map, String prefix) {
this.setParamSimple(map, prefix + "ProductId", this.ProductId);
this.setParamObj(map, prefix + "VPCSettings.", this.VPCSettings);
this.setParamArraySimple(map, prefix + "Software.", this.Software);
this.setParamObj(map, prefix + "ResourceSpec.", this.ResourceSpec);
this.setParamSimple(map, prefix + "SupportHA", this.SupportHA);
this.setParamSimple(map, prefix + "InstanceName", this.InstanceName);
this.setParamSimple(map, prefix + "PayMode", this.PayMode);
this.setParamObj(map, prefix + "Placement.", this.Placement);
this.setParamSimple(map, prefix + "TimeSpan", this.TimeSpan);
this.setParamSimple(map, prefix + "TimeUnit", this.TimeUnit);
this.setParamObj(map, prefix + "LoginSettings.", this.LoginSettings);
this.setParamObj(map, prefix + "COSSettings.", this.COSSettings);
this.setParamSimple(map, prefix + "SgId", this.SgId);
this.setParamArrayObj(map, prefix + "PreExecutedFileSettings.", this.PreExecutedFileSettings);
this.setParamSimple(map, prefix + "AutoRenew", this.AutoRenew);
this.setParamSimple(map, prefix + "ClientToken", this.ClientToken);
this.setParamSimple(map, prefix + "NeedMasterWan", this.NeedMasterWan);
this.setParamSimple(map, prefix + "RemoteLoginAtCreate", this.RemoteLoginAtCreate);
this.setParamSimple(map, prefix + "CheckSecurity", this.CheckSecurity);
this.setParamSimple(map, prefix + "ExtendFsField", this.ExtendFsField);
this.setParamArrayObj(map, prefix + "Tags.", this.Tags);
this.setParamArraySimple(map, prefix + "DisasterRecoverGroupIds.", this.DisasterRecoverGroupIds);
this.setParamSimple(map, prefix + "CbsEncrypt", this.CbsEncrypt);
this.setParamSimple(map, prefix + "MetaType", this.MetaType);
this.setParamSimple(map, prefix + "UnifyMetaInstanceId", this.UnifyMetaInstanceId);
this.setParamObj(map, prefix + "MetaDBInfo.", this.MetaDBInfo);
this.setParamSimple(map, prefix + "ApplicationRole", this.ApplicationRole);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy