/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Contains the inputs for the CreateHsm operation.See
* Also:
AWS
* API Reference
The identifier of the subnet in your VPC in which to place the HSM.
*/ inline const Aws::String& GetSubnetId() const{ return m_subnetId; } /** *The identifier of the subnet in your VPC in which to place the HSM.
*/ inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; } /** *The identifier of the subnet in your VPC in which to place the HSM.
*/ inline void SetSubnetId(const Aws::String& value) { m_subnetIdHasBeenSet = true; m_subnetId = value; } /** *The identifier of the subnet in your VPC in which to place the HSM.
*/ inline void SetSubnetId(Aws::String&& value) { m_subnetIdHasBeenSet = true; m_subnetId = std::move(value); } /** *The identifier of the subnet in your VPC in which to place the HSM.
*/ inline void SetSubnetId(const char* value) { m_subnetIdHasBeenSet = true; m_subnetId.assign(value); } /** *The identifier of the subnet in your VPC in which to place the HSM.
*/ inline CreateHsmRequest& WithSubnetId(const Aws::String& value) { SetSubnetId(value); return *this;} /** *The identifier of the subnet in your VPC in which to place the HSM.
*/ inline CreateHsmRequest& WithSubnetId(Aws::String&& value) { SetSubnetId(std::move(value)); return *this;} /** *The identifier of the subnet in your VPC in which to place the HSM.
*/ inline CreateHsmRequest& WithSubnetId(const char* value) { SetSubnetId(value); return *this;} /** *The SSH public key to install on the HSM.
*/ inline const Aws::String& GetSshKey() const{ return m_sshKey; } /** *The SSH public key to install on the HSM.
*/ inline bool SshKeyHasBeenSet() const { return m_sshKeyHasBeenSet; } /** *The SSH public key to install on the HSM.
*/ inline void SetSshKey(const Aws::String& value) { m_sshKeyHasBeenSet = true; m_sshKey = value; } /** *The SSH public key to install on the HSM.
*/ inline void SetSshKey(Aws::String&& value) { m_sshKeyHasBeenSet = true; m_sshKey = std::move(value); } /** *The SSH public key to install on the HSM.
*/ inline void SetSshKey(const char* value) { m_sshKeyHasBeenSet = true; m_sshKey.assign(value); } /** *The SSH public key to install on the HSM.
*/ inline CreateHsmRequest& WithSshKey(const Aws::String& value) { SetSshKey(value); return *this;} /** *The SSH public key to install on the HSM.
*/ inline CreateHsmRequest& WithSshKey(Aws::String&& value) { SetSshKey(std::move(value)); return *this;} /** *The SSH public key to install on the HSM.
*/ inline CreateHsmRequest& WithSshKey(const char* value) { SetSshKey(value); return *this;} /** *The IP address to assign to the HSM's ENI.
If an IP address is not * specified, an IP address will be randomly chosen from the CIDR range of the * subnet.
*/ inline const Aws::String& GetEniIp() const{ return m_eniIp; } /** *The IP address to assign to the HSM's ENI.
If an IP address is not * specified, an IP address will be randomly chosen from the CIDR range of the * subnet.
*/ inline bool EniIpHasBeenSet() const { return m_eniIpHasBeenSet; } /** *The IP address to assign to the HSM's ENI.
If an IP address is not * specified, an IP address will be randomly chosen from the CIDR range of the * subnet.
*/ inline void SetEniIp(const Aws::String& value) { m_eniIpHasBeenSet = true; m_eniIp = value; } /** *The IP address to assign to the HSM's ENI.
If an IP address is not * specified, an IP address will be randomly chosen from the CIDR range of the * subnet.
*/ inline void SetEniIp(Aws::String&& value) { m_eniIpHasBeenSet = true; m_eniIp = std::move(value); } /** *The IP address to assign to the HSM's ENI.
If an IP address is not * specified, an IP address will be randomly chosen from the CIDR range of the * subnet.
*/ inline void SetEniIp(const char* value) { m_eniIpHasBeenSet = true; m_eniIp.assign(value); } /** *The IP address to assign to the HSM's ENI.
If an IP address is not * specified, an IP address will be randomly chosen from the CIDR range of the * subnet.
*/ inline CreateHsmRequest& WithEniIp(const Aws::String& value) { SetEniIp(value); return *this;} /** *The IP address to assign to the HSM's ENI.
If an IP address is not * specified, an IP address will be randomly chosen from the CIDR range of the * subnet.
*/ inline CreateHsmRequest& WithEniIp(Aws::String&& value) { SetEniIp(std::move(value)); return *this;} /** *The IP address to assign to the HSM's ENI.
If an IP address is not * specified, an IP address will be randomly chosen from the CIDR range of the * subnet.
*/ inline CreateHsmRequest& WithEniIp(const char* value) { SetEniIp(value); return *this;} /** *The ARN of an IAM role to enable the AWS CloudHSM service to allocate an ENI * on your behalf.
*/ inline const Aws::String& GetIamRoleArn() const{ return m_iamRoleArn; } /** *The ARN of an IAM role to enable the AWS CloudHSM service to allocate an ENI * on your behalf.
*/ inline bool IamRoleArnHasBeenSet() const { return m_iamRoleArnHasBeenSet; } /** *The ARN of an IAM role to enable the AWS CloudHSM service to allocate an ENI * on your behalf.
*/ inline void SetIamRoleArn(const Aws::String& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = value; } /** *The ARN of an IAM role to enable the AWS CloudHSM service to allocate an ENI * on your behalf.
*/ inline void SetIamRoleArn(Aws::String&& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = std::move(value); } /** *The ARN of an IAM role to enable the AWS CloudHSM service to allocate an ENI * on your behalf.
*/ inline void SetIamRoleArn(const char* value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn.assign(value); } /** *The ARN of an IAM role to enable the AWS CloudHSM service to allocate an ENI * on your behalf.
*/ inline CreateHsmRequest& WithIamRoleArn(const Aws::String& value) { SetIamRoleArn(value); return *this;} /** *The ARN of an IAM role to enable the AWS CloudHSM service to allocate an ENI * on your behalf.
*/ inline CreateHsmRequest& WithIamRoleArn(Aws::String&& value) { SetIamRoleArn(std::move(value)); return *this;} /** *The ARN of an IAM role to enable the AWS CloudHSM service to allocate an ENI * on your behalf.
*/ inline CreateHsmRequest& WithIamRoleArn(const char* value) { SetIamRoleArn(value); return *this;} /** *The external ID from IamRoleArn, if present.
The external ID from IamRoleArn, if present.
The external ID from IamRoleArn, if present.
The external ID from IamRoleArn, if present.
The external ID from IamRoleArn, if present.
The external ID from IamRoleArn, if present.
The external ID from IamRoleArn, if present.
The external ID from IamRoleArn, if present.
A user-defined token to ensure idempotence. Subsequent calls to this * operation with the same token will be ignored.
*/ inline const Aws::String& GetClientToken() const{ return m_clientToken; } /** *A user-defined token to ensure idempotence. Subsequent calls to this * operation with the same token will be ignored.
*/ inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; } /** *A user-defined token to ensure idempotence. Subsequent calls to this * operation with the same token will be ignored.
*/ inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; } /** *A user-defined token to ensure idempotence. Subsequent calls to this * operation with the same token will be ignored.
*/ inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); } /** *A user-defined token to ensure idempotence. Subsequent calls to this * operation with the same token will be ignored.
*/ inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); } /** *A user-defined token to ensure idempotence. Subsequent calls to this * operation with the same token will be ignored.
*/ inline CreateHsmRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;} /** *A user-defined token to ensure idempotence. Subsequent calls to this * operation with the same token will be ignored.
*/ inline CreateHsmRequest& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;} /** *A user-defined token to ensure idempotence. Subsequent calls to this * operation with the same token will be ignored.
*/ inline CreateHsmRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;} /** *The IP address for the syslog monitoring server. The AWS CloudHSM service * only supports one syslog monitoring server.
*/ inline const Aws::String& GetSyslogIp() const{ return m_syslogIp; } /** *The IP address for the syslog monitoring server. The AWS CloudHSM service * only supports one syslog monitoring server.
*/ inline bool SyslogIpHasBeenSet() const { return m_syslogIpHasBeenSet; } /** *The IP address for the syslog monitoring server. The AWS CloudHSM service * only supports one syslog monitoring server.
*/ inline void SetSyslogIp(const Aws::String& value) { m_syslogIpHasBeenSet = true; m_syslogIp = value; } /** *The IP address for the syslog monitoring server. The AWS CloudHSM service * only supports one syslog monitoring server.
*/ inline void SetSyslogIp(Aws::String&& value) { m_syslogIpHasBeenSet = true; m_syslogIp = std::move(value); } /** *The IP address for the syslog monitoring server. The AWS CloudHSM service * only supports one syslog monitoring server.
*/ inline void SetSyslogIp(const char* value) { m_syslogIpHasBeenSet = true; m_syslogIp.assign(value); } /** *The IP address for the syslog monitoring server. The AWS CloudHSM service * only supports one syslog monitoring server.
*/ inline CreateHsmRequest& WithSyslogIp(const Aws::String& value) { SetSyslogIp(value); return *this;} /** *The IP address for the syslog monitoring server. The AWS CloudHSM service * only supports one syslog monitoring server.
*/ inline CreateHsmRequest& WithSyslogIp(Aws::String&& value) { SetSyslogIp(std::move(value)); return *this;} /** *The IP address for the syslog monitoring server. The AWS CloudHSM service * only supports one syslog monitoring server.
*/ inline CreateHsmRequest& WithSyslogIp(const char* value) { SetSyslogIp(value); return *this;} private: Aws::String m_subnetId; bool m_subnetIdHasBeenSet = false; Aws::String m_sshKey; bool m_sshKeyHasBeenSet = false; Aws::String m_eniIp; bool m_eniIpHasBeenSet = false; Aws::String m_iamRoleArn; bool m_iamRoleArnHasBeenSet = false; Aws::String m_externalId; bool m_externalIdHasBeenSet = false; SubscriptionType m_subscriptionType; bool m_subscriptionTypeHasBeenSet = false; Aws::String m_clientToken; bool m_clientTokenHasBeenSet = false; Aws::String m_syslogIp; bool m_syslogIpHasBeenSet = false; }; } // namespace Model } // namespace CloudHSM } // namespace Aws