/** * 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 namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace DataSync { namespace Model { class DescribeLocationHdfsResult { public: AWS_DATASYNC_API DescribeLocationHdfsResult(); AWS_DATASYNC_API DescribeLocationHdfsResult(const Aws::AmazonWebServiceResult& result); AWS_DATASYNC_API DescribeLocationHdfsResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The ARN of the HDFS cluster location.

*/ inline const Aws::String& GetLocationArn() const{ return m_locationArn; } /** *

The ARN of the HDFS cluster location.

*/ inline void SetLocationArn(const Aws::String& value) { m_locationArn = value; } /** *

The ARN of the HDFS cluster location.

*/ inline void SetLocationArn(Aws::String&& value) { m_locationArn = std::move(value); } /** *

The ARN of the HDFS cluster location.

*/ inline void SetLocationArn(const char* value) { m_locationArn.assign(value); } /** *

The ARN of the HDFS cluster location.

*/ inline DescribeLocationHdfsResult& WithLocationArn(const Aws::String& value) { SetLocationArn(value); return *this;} /** *

The ARN of the HDFS cluster location.

*/ inline DescribeLocationHdfsResult& WithLocationArn(Aws::String&& value) { SetLocationArn(std::move(value)); return *this;} /** *

The ARN of the HDFS cluster location.

*/ inline DescribeLocationHdfsResult& WithLocationArn(const char* value) { SetLocationArn(value); return *this;} /** *

The URI of the HDFS cluster location.

*/ inline const Aws::String& GetLocationUri() const{ return m_locationUri; } /** *

The URI of the HDFS cluster location.

*/ inline void SetLocationUri(const Aws::String& value) { m_locationUri = value; } /** *

The URI of the HDFS cluster location.

*/ inline void SetLocationUri(Aws::String&& value) { m_locationUri = std::move(value); } /** *

The URI of the HDFS cluster location.

*/ inline void SetLocationUri(const char* value) { m_locationUri.assign(value); } /** *

The URI of the HDFS cluster location.

*/ inline DescribeLocationHdfsResult& WithLocationUri(const Aws::String& value) { SetLocationUri(value); return *this;} /** *

The URI of the HDFS cluster location.

*/ inline DescribeLocationHdfsResult& WithLocationUri(Aws::String&& value) { SetLocationUri(std::move(value)); return *this;} /** *

The URI of the HDFS cluster location.

*/ inline DescribeLocationHdfsResult& WithLocationUri(const char* value) { SetLocationUri(value); return *this;} /** *

The NameNode that manage the HDFS namespace.

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

The NameNode that manage the HDFS namespace.

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

The NameNode that manage the HDFS namespace.

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

The NameNode that manage the HDFS namespace.

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

The NameNode that manage the HDFS namespace.

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

The NameNode that manage the HDFS namespace.

*/ inline DescribeLocationHdfsResult& AddNameNodes(const HdfsNameNode& value) { m_nameNodes.push_back(value); return *this; } /** *

The NameNode that manage the HDFS namespace.

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

The size of the data blocks to write into the HDFS cluster.

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

The size of the data blocks to write into the HDFS cluster.

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

The size of the data blocks to write into the HDFS cluster.

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

The number of DataNodes to replicate the data to when writing to the HDFS * cluster.

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

The number of DataNodes to replicate the data to when writing to the HDFS * cluster.

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

The number of DataNodes to replicate the data to when writing to the HDFS * cluster.

*/ inline DescribeLocationHdfsResult& 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 void SetKmsKeyProviderUri(const Aws::String& value) { m_kmsKeyProviderUri = value; } /** *

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

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

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

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

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

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

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

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

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

*/ inline DescribeLocationHdfsResult& 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.

*/ 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.

*/ inline void SetQopConfiguration(const QopConfiguration& value) { 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.

*/ inline void SetQopConfiguration(QopConfiguration&& value) { 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.

*/ inline DescribeLocationHdfsResult& 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.

*/ inline DescribeLocationHdfsResult& 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 void SetAuthenticationType(const HdfsAuthenticationType& value) { m_authenticationType = value; } /** *

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

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

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

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

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

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

The user name used to identify the client on the host operating system. This * parameter is used if the AuthenticationType is defined as * SIMPLE.

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

The user name used to identify the client on the host operating system. This * parameter is used if the AuthenticationType is defined as * SIMPLE.

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

The user name used to identify the client on the host operating system. This * parameter is used if the AuthenticationType is defined as * SIMPLE.

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

The user name used to identify the client on the host operating system. This * parameter is used if the AuthenticationType is defined as * SIMPLE.

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

The user name used to identify the client on the host operating system. This * parameter is used if the AuthenticationType is defined as * SIMPLE.

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

The user name used to identify the client on the host operating system. This * parameter is used if the AuthenticationType is defined as * SIMPLE.

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

The user name used to identify the client on the host operating system. This * parameter is used if the AuthenticationType is defined as * SIMPLE.

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

The Kerberos principal with access to the files and folders on the HDFS * cluster. This parameter is used if the AuthenticationType is * defined as KERBEROS.

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

The Kerberos principal with access to the files and folders on the HDFS * cluster. This parameter is used if the AuthenticationType is * defined as KERBEROS.

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

The Kerberos principal with access to the files and folders on the HDFS * cluster. This parameter is used if the AuthenticationType is * defined as KERBEROS.

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

The Kerberos principal with access to the files and folders on the HDFS * cluster. This parameter is used if the AuthenticationType is * defined as KERBEROS.

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

The Kerberos principal with access to the files and folders on the HDFS * cluster. This parameter is used if the AuthenticationType is * defined as KERBEROS.

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

The Kerberos principal with access to the files and folders on the HDFS * cluster. This parameter is used if the AuthenticationType is * defined as KERBEROS.

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

The Kerberos principal with access to the files and folders on the HDFS * cluster. This parameter is used if the AuthenticationType is * defined as KERBEROS.

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

The ARNs of the agents that are used to connect to the HDFS cluster.

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

The ARNs of the agents that are used to connect to the HDFS cluster.

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

The ARNs of the agents that are used to connect to the HDFS cluster.

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

The ARNs of the agents that are used to connect to the HDFS cluster.

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

The ARNs of the agents that are used to connect to the HDFS cluster.

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

The ARNs of the agents that are used to connect to the HDFS cluster.

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

The ARNs of the agents that are used to connect to the HDFS cluster.

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

The ARNs of the agents that are used to connect to the HDFS cluster.

*/ inline DescribeLocationHdfsResult& AddAgentArns(const char* value) { m_agentArns.push_back(value); return *this; } /** *

The time that the HDFS location was created.

*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *

The time that the HDFS location was created.

*/ inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTime = value; } /** *

The time that the HDFS location was created.

*/ inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTime = std::move(value); } /** *

The time that the HDFS location was created.

*/ inline DescribeLocationHdfsResult& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *

The time that the HDFS location was created.

*/ inline DescribeLocationHdfsResult& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline DescribeLocationHdfsResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline DescribeLocationHdfsResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline DescribeLocationHdfsResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_locationArn; Aws::String m_locationUri; Aws::Vector m_nameNodes; int m_blockSize; int m_replicationFactor; Aws::String m_kmsKeyProviderUri; QopConfiguration m_qopConfiguration; HdfsAuthenticationType m_authenticationType; Aws::String m_simpleUser; Aws::String m_kerberosPrincipal; Aws::Vector m_agentArns; Aws::Utils::DateTime m_creationTime; Aws::String m_requestId; }; } // namespace Model } // namespace DataSync } // namespace Aws