/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace DataSync { namespace Model { /** */ class CreateLocationHdfsRequest : public DataSyncRequest { public: AWS_DATASYNC_API CreateLocationHdfsRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "CreateLocationHdfs"; } AWS_DATASYNC_API Aws::String SerializePayload() const override; AWS_DATASYNC_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

A subdirectory in the HDFS cluster. This subdirectory is used to read data * from or write data to the HDFS cluster. If the subdirectory isn't specified, it * will default to /.

*/ inline const Aws::String& GetSubdirectory() const{ return m_subdirectory; } /** *

A subdirectory in the HDFS cluster. This subdirectory is used to read data * from or write data to the HDFS cluster. If the subdirectory isn't specified, it * will default to /.

*/ inline bool SubdirectoryHasBeenSet() const { return m_subdirectoryHasBeenSet; } /** *

A subdirectory in the HDFS cluster. This subdirectory is used to read data * from or write data to the HDFS cluster. If the subdirectory isn't specified, it * will default to /.

*/ inline void SetSubdirectory(const Aws::String& value) { m_subdirectoryHasBeenSet = true; m_subdirectory = value; } /** *

A subdirectory in the HDFS cluster. This subdirectory is used to read data * from or write data to the HDFS cluster. If the subdirectory isn't specified, it * will default to /.

*/ inline void SetSubdirectory(Aws::String&& value) { m_subdirectoryHasBeenSet = true; m_subdirectory = std::move(value); } /** *

A subdirectory in the HDFS cluster. This subdirectory is used to read data * from or write data to the HDFS cluster. If the subdirectory isn't specified, it * will default to /.

*/ inline void SetSubdirectory(const char* value) { m_subdirectoryHasBeenSet = true; m_subdirectory.assign(value); } /** *

A subdirectory in the HDFS cluster. This subdirectory is used to read data * from or write data to the HDFS cluster. If the subdirectory isn't specified, it * will default to /.

*/ inline CreateLocationHdfsRequest& WithSubdirectory(const Aws::String& value) { SetSubdirectory(value); return *this;} /** *

A subdirectory in the HDFS cluster. This subdirectory is used to read data * from or write data to the HDFS cluster. If the subdirectory isn't specified, it * will default to /.

*/ inline CreateLocationHdfsRequest& WithSubdirectory(Aws::String&& value) { SetSubdirectory(std::move(value)); return *this;} /** *

A subdirectory in the HDFS cluster. This subdirectory is used to read data * from or write data to the HDFS cluster. If the subdirectory isn't specified, it * will default to /.

*/ inline CreateLocationHdfsRequest& WithSubdirectory(const char* value) { SetSubdirectory(value); return *this;} /** *

The NameNode that manages the HDFS namespace. The NameNode performs * operations such as opening, closing, and renaming files and directories. The * NameNode contains the information to map blocks of data to the DataNodes. You * can use only one NameNode.

*/ inline const Aws::Vector& GetNameNodes() const{ return m_nameNodes; } /** *

The NameNode that manages the HDFS namespace. The NameNode performs * operations such as opening, closing, and renaming files and directories. The * NameNode contains the information to map blocks of data to the DataNodes. You * can use only one NameNode.

*/ inline bool NameNodesHasBeenSet() const { return m_nameNodesHasBeenSet; } /** *

The NameNode that manages the HDFS namespace. The NameNode performs * operations such as opening, closing, and renaming files and directories. The * NameNode contains the information to map blocks of data to the DataNodes. You * can use only one NameNode.

*/ inline void SetNameNodes(const Aws::Vector& value) { m_nameNodesHasBeenSet = true; m_nameNodes = value; } /** *

The NameNode that manages the HDFS namespace. The NameNode performs * operations such as opening, closing, and renaming files and directories. The * NameNode contains the information to map blocks of data to the DataNodes. You * can use only one NameNode.

*/ inline void SetNameNodes(Aws::Vector&& value) { m_nameNodesHasBeenSet = true; m_nameNodes = std::move(value); } /** *

The NameNode that manages the HDFS namespace. The NameNode performs * operations such as opening, closing, and renaming files and directories. The * NameNode contains the information to map blocks of data to the DataNodes. You * can use only one NameNode.

*/ inline CreateLocationHdfsRequest& WithNameNodes(const Aws::Vector& value) { SetNameNodes(value); return *this;} /** *

The NameNode that manages the HDFS namespace. The NameNode performs * operations such as opening, closing, and renaming files and directories. The * NameNode contains the information to map blocks of data to the DataNodes. You * can use only one NameNode.

*/ inline CreateLocationHdfsRequest& WithNameNodes(Aws::Vector&& value) { SetNameNodes(std::move(value)); return *this;} /** *

The NameNode that manages the HDFS namespace. The NameNode performs * operations such as opening, closing, and renaming files and directories. The * NameNode contains the information to map blocks of data to the DataNodes. You * can use only one NameNode.

*/ inline CreateLocationHdfsRequest& AddNameNodes(const HdfsNameNode& value) { m_nameNodesHasBeenSet = true; m_nameNodes.push_back(value); return *this; } /** *

The NameNode that manages the HDFS namespace. The NameNode performs * operations such as opening, closing, and renaming files and directories. The * NameNode contains the information to map blocks of data to the DataNodes. You * can use only one NameNode.

*/ inline CreateLocationHdfsRequest& AddNameNodes(HdfsNameNode&& value) { m_nameNodesHasBeenSet = true; m_nameNodes.push_back(std::move(value)); return *this; } /** *

The size of data blocks to write into the HDFS cluster. The block size must * be a multiple of 512 bytes. The default block size is 128 mebibytes (MiB).

*/ inline int GetBlockSize() const{ return m_blockSize; } /** *

The size of data blocks to write into the HDFS cluster. The block size must * be a multiple of 512 bytes. The default block size is 128 mebibytes (MiB).

*/ inline bool BlockSizeHasBeenSet() const { return m_blockSizeHasBeenSet; } /** *

The size of data blocks to write into the HDFS cluster. The block size must * be a multiple of 512 bytes. The default block size is 128 mebibytes (MiB).

*/ inline void SetBlockSize(int value) { m_blockSizeHasBeenSet = true; m_blockSize = value; } /** *

The size of data blocks to write into the HDFS cluster. The block size must * be a multiple of 512 bytes. The default block size is 128 mebibytes (MiB).

*/ inline CreateLocationHdfsRequest& WithBlockSize(int value) { SetBlockSize(value); return *this;} /** *

The number of DataNodes to replicate the data to when writing to the HDFS * cluster. By default, data is replicated to three DataNodes.

*/ inline int GetReplicationFactor() const{ return m_replicationFactor; } /** *

The number of DataNodes to replicate the data to when writing to the HDFS * cluster. By default, data is replicated to three DataNodes.

*/ inline bool ReplicationFactorHasBeenSet() const { return m_replicationFactorHasBeenSet; } /** *

The number of DataNodes to replicate the data to when writing to the HDFS * cluster. By default, data is replicated to three DataNodes.

*/ inline void SetReplicationFactor(int value) { m_replicationFactorHasBeenSet = true; m_replicationFactor = value; } /** *

The number of DataNodes to replicate the data to when writing to the HDFS * cluster. By default, data is replicated to three DataNodes.

*/ inline CreateLocationHdfsRequest& WithReplicationFactor(int value) { SetReplicationFactor(value); return *this;} /** *

The URI of the HDFS cluster's Key Management Server (KMS).

*/ inline const Aws::String& GetKmsKeyProviderUri() const{ return m_kmsKeyProviderUri; } /** *

The URI of the HDFS cluster's Key Management Server (KMS).

*/ inline bool KmsKeyProviderUriHasBeenSet() const { return m_kmsKeyProviderUriHasBeenSet; } /** *

The URI of the HDFS cluster's Key Management Server (KMS).

*/ inline void SetKmsKeyProviderUri(const Aws::String& value) { m_kmsKeyProviderUriHasBeenSet = true; m_kmsKeyProviderUri = value; } /** *

The URI of the HDFS cluster's Key Management Server (KMS).

*/ inline void SetKmsKeyProviderUri(Aws::String&& value) { m_kmsKeyProviderUriHasBeenSet = true; m_kmsKeyProviderUri = std::move(value); } /** *

The URI of the HDFS cluster's Key Management Server (KMS).

*/ inline void SetKmsKeyProviderUri(const char* value) { m_kmsKeyProviderUriHasBeenSet = true; m_kmsKeyProviderUri.assign(value); } /** *

The URI of the HDFS cluster's Key Management Server (KMS).

*/ inline CreateLocationHdfsRequest& WithKmsKeyProviderUri(const Aws::String& value) { SetKmsKeyProviderUri(value); return *this;} /** *

The URI of the HDFS cluster's Key Management Server (KMS).

*/ inline CreateLocationHdfsRequest& WithKmsKeyProviderUri(Aws::String&& value) { SetKmsKeyProviderUri(std::move(value)); return *this;} /** *

The URI of the HDFS cluster's Key Management Server (KMS).

*/ inline CreateLocationHdfsRequest& WithKmsKeyProviderUri(const char* value) { SetKmsKeyProviderUri(value); return *this;} /** *

The Quality of Protection (QOP) configuration specifies the Remote Procedure * Call (RPC) and data transfer protection settings configured on the Hadoop * Distributed File System (HDFS) cluster. If QopConfiguration isn't * specified, RpcProtection and DataTransferProtection * default to PRIVACY. If you set RpcProtection or * DataTransferProtection, the other parameter assumes the same value. *

*/ inline const QopConfiguration& GetQopConfiguration() const{ return m_qopConfiguration; } /** *

The Quality of Protection (QOP) configuration specifies the Remote Procedure * Call (RPC) and data transfer protection settings configured on the Hadoop * Distributed File System (HDFS) cluster. If QopConfiguration isn't * specified, RpcProtection and DataTransferProtection * default to PRIVACY. If you set RpcProtection or * DataTransferProtection, the other parameter assumes the same value. *

*/ inline bool QopConfigurationHasBeenSet() const { return m_qopConfigurationHasBeenSet; } /** *

The Quality of Protection (QOP) configuration specifies the Remote Procedure * Call (RPC) and data transfer protection settings configured on the Hadoop * Distributed File System (HDFS) cluster. If QopConfiguration isn't * specified, RpcProtection and DataTransferProtection * default to PRIVACY. If you set RpcProtection or * DataTransferProtection, the other parameter assumes the same value. *

*/ inline void SetQopConfiguration(const QopConfiguration& value) { m_qopConfigurationHasBeenSet = true; m_qopConfiguration = value; } /** *

The Quality of Protection (QOP) configuration specifies the Remote Procedure * Call (RPC) and data transfer protection settings configured on the Hadoop * Distributed File System (HDFS) cluster. If QopConfiguration isn't * specified, RpcProtection and DataTransferProtection * default to PRIVACY. If you set RpcProtection or * DataTransferProtection, the other parameter assumes the same value. *

*/ inline void SetQopConfiguration(QopConfiguration&& value) { m_qopConfigurationHasBeenSet = true; m_qopConfiguration = std::move(value); } /** *

The Quality of Protection (QOP) configuration specifies the Remote Procedure * Call (RPC) and data transfer protection settings configured on the Hadoop * Distributed File System (HDFS) cluster. If QopConfiguration isn't * specified, RpcProtection and DataTransferProtection * default to PRIVACY. If you set RpcProtection or * DataTransferProtection, the other parameter assumes the same value. *

*/ inline CreateLocationHdfsRequest& WithQopConfiguration(const QopConfiguration& value) { SetQopConfiguration(value); return *this;} /** *

The Quality of Protection (QOP) configuration specifies the Remote Procedure * Call (RPC) and data transfer protection settings configured on the Hadoop * Distributed File System (HDFS) cluster. If QopConfiguration isn't * specified, RpcProtection and DataTransferProtection * default to PRIVACY. If you set RpcProtection or * DataTransferProtection, the other parameter assumes the same value. *

*/ inline CreateLocationHdfsRequest& WithQopConfiguration(QopConfiguration&& value) { SetQopConfiguration(std::move(value)); return *this;} /** *

The type of authentication used to determine the identity of the user.

*/ inline const HdfsAuthenticationType& GetAuthenticationType() const{ return m_authenticationType; } /** *

The type of authentication used to determine the identity of the user.

*/ inline bool AuthenticationTypeHasBeenSet() const { return m_authenticationTypeHasBeenSet; } /** *

The type of authentication used to determine the identity of the user.

*/ inline void SetAuthenticationType(const HdfsAuthenticationType& value) { m_authenticationTypeHasBeenSet = true; m_authenticationType = value; } /** *

The type of authentication used to determine the identity of the user.

*/ inline void SetAuthenticationType(HdfsAuthenticationType&& value) { m_authenticationTypeHasBeenSet = true; m_authenticationType = std::move(value); } /** *

The type of authentication used to determine the identity of the user.

*/ inline CreateLocationHdfsRequest& WithAuthenticationType(const HdfsAuthenticationType& value) { SetAuthenticationType(value); return *this;} /** *

The type of authentication used to determine the identity of the user.

*/ inline CreateLocationHdfsRequest& WithAuthenticationType(HdfsAuthenticationType&& value) { SetAuthenticationType(std::move(value)); return *this;} /** *

The user name used to identify the client on the host operating system.

*

If SIMPLE is specified for * AuthenticationType, this parameter is required.

*/ inline const Aws::String& GetSimpleUser() const{ return m_simpleUser; } /** *

The user name used to identify the client on the host operating system.

*

If SIMPLE is specified for * AuthenticationType, this parameter is required.

*/ inline bool SimpleUserHasBeenSet() const { return m_simpleUserHasBeenSet; } /** *

The user name used to identify the client on the host operating system.

*

If SIMPLE is specified for * AuthenticationType, this parameter is required.

*/ inline void SetSimpleUser(const Aws::String& value) { m_simpleUserHasBeenSet = true; m_simpleUser = value; } /** *

The user name used to identify the client on the host operating system.

*

If SIMPLE is specified for * AuthenticationType, this parameter is required.

*/ inline void SetSimpleUser(Aws::String&& value) { m_simpleUserHasBeenSet = true; m_simpleUser = std::move(value); } /** *

The user name used to identify the client on the host operating system.

*

If SIMPLE is specified for * AuthenticationType, this parameter is required.

*/ inline void SetSimpleUser(const char* value) { m_simpleUserHasBeenSet = true; m_simpleUser.assign(value); } /** *

The user name used to identify the client on the host operating system.

*

If SIMPLE is specified for * AuthenticationType, this parameter is required.

*/ inline CreateLocationHdfsRequest& WithSimpleUser(const Aws::String& value) { SetSimpleUser(value); return *this;} /** *

The user name used to identify the client on the host operating system.

*

If SIMPLE is specified for * AuthenticationType, this parameter is required.

*/ inline CreateLocationHdfsRequest& WithSimpleUser(Aws::String&& value) { SetSimpleUser(std::move(value)); return *this;} /** *

The user name used to identify the client on the host operating system.

*

If SIMPLE is specified for * AuthenticationType, this parameter is required.

*/ inline CreateLocationHdfsRequest& WithSimpleUser(const char* value) { SetSimpleUser(value); return *this;} /** *

The Kerberos principal with access to the files and folders on the HDFS * cluster.

If KERBEROS is specified for * AuthenticationType, this parameter is required.

*/ inline const Aws::String& GetKerberosPrincipal() const{ return m_kerberosPrincipal; } /** *

The Kerberos principal with access to the files and folders on the HDFS * cluster.

If KERBEROS is specified for * AuthenticationType, this parameter is required.

*/ inline bool KerberosPrincipalHasBeenSet() const { return m_kerberosPrincipalHasBeenSet; } /** *

The Kerberos principal with access to the files and folders on the HDFS * cluster.

If KERBEROS is specified for * AuthenticationType, this parameter is required.

*/ inline void SetKerberosPrincipal(const Aws::String& value) { m_kerberosPrincipalHasBeenSet = true; m_kerberosPrincipal = value; } /** *

The Kerberos principal with access to the files and folders on the HDFS * cluster.

If KERBEROS is specified for * AuthenticationType, this parameter is required.

*/ inline void SetKerberosPrincipal(Aws::String&& value) { m_kerberosPrincipalHasBeenSet = true; m_kerberosPrincipal = std::move(value); } /** *

The Kerberos principal with access to the files and folders on the HDFS * cluster.

If KERBEROS is specified for * AuthenticationType, this parameter is required.

*/ inline void SetKerberosPrincipal(const char* value) { m_kerberosPrincipalHasBeenSet = true; m_kerberosPrincipal.assign(value); } /** *

The Kerberos principal with access to the files and folders on the HDFS * cluster.

If KERBEROS is specified for * AuthenticationType, this parameter is required.

*/ inline CreateLocationHdfsRequest& WithKerberosPrincipal(const Aws::String& value) { SetKerberosPrincipal(value); return *this;} /** *

The Kerberos principal with access to the files and folders on the HDFS * cluster.

If KERBEROS is specified for * AuthenticationType, this parameter is required.

*/ inline CreateLocationHdfsRequest& WithKerberosPrincipal(Aws::String&& value) { SetKerberosPrincipal(std::move(value)); return *this;} /** *

The Kerberos principal with access to the files and folders on the HDFS * cluster.

If KERBEROS is specified for * AuthenticationType, this parameter is required.

*/ inline CreateLocationHdfsRequest& WithKerberosPrincipal(const char* value) { SetKerberosPrincipal(value); return *this;} /** *

The Kerberos key table (keytab) that contains mappings between the defined * Kerberos principal and the encrypted keys. You can load the keytab from a file * by providing the file's address. If you're using the CLI, it performs base64 * encoding for you. Otherwise, provide the base64-encoded text.

If * KERBEROS is specified for AuthenticationType, this * parameter is required.

*/ inline const Aws::Utils::ByteBuffer& GetKerberosKeytab() const{ return m_kerberosKeytab; } /** *

The Kerberos key table (keytab) that contains mappings between the defined * Kerberos principal and the encrypted keys. You can load the keytab from a file * by providing the file's address. If you're using the CLI, it performs base64 * encoding for you. Otherwise, provide the base64-encoded text.

If * KERBEROS is specified for AuthenticationType, this * parameter is required.

*/ inline bool KerberosKeytabHasBeenSet() const { return m_kerberosKeytabHasBeenSet; } /** *

The Kerberos key table (keytab) that contains mappings between the defined * Kerberos principal and the encrypted keys. You can load the keytab from a file * by providing the file's address. If you're using the CLI, it performs base64 * encoding for you. Otherwise, provide the base64-encoded text.

If * KERBEROS is specified for AuthenticationType, this * parameter is required.

*/ inline void SetKerberosKeytab(const Aws::Utils::ByteBuffer& value) { m_kerberosKeytabHasBeenSet = true; m_kerberosKeytab = value; } /** *

The Kerberos key table (keytab) that contains mappings between the defined * Kerberos principal and the encrypted keys. You can load the keytab from a file * by providing the file's address. If you're using the CLI, it performs base64 * encoding for you. Otherwise, provide the base64-encoded text.

If * KERBEROS is specified for AuthenticationType, this * parameter is required.

*/ inline void SetKerberosKeytab(Aws::Utils::ByteBuffer&& value) { m_kerberosKeytabHasBeenSet = true; m_kerberosKeytab = std::move(value); } /** *

The Kerberos key table (keytab) that contains mappings between the defined * Kerberos principal and the encrypted keys. You can load the keytab from a file * by providing the file's address. If you're using the CLI, it performs base64 * encoding for you. Otherwise, provide the base64-encoded text.

If * KERBEROS is specified for AuthenticationType, this * parameter is required.

*/ inline CreateLocationHdfsRequest& WithKerberosKeytab(const Aws::Utils::ByteBuffer& value) { SetKerberosKeytab(value); return *this;} /** *

The Kerberos key table (keytab) that contains mappings between the defined * Kerberos principal and the encrypted keys. You can load the keytab from a file * by providing the file's address. If you're using the CLI, it performs base64 * encoding for you. Otherwise, provide the base64-encoded text.

If * KERBEROS is specified for AuthenticationType, this * parameter is required.

*/ inline CreateLocationHdfsRequest& WithKerberosKeytab(Aws::Utils::ByteBuffer&& value) { SetKerberosKeytab(std::move(value)); return *this;} /** *

The krb5.conf file that contains the Kerberos configuration * information. You can load the krb5.conf file by providing the * file's address. If you're using the CLI, it performs the base64 encoding for * you. Otherwise, provide the base64-encoded text.

If * KERBEROS is specified for AuthenticationType, this * parameter is required.

*/ inline const Aws::Utils::ByteBuffer& GetKerberosKrb5Conf() const{ return m_kerberosKrb5Conf; } /** *

The krb5.conf file that contains the Kerberos configuration * information. You can load the krb5.conf file by providing the * file's address. If you're using the CLI, it performs the base64 encoding for * you. Otherwise, provide the base64-encoded text.

If * KERBEROS is specified for AuthenticationType, this * parameter is required.

*/ inline bool KerberosKrb5ConfHasBeenSet() const { return m_kerberosKrb5ConfHasBeenSet; } /** *

The krb5.conf file that contains the Kerberos configuration * information. You can load the krb5.conf file by providing the * file's address. If you're using the CLI, it performs the base64 encoding for * you. Otherwise, provide the base64-encoded text.

If * KERBEROS is specified for AuthenticationType, this * parameter is required.

*/ inline void SetKerberosKrb5Conf(const Aws::Utils::ByteBuffer& value) { m_kerberosKrb5ConfHasBeenSet = true; m_kerberosKrb5Conf = value; } /** *

The krb5.conf file that contains the Kerberos configuration * information. You can load the krb5.conf file by providing the * file's address. If you're using the CLI, it performs the base64 encoding for * you. Otherwise, provide the base64-encoded text.

If * KERBEROS is specified for AuthenticationType, this * parameter is required.

*/ inline void SetKerberosKrb5Conf(Aws::Utils::ByteBuffer&& value) { m_kerberosKrb5ConfHasBeenSet = true; m_kerberosKrb5Conf = std::move(value); } /** *

The krb5.conf file that contains the Kerberos configuration * information. You can load the krb5.conf file by providing the * file's address. If you're using the CLI, it performs the base64 encoding for * you. Otherwise, provide the base64-encoded text.

If * KERBEROS is specified for AuthenticationType, this * parameter is required.

*/ inline CreateLocationHdfsRequest& WithKerberosKrb5Conf(const Aws::Utils::ByteBuffer& value) { SetKerberosKrb5Conf(value); return *this;} /** *

The krb5.conf file that contains the Kerberos configuration * information. You can load the krb5.conf file by providing the * file's address. If you're using the CLI, it performs the base64 encoding for * you. Otherwise, provide the base64-encoded text.

If * KERBEROS is specified for AuthenticationType, this * parameter is required.

*/ inline CreateLocationHdfsRequest& WithKerberosKrb5Conf(Aws::Utils::ByteBuffer&& value) { SetKerberosKrb5Conf(std::move(value)); return *this;} /** *

The Amazon Resource Names (ARNs) of the agents that are used to connect to * the HDFS cluster.

*/ inline const Aws::Vector& GetAgentArns() const{ return m_agentArns; } /** *

The Amazon Resource Names (ARNs) of the agents that are used to connect to * the HDFS cluster.

*/ inline bool AgentArnsHasBeenSet() const { return m_agentArnsHasBeenSet; } /** *

The Amazon Resource Names (ARNs) of the agents that are used to connect to * the HDFS cluster.

*/ inline void SetAgentArns(const Aws::Vector& value) { m_agentArnsHasBeenSet = true; m_agentArns = value; } /** *

The Amazon Resource Names (ARNs) of the agents that are used to connect to * the HDFS cluster.

*/ inline void SetAgentArns(Aws::Vector&& value) { m_agentArnsHasBeenSet = true; m_agentArns = std::move(value); } /** *

The Amazon Resource Names (ARNs) of the agents that are used to connect to * the HDFS cluster.

*/ inline CreateLocationHdfsRequest& WithAgentArns(const Aws::Vector& value) { SetAgentArns(value); return *this;} /** *

The Amazon Resource Names (ARNs) of the agents that are used to connect to * the HDFS cluster.

*/ inline CreateLocationHdfsRequest& WithAgentArns(Aws::Vector&& value) { SetAgentArns(std::move(value)); return *this;} /** *

The Amazon Resource Names (ARNs) of the agents that are used to connect to * the HDFS cluster.

*/ inline CreateLocationHdfsRequest& AddAgentArns(const Aws::String& value) { m_agentArnsHasBeenSet = true; m_agentArns.push_back(value); return *this; } /** *

The Amazon Resource Names (ARNs) of the agents that are used to connect to * the HDFS cluster.

*/ inline CreateLocationHdfsRequest& AddAgentArns(Aws::String&& value) { m_agentArnsHasBeenSet = true; m_agentArns.push_back(std::move(value)); return *this; } /** *

The Amazon Resource Names (ARNs) of the agents that are used to connect to * the HDFS cluster.

*/ inline CreateLocationHdfsRequest& AddAgentArns(const char* value) { m_agentArnsHasBeenSet = true; m_agentArns.push_back(value); return *this; } /** *

The key-value pair that represents the tag that you want to add to the * location. The value can be an empty string. We recommend using tags to name your * resources.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

The key-value pair that represents the tag that you want to add to the * location. The value can be an empty string. We recommend using tags to name your * resources.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

The key-value pair that represents the tag that you want to add to the * location. The value can be an empty string. We recommend using tags to name your * resources.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

The key-value pair that represents the tag that you want to add to the * location. The value can be an empty string. We recommend using tags to name your * resources.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

The key-value pair that represents the tag that you want to add to the * location. The value can be an empty string. We recommend using tags to name your * resources.

*/ inline CreateLocationHdfsRequest& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

The key-value pair that represents the tag that you want to add to the * location. The value can be an empty string. We recommend using tags to name your * resources.

*/ inline CreateLocationHdfsRequest& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

The key-value pair that represents the tag that you want to add to the * location. The value can be an empty string. We recommend using tags to name your * resources.

*/ inline CreateLocationHdfsRequest& AddTags(const TagListEntry& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

The key-value pair that represents the tag that you want to add to the * location. The value can be an empty string. We recommend using tags to name your * resources.

*/ inline CreateLocationHdfsRequest& AddTags(TagListEntry&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_subdirectory; bool m_subdirectoryHasBeenSet = false; Aws::Vector m_nameNodes; bool m_nameNodesHasBeenSet = false; int m_blockSize; bool m_blockSizeHasBeenSet = false; int m_replicationFactor; bool m_replicationFactorHasBeenSet = false; Aws::String m_kmsKeyProviderUri; bool m_kmsKeyProviderUriHasBeenSet = false; QopConfiguration m_qopConfiguration; bool m_qopConfigurationHasBeenSet = false; HdfsAuthenticationType m_authenticationType; bool m_authenticationTypeHasBeenSet = false; Aws::String m_simpleUser; bool m_simpleUserHasBeenSet = false; Aws::String m_kerberosPrincipal; bool m_kerberosPrincipalHasBeenSet = false; Aws::Utils::ByteBuffer m_kerberosKeytab; bool m_kerberosKeytabHasBeenSet = false; Aws::Utils::ByteBuffer m_kerberosKrb5Conf; bool m_kerberosKrb5ConfHasBeenSet = false; Aws::Vector m_agentArns; bool m_agentArnsHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; }; } // namespace Model } // namespace DataSync } // namespace Aws