feat(hos_client_create, hos_client_destory): 多次调用destory不会导致重复释放

This commit is contained in:
彭宣正
2020-12-14 17:24:58 +08:00
parent 505d529c32
commit 10b370e486
55976 changed files with 8544395 additions and 2 deletions

View File

@@ -0,0 +1,610 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/kafka/Kafka_EXPORTS.h>
#include <aws/kafka/KafkaRequest.h>
#include <aws/kafka/model/BrokerNodeGroupInfo.h>
#include <aws/kafka/model/ClientAuthentication.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/kafka/model/ConfigurationInfo.h>
#include <aws/kafka/model/EncryptionInfo.h>
#include <aws/kafka/model/EnhancedMonitoring.h>
#include <aws/kafka/model/OpenMonitoringInfo.h>
#include <aws/kafka/model/LoggingInfo.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
namespace Aws
{
namespace Kafka
{
namespace Model
{
/**
*/
class AWS_KAFKA_API CreateClusterRequest : public KafkaRequest
{
public:
CreateClusterRequest();
// 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 "CreateCluster"; }
Aws::String SerializePayload() const override;
/**
*
<p>Information about the broker nodes in the cluster.</p>
*/
inline const BrokerNodeGroupInfo& GetBrokerNodeGroupInfo() const{ return m_brokerNodeGroupInfo; }
/**
*
<p>Information about the broker nodes in the cluster.</p>
*/
inline bool BrokerNodeGroupInfoHasBeenSet() const { return m_brokerNodeGroupInfoHasBeenSet; }
/**
*
<p>Information about the broker nodes in the cluster.</p>
*/
inline void SetBrokerNodeGroupInfo(const BrokerNodeGroupInfo& value) { m_brokerNodeGroupInfoHasBeenSet = true; m_brokerNodeGroupInfo = value; }
/**
*
<p>Information about the broker nodes in the cluster.</p>
*/
inline void SetBrokerNodeGroupInfo(BrokerNodeGroupInfo&& value) { m_brokerNodeGroupInfoHasBeenSet = true; m_brokerNodeGroupInfo = std::move(value); }
/**
*
<p>Information about the broker nodes in the cluster.</p>
*/
inline CreateClusterRequest& WithBrokerNodeGroupInfo(const BrokerNodeGroupInfo& value) { SetBrokerNodeGroupInfo(value); return *this;}
/**
*
<p>Information about the broker nodes in the cluster.</p>
*/
inline CreateClusterRequest& WithBrokerNodeGroupInfo(BrokerNodeGroupInfo&& value) { SetBrokerNodeGroupInfo(std::move(value)); return *this;}
/**
*
<p>Includes all client authentication related information.</p>
*
*/
inline const ClientAuthentication& GetClientAuthentication() const{ return m_clientAuthentication; }
/**
*
<p>Includes all client authentication related information.</p>
*
*/
inline bool ClientAuthenticationHasBeenSet() const { return m_clientAuthenticationHasBeenSet; }
/**
*
<p>Includes all client authentication related information.</p>
*
*/
inline void SetClientAuthentication(const ClientAuthentication& value) { m_clientAuthenticationHasBeenSet = true; m_clientAuthentication = value; }
/**
*
<p>Includes all client authentication related information.</p>
*
*/
inline void SetClientAuthentication(ClientAuthentication&& value) { m_clientAuthenticationHasBeenSet = true; m_clientAuthentication = std::move(value); }
/**
*
<p>Includes all client authentication related information.</p>
*
*/
inline CreateClusterRequest& WithClientAuthentication(const ClientAuthentication& value) { SetClientAuthentication(value); return *this;}
/**
*
<p>Includes all client authentication related information.</p>
*
*/
inline CreateClusterRequest& WithClientAuthentication(ClientAuthentication&& value) { SetClientAuthentication(std::move(value)); return *this;}
/**
*
<p>The name of the cluster.</p>
*/
inline const Aws::String& GetClusterName() const{ return m_clusterName; }
/**
*
<p>The name of the cluster.</p>
*/
inline bool ClusterNameHasBeenSet() const { return m_clusterNameHasBeenSet; }
/**
*
<p>The name of the cluster.</p>
*/
inline void SetClusterName(const Aws::String& value) { m_clusterNameHasBeenSet = true; m_clusterName = value; }
/**
*
<p>The name of the cluster.</p>
*/
inline void SetClusterName(Aws::String&& value) { m_clusterNameHasBeenSet = true; m_clusterName = std::move(value); }
/**
*
<p>The name of the cluster.</p>
*/
inline void SetClusterName(const char* value) { m_clusterNameHasBeenSet = true; m_clusterName.assign(value); }
/**
*
<p>The name of the cluster.</p>
*/
inline CreateClusterRequest& WithClusterName(const Aws::String& value) { SetClusterName(value); return *this;}
/**
*
<p>The name of the cluster.</p>
*/
inline CreateClusterRequest& WithClusterName(Aws::String&& value) { SetClusterName(std::move(value)); return *this;}
/**
*
<p>The name of the cluster.</p>
*/
inline CreateClusterRequest& WithClusterName(const char* value) { SetClusterName(value); return *this;}
/**
*
<p>Represents the configuration that you want MSK to use for the
* brokers in a cluster.</p>
*/
inline const ConfigurationInfo& GetConfigurationInfo() const{ return m_configurationInfo; }
/**
*
<p>Represents the configuration that you want MSK to use for the
* brokers in a cluster.</p>
*/
inline bool ConfigurationInfoHasBeenSet() const { return m_configurationInfoHasBeenSet; }
/**
*
<p>Represents the configuration that you want MSK to use for the
* brokers in a cluster.</p>
*/
inline void SetConfigurationInfo(const ConfigurationInfo& value) { m_configurationInfoHasBeenSet = true; m_configurationInfo = value; }
/**
*
<p>Represents the configuration that you want MSK to use for the
* brokers in a cluster.</p>
*/
inline void SetConfigurationInfo(ConfigurationInfo&& value) { m_configurationInfoHasBeenSet = true; m_configurationInfo = std::move(value); }
/**
*
<p>Represents the configuration that you want MSK to use for the
* brokers in a cluster.</p>
*/
inline CreateClusterRequest& WithConfigurationInfo(const ConfigurationInfo& value) { SetConfigurationInfo(value); return *this;}
/**
*
<p>Represents the configuration that you want MSK to use for the
* brokers in a cluster.</p>
*/
inline CreateClusterRequest& WithConfigurationInfo(ConfigurationInfo&& value) { SetConfigurationInfo(std::move(value)); return *this;}
/**
*
<p>Includes all encryption-related information.</p>
*/
inline const EncryptionInfo& GetEncryptionInfo() const{ return m_encryptionInfo; }
/**
*
<p>Includes all encryption-related information.</p>
*/
inline bool EncryptionInfoHasBeenSet() const { return m_encryptionInfoHasBeenSet; }
/**
*
<p>Includes all encryption-related information.</p>
*/
inline void SetEncryptionInfo(const EncryptionInfo& value) { m_encryptionInfoHasBeenSet = true; m_encryptionInfo = value; }
/**
*
<p>Includes all encryption-related information.</p>
*/
inline void SetEncryptionInfo(EncryptionInfo&& value) { m_encryptionInfoHasBeenSet = true; m_encryptionInfo = std::move(value); }
/**
*
<p>Includes all encryption-related information.</p>
*/
inline CreateClusterRequest& WithEncryptionInfo(const EncryptionInfo& value) { SetEncryptionInfo(value); return *this;}
/**
*
<p>Includes all encryption-related information.</p>
*/
inline CreateClusterRequest& WithEncryptionInfo(EncryptionInfo&& value) { SetEncryptionInfo(std::move(value)); return *this;}
/**
*
<p>Specifies the level of monitoring for the MSK cluster. The
* possible values are DEFAULT, PER_BROKER, and PER_TOPIC_PER_BROKER.</p>
*/
inline const EnhancedMonitoring& GetEnhancedMonitoring() const{ return m_enhancedMonitoring; }
/**
*
<p>Specifies the level of monitoring for the MSK cluster. The
* possible values are DEFAULT, PER_BROKER, and PER_TOPIC_PER_BROKER.</p>
*/
inline bool EnhancedMonitoringHasBeenSet() const { return m_enhancedMonitoringHasBeenSet; }
/**
*
<p>Specifies the level of monitoring for the MSK cluster. The
* possible values are DEFAULT, PER_BROKER, and PER_TOPIC_PER_BROKER.</p>
*/
inline void SetEnhancedMonitoring(const EnhancedMonitoring& value) { m_enhancedMonitoringHasBeenSet = true; m_enhancedMonitoring = value; }
/**
*
<p>Specifies the level of monitoring for the MSK cluster. The
* possible values are DEFAULT, PER_BROKER, and PER_TOPIC_PER_BROKER.</p>
*/
inline void SetEnhancedMonitoring(EnhancedMonitoring&& value) { m_enhancedMonitoringHasBeenSet = true; m_enhancedMonitoring = std::move(value); }
/**
*
<p>Specifies the level of monitoring for the MSK cluster. The
* possible values are DEFAULT, PER_BROKER, and PER_TOPIC_PER_BROKER.</p>
*/
inline CreateClusterRequest& WithEnhancedMonitoring(const EnhancedMonitoring& value) { SetEnhancedMonitoring(value); return *this;}
/**
*
<p>Specifies the level of monitoring for the MSK cluster. The
* possible values are DEFAULT, PER_BROKER, and PER_TOPIC_PER_BROKER.</p>
*/
inline CreateClusterRequest& WithEnhancedMonitoring(EnhancedMonitoring&& value) { SetEnhancedMonitoring(std::move(value)); return *this;}
/**
*
<p>The settings for open monitoring.</p>
*/
inline const OpenMonitoringInfo& GetOpenMonitoring() const{ return m_openMonitoring; }
/**
*
<p>The settings for open monitoring.</p>
*/
inline bool OpenMonitoringHasBeenSet() const { return m_openMonitoringHasBeenSet; }
/**
*
<p>The settings for open monitoring.</p>
*/
inline void SetOpenMonitoring(const OpenMonitoringInfo& value) { m_openMonitoringHasBeenSet = true; m_openMonitoring = value; }
/**
*
<p>The settings for open monitoring.</p>
*/
inline void SetOpenMonitoring(OpenMonitoringInfo&& value) { m_openMonitoringHasBeenSet = true; m_openMonitoring = std::move(value); }
/**
*
<p>The settings for open monitoring.</p>
*/
inline CreateClusterRequest& WithOpenMonitoring(const OpenMonitoringInfo& value) { SetOpenMonitoring(value); return *this;}
/**
*
<p>The settings for open monitoring.</p>
*/
inline CreateClusterRequest& WithOpenMonitoring(OpenMonitoringInfo&& value) { SetOpenMonitoring(std::move(value)); return *this;}
/**
*
<p>The version of Apache Kafka.</p>
*/
inline const Aws::String& GetKafkaVersion() const{ return m_kafkaVersion; }
/**
*
<p>The version of Apache Kafka.</p>
*/
inline bool KafkaVersionHasBeenSet() const { return m_kafkaVersionHasBeenSet; }
/**
*
<p>The version of Apache Kafka.</p>
*/
inline void SetKafkaVersion(const Aws::String& value) { m_kafkaVersionHasBeenSet = true; m_kafkaVersion = value; }
/**
*
<p>The version of Apache Kafka.</p>
*/
inline void SetKafkaVersion(Aws::String&& value) { m_kafkaVersionHasBeenSet = true; m_kafkaVersion = std::move(value); }
/**
*
<p>The version of Apache Kafka.</p>
*/
inline void SetKafkaVersion(const char* value) { m_kafkaVersionHasBeenSet = true; m_kafkaVersion.assign(value); }
/**
*
<p>The version of Apache Kafka.</p>
*/
inline CreateClusterRequest& WithKafkaVersion(const Aws::String& value) { SetKafkaVersion(value); return *this;}
/**
*
<p>The version of Apache Kafka.</p>
*/
inline CreateClusterRequest& WithKafkaVersion(Aws::String&& value) { SetKafkaVersion(std::move(value)); return *this;}
/**
*
<p>The version of Apache Kafka.</p>
*/
inline CreateClusterRequest& WithKafkaVersion(const char* value) { SetKafkaVersion(value); return *this;}
inline const LoggingInfo& GetLoggingInfo() const{ return m_loggingInfo; }
inline bool LoggingInfoHasBeenSet() const { return m_loggingInfoHasBeenSet; }
inline void SetLoggingInfo(const LoggingInfo& value) { m_loggingInfoHasBeenSet = true; m_loggingInfo = value; }
inline void SetLoggingInfo(LoggingInfo&& value) { m_loggingInfoHasBeenSet = true; m_loggingInfo = std::move(value); }
inline CreateClusterRequest& WithLoggingInfo(const LoggingInfo& value) { SetLoggingInfo(value); return *this;}
inline CreateClusterRequest& WithLoggingInfo(LoggingInfo&& value) { SetLoggingInfo(std::move(value)); return *this;}
/**
*
<p>The number of broker nodes in the cluster.</p>
*/
inline int GetNumberOfBrokerNodes() const{ return m_numberOfBrokerNodes; }
/**
*
<p>The number of broker nodes in the cluster.</p>
*/
inline bool NumberOfBrokerNodesHasBeenSet() const { return m_numberOfBrokerNodesHasBeenSet; }
/**
*
<p>The number of broker nodes in the cluster.</p>
*/
inline void SetNumberOfBrokerNodes(int value) { m_numberOfBrokerNodesHasBeenSet = true; m_numberOfBrokerNodes = value; }
/**
*
<p>The number of broker nodes in the cluster.</p>
*/
inline CreateClusterRequest& WithNumberOfBrokerNodes(int value) { SetNumberOfBrokerNodes(value); return *this;}
/**
*
<p>Create tags when creating the cluster.</p>
*/
inline const Aws::Map<Aws::String, Aws::String>& GetTags() const{ return m_tags; }
/**
*
<p>Create tags when creating the cluster.</p>
*/
inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
/**
*
<p>Create tags when creating the cluster.</p>
*/
inline void SetTags(const Aws::Map<Aws::String, Aws::String>& value) { m_tagsHasBeenSet = true; m_tags = value; }
/**
*
<p>Create tags when creating the cluster.</p>
*/
inline void SetTags(Aws::Map<Aws::String, Aws::String>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
/**
*
<p>Create tags when creating the cluster.</p>
*/
inline CreateClusterRequest& WithTags(const Aws::Map<Aws::String, Aws::String>& value) { SetTags(value); return *this;}
/**
*
<p>Create tags when creating the cluster.</p>
*/
inline CreateClusterRequest& WithTags(Aws::Map<Aws::String, Aws::String>&& value) { SetTags(std::move(value)); return *this;}
/**
*
<p>Create tags when creating the cluster.</p>
*/
inline CreateClusterRequest& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }
/**
*
<p>Create tags when creating the cluster.</p>
*/
inline CreateClusterRequest& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }
/**
*
<p>Create tags when creating the cluster.</p>
*/
inline CreateClusterRequest& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; }
/**
*
<p>Create tags when creating the cluster.</p>
*/
inline CreateClusterRequest& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; }
/**
*
<p>Create tags when creating the cluster.</p>
*/
inline CreateClusterRequest& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; }
/**
*
<p>Create tags when creating the cluster.</p>
*/
inline CreateClusterRequest& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }
/**
*
<p>Create tags when creating the cluster.</p>
*/
inline CreateClusterRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }
private:
BrokerNodeGroupInfo m_brokerNodeGroupInfo;
bool m_brokerNodeGroupInfoHasBeenSet;
ClientAuthentication m_clientAuthentication;
bool m_clientAuthenticationHasBeenSet;
Aws::String m_clusterName;
bool m_clusterNameHasBeenSet;
ConfigurationInfo m_configurationInfo;
bool m_configurationInfoHasBeenSet;
EncryptionInfo m_encryptionInfo;
bool m_encryptionInfoHasBeenSet;
EnhancedMonitoring m_enhancedMonitoring;
bool m_enhancedMonitoringHasBeenSet;
OpenMonitoringInfo m_openMonitoring;
bool m_openMonitoringHasBeenSet;
Aws::String m_kafkaVersion;
bool m_kafkaVersionHasBeenSet;
LoggingInfo m_loggingInfo;
bool m_loggingInfoHasBeenSet;
int m_numberOfBrokerNodes;
bool m_numberOfBrokerNodesHasBeenSet;
Aws::Map<Aws::String, Aws::String> m_tags;
bool m_tagsHasBeenSet;
};
} // namespace Model
} // namespace Kafka
} // namespace Aws