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

The settings for encrypting data in transit.

*

See Also:

AWS * API Reference

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

Indicates the encryption setting for data in transit between * clients and brokers. The following are the possible values.

* TLS means that client-broker communication is enabled with TLS only.

*

TLS_PLAINTEXT means that client-broker communication is * enabled for both TLS-encrypted, as well as plaintext data.

* PLAINTEXT means that client-broker communication is enabled in plaintext * only.

The default value is TLS_PLAINTEXT.

*/ inline const ClientBroker& GetClientBroker() const{ return m_clientBroker; } /** *

Indicates the encryption setting for data in transit between * clients and brokers. The following are the possible values.

* TLS means that client-broker communication is enabled with TLS only.

*

TLS_PLAINTEXT means that client-broker communication is * enabled for both TLS-encrypted, as well as plaintext data.

* PLAINTEXT means that client-broker communication is enabled in plaintext * only.

The default value is TLS_PLAINTEXT.

*/ inline bool ClientBrokerHasBeenSet() const { return m_clientBrokerHasBeenSet; } /** *

Indicates the encryption setting for data in transit between * clients and brokers. The following are the possible values.

* TLS means that client-broker communication is enabled with TLS only.

*

TLS_PLAINTEXT means that client-broker communication is * enabled for both TLS-encrypted, as well as plaintext data.

* PLAINTEXT means that client-broker communication is enabled in plaintext * only.

The default value is TLS_PLAINTEXT.

*/ inline void SetClientBroker(const ClientBroker& value) { m_clientBrokerHasBeenSet = true; m_clientBroker = value; } /** *

Indicates the encryption setting for data in transit between * clients and brokers. The following are the possible values.

* TLS means that client-broker communication is enabled with TLS only.

*

TLS_PLAINTEXT means that client-broker communication is * enabled for both TLS-encrypted, as well as plaintext data.

* PLAINTEXT means that client-broker communication is enabled in plaintext * only.

The default value is TLS_PLAINTEXT.

*/ inline void SetClientBroker(ClientBroker&& value) { m_clientBrokerHasBeenSet = true; m_clientBroker = std::move(value); } /** *

Indicates the encryption setting for data in transit between * clients and brokers. The following are the possible values.

* TLS means that client-broker communication is enabled with TLS only.

*

TLS_PLAINTEXT means that client-broker communication is * enabled for both TLS-encrypted, as well as plaintext data.

* PLAINTEXT means that client-broker communication is enabled in plaintext * only.

The default value is TLS_PLAINTEXT.

*/ inline EncryptionInTransit& WithClientBroker(const ClientBroker& value) { SetClientBroker(value); return *this;} /** *

Indicates the encryption setting for data in transit between * clients and brokers. The following are the possible values.

* TLS means that client-broker communication is enabled with TLS only.

*

TLS_PLAINTEXT means that client-broker communication is * enabled for both TLS-encrypted, as well as plaintext data.

* PLAINTEXT means that client-broker communication is enabled in plaintext * only.

The default value is TLS_PLAINTEXT.

*/ inline EncryptionInTransit& WithClientBroker(ClientBroker&& value) { SetClientBroker(std::move(value)); return *this;} /** *

When set to true, it indicates that data communication among the * broker nodes of the cluster is encrypted. When set to false, the communication * happens in plaintext.

The default value is true.

* */ inline bool GetInCluster() const{ return m_inCluster; } /** *

When set to true, it indicates that data communication among the * broker nodes of the cluster is encrypted. When set to false, the communication * happens in plaintext.

The default value is true.

* */ inline bool InClusterHasBeenSet() const { return m_inClusterHasBeenSet; } /** *

When set to true, it indicates that data communication among the * broker nodes of the cluster is encrypted. When set to false, the communication * happens in plaintext.

The default value is true.

* */ inline void SetInCluster(bool value) { m_inClusterHasBeenSet = true; m_inCluster = value; } /** *

When set to true, it indicates that data communication among the * broker nodes of the cluster is encrypted. When set to false, the communication * happens in plaintext.

The default value is true.

* */ inline EncryptionInTransit& WithInCluster(bool value) { SetInCluster(value); return *this;} private: ClientBroker m_clientBroker; bool m_clientBrokerHasBeenSet = false; bool m_inCluster; bool m_inClusterHasBeenSet = false; }; } // namespace Model } // namespace Kafka } // namespace Aws