AWS SDK for C++

AWS SDK for C++ Version 1.11.867

Loading...
Searching...
No Matches
TopicConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/kafka/Kafka_EXPORTS.h>
9#include <aws/kafka/model/RecordConverter.h>
10#include <aws/kafka/model/RecordSchema.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace Kafka {
22namespace Model {
23
31 public:
32 AWS_KAFKA_API TopicConfiguration() = default;
35 AWS_KAFKA_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
42 inline const RecordConverter& GetRecordConverter() const { return m_recordConverter; }
43 inline bool RecordConverterHasBeenSet() const { return m_recordConverterHasBeenSet; }
44 template <typename RecordConverterT = RecordConverter>
45 void SetRecordConverter(RecordConverterT&& value) {
46 m_recordConverterHasBeenSet = true;
47 m_recordConverter = std::forward<RecordConverterT>(value);
48 }
49 template <typename RecordConverterT = RecordConverter>
50 TopicConfiguration& WithRecordConverter(RecordConverterT&& value) {
51 SetRecordConverter(std::forward<RecordConverterT>(value));
52 return *this;
53 }
55
57
61 inline const RecordSchema& GetRecordSchema() const { return m_recordSchema; }
62 inline bool RecordSchemaHasBeenSet() const { return m_recordSchemaHasBeenSet; }
63 template <typename RecordSchemaT = RecordSchema>
64 void SetRecordSchema(RecordSchemaT&& value) {
65 m_recordSchemaHasBeenSet = true;
66 m_recordSchema = std::forward<RecordSchemaT>(value);
67 }
68 template <typename RecordSchemaT = RecordSchema>
69 TopicConfiguration& WithRecordSchema(RecordSchemaT&& value) {
70 SetRecordSchema(std::forward<RecordSchemaT>(value));
71 return *this;
72 }
74
76
82 inline const Aws::String& GetTopicArn() const { return m_topicArn; }
83 inline bool TopicArnHasBeenSet() const { return m_topicArnHasBeenSet; }
84 template <typename TopicArnT = Aws::String>
85 void SetTopicArn(TopicArnT&& value) {
86 m_topicArnHasBeenSet = true;
87 m_topicArn = std::forward<TopicArnT>(value);
88 }
89 template <typename TopicArnT = Aws::String>
90 TopicConfiguration& WithTopicArn(TopicArnT&& value) {
91 SetTopicArn(std::forward<TopicArnT>(value));
92 return *this;
93 }
95 private:
96 RecordConverter m_recordConverter;
97
98 RecordSchema m_recordSchema;
99
100 Aws::String m_topicArn;
101 bool m_recordConverterHasBeenSet = false;
102 bool m_recordSchemaHasBeenSet = false;
103 bool m_topicArnHasBeenSet = false;
104};
105
106} // namespace Model
107} // namespace Kafka
108} // namespace Aws
TopicConfiguration & WithRecordConverter(RecordConverterT &&value)
AWS_KAFKA_API TopicConfiguration(Aws::Utils::Json::JsonView jsonValue)
AWS_KAFKA_API TopicConfiguration()=default
const Aws::String & GetTopicArn() const
AWS_KAFKA_API Aws::Utils::Json::JsonValue Jsonize() const
const RecordConverter & GetRecordConverter() const
void SetRecordConverter(RecordConverterT &&value)
AWS_KAFKA_API TopicConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetRecordSchema(RecordSchemaT &&value)
const RecordSchema & GetRecordSchema() const
TopicConfiguration & WithRecordSchema(RecordSchemaT &&value)
TopicConfiguration & WithTopicArn(TopicArnT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue