/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace DataSync { namespace Model { /** *

The Quality of Protection (QOP) configuration specifies the Remote Procedure * Call (RPC) and data transfer privacy settings configured on the Hadoop * Distributed File System (HDFS) cluster.

See Also:

AWS * API Reference

*/ class QopConfiguration { public: AWS_DATASYNC_API QopConfiguration(); AWS_DATASYNC_API QopConfiguration(Aws::Utils::Json::JsonView jsonValue); AWS_DATASYNC_API QopConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_DATASYNC_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The RPC protection setting configured on the HDFS cluster. This setting * corresponds to your hadoop.rpc.protection setting in your * core-site.xml file on your Hadoop cluster.

*/ inline const HdfsRpcProtection& GetRpcProtection() const{ return m_rpcProtection; } /** *

The RPC protection setting configured on the HDFS cluster. This setting * corresponds to your hadoop.rpc.protection setting in your * core-site.xml file on your Hadoop cluster.

*/ inline bool RpcProtectionHasBeenSet() const { return m_rpcProtectionHasBeenSet; } /** *

The RPC protection setting configured on the HDFS cluster. This setting * corresponds to your hadoop.rpc.protection setting in your * core-site.xml file on your Hadoop cluster.

*/ inline void SetRpcProtection(const HdfsRpcProtection& value) { m_rpcProtectionHasBeenSet = true; m_rpcProtection = value; } /** *

The RPC protection setting configured on the HDFS cluster. This setting * corresponds to your hadoop.rpc.protection setting in your * core-site.xml file on your Hadoop cluster.

*/ inline void SetRpcProtection(HdfsRpcProtection&& value) { m_rpcProtectionHasBeenSet = true; m_rpcProtection = std::move(value); } /** *

The RPC protection setting configured on the HDFS cluster. This setting * corresponds to your hadoop.rpc.protection setting in your * core-site.xml file on your Hadoop cluster.

*/ inline QopConfiguration& WithRpcProtection(const HdfsRpcProtection& value) { SetRpcProtection(value); return *this;} /** *

The RPC protection setting configured on the HDFS cluster. This setting * corresponds to your hadoop.rpc.protection setting in your * core-site.xml file on your Hadoop cluster.

*/ inline QopConfiguration& WithRpcProtection(HdfsRpcProtection&& value) { SetRpcProtection(std::move(value)); return *this;} /** *

The data transfer protection setting configured on the HDFS cluster. This * setting corresponds to your dfs.data.transfer.protection setting in * the hdfs-site.xml file on your Hadoop cluster.

*/ inline const HdfsDataTransferProtection& GetDataTransferProtection() const{ return m_dataTransferProtection; } /** *

The data transfer protection setting configured on the HDFS cluster. This * setting corresponds to your dfs.data.transfer.protection setting in * the hdfs-site.xml file on your Hadoop cluster.

*/ inline bool DataTransferProtectionHasBeenSet() const { return m_dataTransferProtectionHasBeenSet; } /** *

The data transfer protection setting configured on the HDFS cluster. This * setting corresponds to your dfs.data.transfer.protection setting in * the hdfs-site.xml file on your Hadoop cluster.

*/ inline void SetDataTransferProtection(const HdfsDataTransferProtection& value) { m_dataTransferProtectionHasBeenSet = true; m_dataTransferProtection = value; } /** *

The data transfer protection setting configured on the HDFS cluster. This * setting corresponds to your dfs.data.transfer.protection setting in * the hdfs-site.xml file on your Hadoop cluster.

*/ inline void SetDataTransferProtection(HdfsDataTransferProtection&& value) { m_dataTransferProtectionHasBeenSet = true; m_dataTransferProtection = std::move(value); } /** *

The data transfer protection setting configured on the HDFS cluster. This * setting corresponds to your dfs.data.transfer.protection setting in * the hdfs-site.xml file on your Hadoop cluster.

*/ inline QopConfiguration& WithDataTransferProtection(const HdfsDataTransferProtection& value) { SetDataTransferProtection(value); return *this;} /** *

The data transfer protection setting configured on the HDFS cluster. This * setting corresponds to your dfs.data.transfer.protection setting in * the hdfs-site.xml file on your Hadoop cluster.

*/ inline QopConfiguration& WithDataTransferProtection(HdfsDataTransferProtection&& value) { SetDataTransferProtection(std::move(value)); return *this;} private: HdfsRpcProtection m_rpcProtection; bool m_rpcProtectionHasBeenSet = false; HdfsDataTransferProtection m_dataTransferProtection; bool m_dataTransferProtectionHasBeenSet = false; }; } // namespace Model } // namespace DataSync } // namespace Aws