All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.tencentcloudapi.emr.v20190103.models.CreateClusterRequest 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.tencentcloudapi.common.SSEResponseModel;
import com.google.gson.annotations.SerializedName;
import com.google.gson.annotations.Expose;
import java.util.HashMap;

public class CreateClusterRequest extends AbstractModel {

    /**
    * The EMR version, such as `EMR-V2.3.0` that indicates the version 2.3.0 of EMR. You can query the EMR version [here](https://intl.cloud.tencent.com/document/product/589/66338?from_cn_redirect=1).
    */
    @SerializedName("ProductVersion")
    @Expose
    private String ProductVersion;

    /**
    * Whether to enable high availability for nodes. Valid values:
  • `true`: Enable
  • `false`: Disable
  • */ @SerializedName("EnableSupportHAFlag") @Expose private Boolean EnableSupportHAFlag; /** * The instance name.
  • Length limit: 6–36 characters.
  • Can contain only Chinese characters, letters, digits, hyphens (-), and underscores (_).
  • */ @SerializedName("InstanceName") @Expose private String InstanceName; /** * The instance billing mode. Valid values:
  • `POSTPAID_BY_HOUR`: The postpaid mode by hour.
  • */ @SerializedName("InstanceChargeType") @Expose private String InstanceChargeType; /** * The instance login setting. This parameter allows you to set a login password or key for your purchased node.
  • If a key is set, the password will be used for login to the native component WebUI only.
  • If no key is set, the password will be used for login to all purchased nodes and the native component WebUI.
  • */ @SerializedName("LoginSettings") @Expose private LoginSettings LoginSettings; /** * The configuration of cluster application scenario and supported components. */ @SerializedName("SceneSoftwareConfig") @Expose private SceneSoftwareConfig SceneSoftwareConfig; /** * The details of the monthly subscription, including the instance period and auto-renewal. It is required if `InstanceChargeType` is `PREPAID`. */ @SerializedName("InstanceChargePrepaid") @Expose private InstanceChargePrepaid InstanceChargePrepaid; /** * The ID of the security group to which the instance belongs, in the format of `sg-xxxxxxxx`. You can call the [DescribeSecurityGroups](https://intl.cloud.tencent.com/document/api/215/15808?from_cn_redirect=1) API and obtain this parameter from the `SecurityGroupId` field in the response. */ @SerializedName("SecurityGroupIds") @Expose private String [] SecurityGroupIds; /** * The [Bootstrap action](https://intl.cloud.tencent.com/document/product/589/35656?from_cn_redirect=1) script settings. */ @SerializedName("ScriptBootstrapActionConfig") @Expose private ScriptBootstrapActionConfig [] ScriptBootstrapActionConfig; /** * A unique random token, which is valid for 5 minutes and needs to be specified by the caller to prevent the client from repeatedly creating resources. An example value is `a9a90aa6-751a-41b6-aad6-fae360632808`. */ @SerializedName("ClientToken") @Expose private String ClientToken; /** * Whether to enable public IP access for master nodes. Valid values:
  • `NEED_MASTER_WAN`: Enable public IP for master nodes.
  • `NOT_NEED_MASTER_WAN`: Disable.
  • The public IP is enabled for master nodes by default. */ @SerializedName("NeedMasterWan") @Expose private String NeedMasterWan; /** * Whether to enable remote login over the public network. It is invalid if `SecurityGroupId` is passed in. It is disabled by default. Valid values:
  • `true`: Enable
  • `false`: Disable
  • */ @SerializedName("EnableRemoteLoginFlag") @Expose private Boolean EnableRemoteLoginFlag; /** * Whether to enable Kerberos authentication. Valid values:
  • `true`: Enable
  • `false` (default): Disable
  • */ @SerializedName("EnableKerberosFlag") @Expose private Boolean EnableKerberosFlag; /** * [Custom software configuration](https://intl.cloud.tencent.com/document/product/589/35655?from_cn_redirect=1?from_cn_redirect=1) */ @SerializedName("CustomConf") @Expose private String CustomConf; /** * The tag description list. This parameter is used to bind a tag to a resource instance. */ @SerializedName("Tags") @Expose private Tag [] Tags; /** * The list of spread placement group IDs. Only one can be specified. You can call the [DescribeDisasterRecoverGroups](https://intl.cloud.tencent.com/document/product/213/17810?from_cn_redirect=1) API and obtain this parameter from the `DisasterRecoverGroupId` field in the response. */ @SerializedName("DisasterRecoverGroupIds") @Expose private String [] DisasterRecoverGroupIds; /** * Whether to enable the cluster-level CBS encryption. Valid values:
  • `true`: Enable
  • `false` (default): Disable
  • */ @SerializedName("EnableCbsEncryptFlag") @Expose private Boolean EnableCbsEncryptFlag; /** * The metadatabase information. If `MetaType` is `EMR_NEW_META`, `MetaDataJdbcUrl`, `MetaDataUser`, `MetaDataPass`, and `UnifyMetaInstanceId` are not required. If `MetaType` is `EMR_EXIT_META`, `UnifyMetaInstanceId` is required. If `MetaType` is `USER_CUSTOM_META`, `MetaDataJdbcUrl`, `MetaDataUser`, and `MetaDataPass` are required. */ @SerializedName("MetaDBInfo") @Expose private CustomMetaDBInfo MetaDBInfo; /** * The shared component information. */ @SerializedName("DependService") @Expose private DependService [] DependService; /** * The node resource specs. A spec is specified for each AZ, with the first spec for the primary AZ, the second for the backup AZ, and the third for the arbitrator AZ. If the multi-AZ mode is not enabled, only one spec is required. */ @SerializedName("ZoneResourceConfiguration") @Expose private ZoneResourceConfiguration [] ZoneResourceConfiguration; /** * Get The EMR version, such as `EMR-V2.3.0` that indicates the version 2.3.0 of EMR. You can query the EMR version [here](https://intl.cloud.tencent.com/document/product/589/66338?from_cn_redirect=1). * @return ProductVersion The EMR version, such as `EMR-V2.3.0` that indicates the version 2.3.0 of EMR. You can query the EMR version [here](https://intl.cloud.tencent.com/document/product/589/66338?from_cn_redirect=1). */ public String getProductVersion() { return this.ProductVersion; } /** * Set The EMR version, such as `EMR-V2.3.0` that indicates the version 2.3.0 of EMR. You can query the EMR version [here](https://intl.cloud.tencent.com/document/product/589/66338?from_cn_redirect=1). * @param ProductVersion The EMR version, such as `EMR-V2.3.0` that indicates the version 2.3.0 of EMR. You can query the EMR version [here](https://intl.cloud.tencent.com/document/product/589/66338?from_cn_redirect=1). */ public void setProductVersion(String ProductVersion) { this.ProductVersion = ProductVersion; } /** * Get Whether to enable high availability for nodes. Valid values:
  • `true`: Enable
  • `false`: Disable
  • * @return EnableSupportHAFlag Whether to enable high availability for nodes. Valid values:
  • `true`: Enable
  • `false`: Disable
  • */ public Boolean getEnableSupportHAFlag() { return this.EnableSupportHAFlag; } /** * Set Whether to enable high availability for nodes. Valid values:
  • `true`: Enable
  • `false`: Disable
  • * @param EnableSupportHAFlag Whether to enable high availability for nodes. Valid values:
  • `true`: Enable
  • `false`: Disable
  • */ public void setEnableSupportHAFlag(Boolean EnableSupportHAFlag) { this.EnableSupportHAFlag = EnableSupportHAFlag; } /** * Get The instance name.
  • Length limit: 6–36 characters.
  • Can contain only Chinese characters, letters, digits, hyphens (-), and underscores (_).
  • * @return InstanceName The instance name.
  • Length limit: 6–36 characters.
  • Can contain only Chinese characters, letters, digits, hyphens (-), and underscores (_).
  • */ public String getInstanceName() { return this.InstanceName; } /** * Set The instance name.
  • Length limit: 6–36 characters.
  • Can contain only Chinese characters, letters, digits, hyphens (-), and underscores (_).
  • * @param InstanceName The instance name.
  • Length limit: 6–36 characters.
  • Can contain only Chinese characters, letters, digits, hyphens (-), and underscores (_).
  • */ public void setInstanceName(String InstanceName) { this.InstanceName = InstanceName; } /** * Get The instance billing mode. Valid values:
  • `POSTPAID_BY_HOUR`: The postpaid mode by hour.
  • * @return InstanceChargeType The instance billing mode. Valid values:
  • `POSTPAID_BY_HOUR`: The postpaid mode by hour.
  • */ public String getInstanceChargeType() { return this.InstanceChargeType; } /** * Set The instance billing mode. Valid values:
  • `POSTPAID_BY_HOUR`: The postpaid mode by hour.
  • * @param InstanceChargeType The instance billing mode. Valid values:
  • `POSTPAID_BY_HOUR`: The postpaid mode by hour.
  • */ public void setInstanceChargeType(String InstanceChargeType) { this.InstanceChargeType = InstanceChargeType; } /** * Get The instance login setting. This parameter allows you to set a login password or key for your purchased node.
  • If a key is set, the password will be used for login to the native component WebUI only.
  • If no key is set, the password will be used for login to all purchased nodes and the native component WebUI.
  • * @return LoginSettings The instance login setting. This parameter allows you to set a login password or key for your purchased node.
  • If a key is set, the password will be used for login to the native component WebUI only.
  • If no key is set, the password will be used for login to all purchased nodes and the native component WebUI.
  • */ public LoginSettings getLoginSettings() { return this.LoginSettings; } /** * Set The instance login setting. This parameter allows you to set a login password or key for your purchased node.
  • If a key is set, the password will be used for login to the native component WebUI only.
  • If no key is set, the password will be used for login to all purchased nodes and the native component WebUI.
  • * @param LoginSettings The instance login setting. This parameter allows you to set a login password or key for your purchased node.
  • If a key is set, the password will be used for login to the native component WebUI only.
  • If no key is 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 The configuration of cluster application scenario and supported components. * @return SceneSoftwareConfig The configuration of cluster application scenario and supported components. */ public SceneSoftwareConfig getSceneSoftwareConfig() { return this.SceneSoftwareConfig; } /** * Set The configuration of cluster application scenario and supported components. * @param SceneSoftwareConfig The configuration of cluster application scenario and supported components. */ public void setSceneSoftwareConfig(SceneSoftwareConfig SceneSoftwareConfig) { this.SceneSoftwareConfig = SceneSoftwareConfig; } /** * Get The details of the monthly subscription, including the instance period and auto-renewal. It is required if `InstanceChargeType` is `PREPAID`. * @return InstanceChargePrepaid The details of the monthly subscription, including the instance period and auto-renewal. It is required if `InstanceChargeType` is `PREPAID`. */ public InstanceChargePrepaid getInstanceChargePrepaid() { return this.InstanceChargePrepaid; } /** * Set The details of the monthly subscription, including the instance period and auto-renewal. It is required if `InstanceChargeType` is `PREPAID`. * @param InstanceChargePrepaid The details of the monthly subscription, including the instance period and auto-renewal. It is required if `InstanceChargeType` is `PREPAID`. */ public void setInstanceChargePrepaid(InstanceChargePrepaid InstanceChargePrepaid) { this.InstanceChargePrepaid = InstanceChargePrepaid; } /** * Get The ID of the security group to which the instance belongs, in the format of `sg-xxxxxxxx`. You can call the [DescribeSecurityGroups](https://intl.cloud.tencent.com/document/api/215/15808?from_cn_redirect=1) API and obtain this parameter from the `SecurityGroupId` field in the response. * @return SecurityGroupIds The ID of the security group to which the instance belongs, in the format of `sg-xxxxxxxx`. You can call the [DescribeSecurityGroups](https://intl.cloud.tencent.com/document/api/215/15808?from_cn_redirect=1) API and obtain this parameter from the `SecurityGroupId` field in the response. */ public String [] getSecurityGroupIds() { return this.SecurityGroupIds; } /** * Set The ID of the security group to which the instance belongs, in the format of `sg-xxxxxxxx`. You can call the [DescribeSecurityGroups](https://intl.cloud.tencent.com/document/api/215/15808?from_cn_redirect=1) API and obtain this parameter from the `SecurityGroupId` field in the response. * @param SecurityGroupIds The ID of the security group to which the instance belongs, in the format of `sg-xxxxxxxx`. You can call the [DescribeSecurityGroups](https://intl.cloud.tencent.com/document/api/215/15808?from_cn_redirect=1) API and obtain this parameter from the `SecurityGroupId` field in the response. */ public void setSecurityGroupIds(String [] SecurityGroupIds) { this.SecurityGroupIds = SecurityGroupIds; } /** * Get The [Bootstrap action](https://intl.cloud.tencent.com/document/product/589/35656?from_cn_redirect=1) script settings. * @return ScriptBootstrapActionConfig The [Bootstrap action](https://intl.cloud.tencent.com/document/product/589/35656?from_cn_redirect=1) script settings. */ public ScriptBootstrapActionConfig [] getScriptBootstrapActionConfig() { return this.ScriptBootstrapActionConfig; } /** * Set The [Bootstrap action](https://intl.cloud.tencent.com/document/product/589/35656?from_cn_redirect=1) script settings. * @param ScriptBootstrapActionConfig The [Bootstrap action](https://intl.cloud.tencent.com/document/product/589/35656?from_cn_redirect=1) script settings. */ public void setScriptBootstrapActionConfig(ScriptBootstrapActionConfig [] ScriptBootstrapActionConfig) { this.ScriptBootstrapActionConfig = ScriptBootstrapActionConfig; } /** * Get A unique random token, which is valid for 5 minutes and needs to be specified by the caller to prevent the client from repeatedly creating resources. An example value is `a9a90aa6-751a-41b6-aad6-fae360632808`. * @return ClientToken A unique random token, which is valid for 5 minutes and needs to be specified by the caller to prevent the client from repeatedly creating resources. An example value is `a9a90aa6-751a-41b6-aad6-fae360632808`. */ public String getClientToken() { return this.ClientToken; } /** * Set A unique random token, which is valid for 5 minutes and needs to be specified by the caller to prevent the client from repeatedly creating resources. An example value is `a9a90aa6-751a-41b6-aad6-fae360632808`. * @param ClientToken A unique random token, which is valid for 5 minutes and needs to be specified by the caller to prevent the client from repeatedly creating resources. An example value is `a9a90aa6-751a-41b6-aad6-fae360632808`. */ public void setClientToken(String ClientToken) { this.ClientToken = ClientToken; } /** * Get Whether to enable public IP access for master nodes. Valid values:
  • `NEED_MASTER_WAN`: Enable public IP for master nodes.
  • `NOT_NEED_MASTER_WAN`: Disable.
  • The public IP is enabled for master nodes by default. * @return NeedMasterWan Whether to enable public IP access for master nodes. Valid values:
  • `NEED_MASTER_WAN`: Enable public IP for master nodes.
  • `NOT_NEED_MASTER_WAN`: Disable.
  • The public IP is enabled for master nodes by default. */ public String getNeedMasterWan() { return this.NeedMasterWan; } /** * Set Whether to enable public IP access for master nodes. Valid values:
  • `NEED_MASTER_WAN`: Enable public IP for master nodes.
  • `NOT_NEED_MASTER_WAN`: Disable.
  • The public IP is enabled for master nodes by default. * @param NeedMasterWan Whether to enable public IP access for master nodes. Valid values:
  • `NEED_MASTER_WAN`: Enable public IP for master nodes.
  • `NOT_NEED_MASTER_WAN`: Disable.
  • The public IP is enabled for master nodes by default. */ public void setNeedMasterWan(String NeedMasterWan) { this.NeedMasterWan = NeedMasterWan; } /** * Get Whether to enable remote login over the public network. It is invalid if `SecurityGroupId` is passed in. It is disabled by default. Valid values:
  • `true`: Enable
  • `false`: Disable
  • * @return EnableRemoteLoginFlag Whether to enable remote login over the public network. It is invalid if `SecurityGroupId` is passed in. It is disabled by default. Valid values:
  • `true`: Enable
  • `false`: Disable
  • */ public Boolean getEnableRemoteLoginFlag() { return this.EnableRemoteLoginFlag; } /** * Set Whether to enable remote login over the public network. It is invalid if `SecurityGroupId` is passed in. It is disabled by default. Valid values:
  • `true`: Enable
  • `false`: Disable
  • * @param EnableRemoteLoginFlag Whether to enable remote login over the public network. It is invalid if `SecurityGroupId` is passed in. It is disabled by default. Valid values:
  • `true`: Enable
  • `false`: Disable
  • */ public void setEnableRemoteLoginFlag(Boolean EnableRemoteLoginFlag) { this.EnableRemoteLoginFlag = EnableRemoteLoginFlag; } /** * Get Whether to enable Kerberos authentication. Valid values:
  • `true`: Enable
  • `false` (default): Disable
  • * @return EnableKerberosFlag Whether to enable Kerberos authentication. Valid values:
  • `true`: Enable
  • `false` (default): Disable
  • */ public Boolean getEnableKerberosFlag() { return this.EnableKerberosFlag; } /** * Set Whether to enable Kerberos authentication. Valid values:
  • `true`: Enable
  • `false` (default): Disable
  • * @param EnableKerberosFlag Whether to enable Kerberos authentication. Valid values:
  • `true`: Enable
  • `false` (default): Disable
  • */ public void setEnableKerberosFlag(Boolean EnableKerberosFlag) { this.EnableKerberosFlag = EnableKerberosFlag; } /** * Get [Custom software configuration](https://intl.cloud.tencent.com/document/product/589/35655?from_cn_redirect=1?from_cn_redirect=1) * @return CustomConf [Custom software configuration](https://intl.cloud.tencent.com/document/product/589/35655?from_cn_redirect=1?from_cn_redirect=1) */ public String getCustomConf() { return this.CustomConf; } /** * Set [Custom software configuration](https://intl.cloud.tencent.com/document/product/589/35655?from_cn_redirect=1?from_cn_redirect=1) * @param CustomConf [Custom software configuration](https://intl.cloud.tencent.com/document/product/589/35655?from_cn_redirect=1?from_cn_redirect=1) */ public void setCustomConf(String CustomConf) { this.CustomConf = CustomConf; } /** * Get The tag description list. This parameter is used to bind a tag to a resource instance. * @return Tags The tag description list. This parameter is used to bind a tag to a resource instance. */ public Tag [] getTags() { return this.Tags; } /** * Set The tag description list. This parameter is used to bind a tag to a resource instance. * @param Tags The tag description list. This parameter is used to bind a tag to a resource instance. */ public void setTags(Tag [] Tags) { this.Tags = Tags; } /** * Get The list of spread placement group IDs. Only one can be specified. You can call the [DescribeDisasterRecoverGroups](https://intl.cloud.tencent.com/document/product/213/17810?from_cn_redirect=1) API and obtain this parameter from the `DisasterRecoverGroupId` field in the response. * @return DisasterRecoverGroupIds The list of spread placement group IDs. Only one can be specified. You can call the [DescribeDisasterRecoverGroups](https://intl.cloud.tencent.com/document/product/213/17810?from_cn_redirect=1) API and obtain this parameter from the `DisasterRecoverGroupId` field in the response. */ public String [] getDisasterRecoverGroupIds() { return this.DisasterRecoverGroupIds; } /** * Set The list of spread placement group IDs. Only one can be specified. You can call the [DescribeDisasterRecoverGroups](https://intl.cloud.tencent.com/document/product/213/17810?from_cn_redirect=1) API and obtain this parameter from the `DisasterRecoverGroupId` field in the response. * @param DisasterRecoverGroupIds The list of spread placement group IDs. Only one can be specified. You can call the [DescribeDisasterRecoverGroups](https://intl.cloud.tencent.com/document/product/213/17810?from_cn_redirect=1) API and obtain this parameter from the `DisasterRecoverGroupId` field in the response. */ public void setDisasterRecoverGroupIds(String [] DisasterRecoverGroupIds) { this.DisasterRecoverGroupIds = DisasterRecoverGroupIds; } /** * Get Whether to enable the cluster-level CBS encryption. Valid values:
  • `true`: Enable
  • `false` (default): Disable
  • * @return EnableCbsEncryptFlag Whether to enable the cluster-level CBS encryption. Valid values:
  • `true`: Enable
  • `false` (default): Disable
  • */ public Boolean getEnableCbsEncryptFlag() { return this.EnableCbsEncryptFlag; } /** * Set Whether to enable the cluster-level CBS encryption. Valid values:
  • `true`: Enable
  • `false` (default): Disable
  • * @param EnableCbsEncryptFlag Whether to enable the cluster-level CBS encryption. Valid values:
  • `true`: Enable
  • `false` (default): Disable
  • */ public void setEnableCbsEncryptFlag(Boolean EnableCbsEncryptFlag) { this.EnableCbsEncryptFlag = EnableCbsEncryptFlag; } /** * Get The metadatabase information. If `MetaType` is `EMR_NEW_META`, `MetaDataJdbcUrl`, `MetaDataUser`, `MetaDataPass`, and `UnifyMetaInstanceId` are not required. If `MetaType` is `EMR_EXIT_META`, `UnifyMetaInstanceId` is required. If `MetaType` is `USER_CUSTOM_META`, `MetaDataJdbcUrl`, `MetaDataUser`, and `MetaDataPass` are required. * @return MetaDBInfo The metadatabase information. If `MetaType` is `EMR_NEW_META`, `MetaDataJdbcUrl`, `MetaDataUser`, `MetaDataPass`, and `UnifyMetaInstanceId` are not required. If `MetaType` is `EMR_EXIT_META`, `UnifyMetaInstanceId` is required. If `MetaType` is `USER_CUSTOM_META`, `MetaDataJdbcUrl`, `MetaDataUser`, and `MetaDataPass` are required. */ public CustomMetaDBInfo getMetaDBInfo() { return this.MetaDBInfo; } /** * Set The metadatabase information. If `MetaType` is `EMR_NEW_META`, `MetaDataJdbcUrl`, `MetaDataUser`, `MetaDataPass`, and `UnifyMetaInstanceId` are not required. If `MetaType` is `EMR_EXIT_META`, `UnifyMetaInstanceId` is required. If `MetaType` is `USER_CUSTOM_META`, `MetaDataJdbcUrl`, `MetaDataUser`, and `MetaDataPass` are required. * @param MetaDBInfo The metadatabase information. If `MetaType` is `EMR_NEW_META`, `MetaDataJdbcUrl`, `MetaDataUser`, `MetaDataPass`, and `UnifyMetaInstanceId` are not required. If `MetaType` is `EMR_EXIT_META`, `UnifyMetaInstanceId` is required. If `MetaType` is `USER_CUSTOM_META`, `MetaDataJdbcUrl`, `MetaDataUser`, and `MetaDataPass` are required. */ public void setMetaDBInfo(CustomMetaDBInfo MetaDBInfo) { this.MetaDBInfo = MetaDBInfo; } /** * Get The shared component information. * @return DependService The shared component information. */ public DependService [] getDependService() { return this.DependService; } /** * Set The shared component information. * @param DependService The shared component information. */ public void setDependService(DependService [] DependService) { this.DependService = DependService; } /** * Get The node resource specs. A spec is specified for each AZ, with the first spec for the primary AZ, the second for the backup AZ, and the third for the arbitrator AZ. If the multi-AZ mode is not enabled, only one spec is required. * @return ZoneResourceConfiguration The node resource specs. A spec is specified for each AZ, with the first spec for the primary AZ, the second for the backup AZ, and the third for the arbitrator AZ. If the multi-AZ mode is not enabled, only one spec is required. */ public ZoneResourceConfiguration [] getZoneResourceConfiguration() { return this.ZoneResourceConfiguration; } /** * Set The node resource specs. A spec is specified for each AZ, with the first spec for the primary AZ, the second for the backup AZ, and the third for the arbitrator AZ. If the multi-AZ mode is not enabled, only one spec is required. * @param ZoneResourceConfiguration The node resource specs. A spec is specified for each AZ, with the first spec for the primary AZ, the second for the backup AZ, and the third for the arbitrator AZ. If the multi-AZ mode is not enabled, only one spec is required. */ public void setZoneResourceConfiguration(ZoneResourceConfiguration [] ZoneResourceConfiguration) { this.ZoneResourceConfiguration = ZoneResourceConfiguration; } public CreateClusterRequest() { } /** * 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 CreateClusterRequest(CreateClusterRequest source) { if (source.ProductVersion != null) { this.ProductVersion = new String(source.ProductVersion); } if (source.EnableSupportHAFlag != null) { this.EnableSupportHAFlag = new Boolean(source.EnableSupportHAFlag); } if (source.InstanceName != null) { this.InstanceName = new String(source.InstanceName); } if (source.InstanceChargeType != null) { this.InstanceChargeType = new String(source.InstanceChargeType); } if (source.LoginSettings != null) { this.LoginSettings = new LoginSettings(source.LoginSettings); } if (source.SceneSoftwareConfig != null) { this.SceneSoftwareConfig = new SceneSoftwareConfig(source.SceneSoftwareConfig); } if (source.InstanceChargePrepaid != null) { this.InstanceChargePrepaid = new InstanceChargePrepaid(source.InstanceChargePrepaid); } if (source.SecurityGroupIds != null) { this.SecurityGroupIds = new String[source.SecurityGroupIds.length]; for (int i = 0; i < source.SecurityGroupIds.length; i++) { this.SecurityGroupIds[i] = new String(source.SecurityGroupIds[i]); } } if (source.ScriptBootstrapActionConfig != null) { this.ScriptBootstrapActionConfig = new ScriptBootstrapActionConfig[source.ScriptBootstrapActionConfig.length]; for (int i = 0; i < source.ScriptBootstrapActionConfig.length; i++) { this.ScriptBootstrapActionConfig[i] = new ScriptBootstrapActionConfig(source.ScriptBootstrapActionConfig[i]); } } if (source.ClientToken != null) { this.ClientToken = new String(source.ClientToken); } if (source.NeedMasterWan != null) { this.NeedMasterWan = new String(source.NeedMasterWan); } if (source.EnableRemoteLoginFlag != null) { this.EnableRemoteLoginFlag = new Boolean(source.EnableRemoteLoginFlag); } if (source.EnableKerberosFlag != null) { this.EnableKerberosFlag = new Boolean(source.EnableKerberosFlag); } if (source.CustomConf != null) { this.CustomConf = new String(source.CustomConf); } 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.EnableCbsEncryptFlag != null) { this.EnableCbsEncryptFlag = new Boolean(source.EnableCbsEncryptFlag); } if (source.MetaDBInfo != null) { this.MetaDBInfo = new CustomMetaDBInfo(source.MetaDBInfo); } if (source.DependService != null) { this.DependService = new DependService[source.DependService.length]; for (int i = 0; i < source.DependService.length; i++) { this.DependService[i] = new DependService(source.DependService[i]); } } if (source.ZoneResourceConfiguration != null) { this.ZoneResourceConfiguration = new ZoneResourceConfiguration[source.ZoneResourceConfiguration.length]; for (int i = 0; i < source.ZoneResourceConfiguration.length; i++) { this.ZoneResourceConfiguration[i] = new ZoneResourceConfiguration(source.ZoneResourceConfiguration[i]); } } } /** * Internal implementation, normal users should not use it. */ public void toMap(HashMap map, String prefix) { this.setParamSimple(map, prefix + "ProductVersion", this.ProductVersion); this.setParamSimple(map, prefix + "EnableSupportHAFlag", this.EnableSupportHAFlag); this.setParamSimple(map, prefix + "InstanceName", this.InstanceName); this.setParamSimple(map, prefix + "InstanceChargeType", this.InstanceChargeType); this.setParamObj(map, prefix + "LoginSettings.", this.LoginSettings); this.setParamObj(map, prefix + "SceneSoftwareConfig.", this.SceneSoftwareConfig); this.setParamObj(map, prefix + "InstanceChargePrepaid.", this.InstanceChargePrepaid); this.setParamArraySimple(map, prefix + "SecurityGroupIds.", this.SecurityGroupIds); this.setParamArrayObj(map, prefix + "ScriptBootstrapActionConfig.", this.ScriptBootstrapActionConfig); this.setParamSimple(map, prefix + "ClientToken", this.ClientToken); this.setParamSimple(map, prefix + "NeedMasterWan", this.NeedMasterWan); this.setParamSimple(map, prefix + "EnableRemoteLoginFlag", this.EnableRemoteLoginFlag); this.setParamSimple(map, prefix + "EnableKerberosFlag", this.EnableKerberosFlag); this.setParamSimple(map, prefix + "CustomConf", this.CustomConf); this.setParamArrayObj(map, prefix + "Tags.", this.Tags); this.setParamArraySimple(map, prefix + "DisasterRecoverGroupIds.", this.DisasterRecoverGroupIds); this.setParamSimple(map, prefix + "EnableCbsEncryptFlag", this.EnableCbsEncryptFlag); this.setParamObj(map, prefix + "MetaDBInfo.", this.MetaDBInfo); this.setParamArrayObj(map, prefix + "DependService.", this.DependService); this.setParamArrayObj(map, prefix + "ZoneResourceConfiguration.", this.ZoneResourceConfiguration); } }




    © 2015 - 2025 Weber Informatics LLC | Privacy Policy