AWS SDK for C++

AWS SDK for C++ Version 1.11.746

Loading...
Searching...
No Matches
SourceSchema.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/kinesisanalyticsv2/KinesisAnalyticsV2_EXPORTS.h>
10#include <aws/kinesisanalyticsv2/model/RecordColumn.h>
11#include <aws/kinesisanalyticsv2/model/RecordFormat.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace KinesisAnalyticsV2 {
23namespace Model {
24
34 public:
35 AWS_KINESISANALYTICSV2_API SourceSchema() = default;
36 AWS_KINESISANALYTICSV2_API SourceSchema(Aws::Utils::Json::JsonView jsonValue);
37 AWS_KINESISANALYTICSV2_API SourceSchema& operator=(Aws::Utils::Json::JsonView jsonValue);
38 AWS_KINESISANALYTICSV2_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
44 inline const RecordFormat& GetRecordFormat() const { return m_recordFormat; }
45 inline bool RecordFormatHasBeenSet() const { return m_recordFormatHasBeenSet; }
46 template <typename RecordFormatT = RecordFormat>
47 void SetRecordFormat(RecordFormatT&& value) {
48 m_recordFormatHasBeenSet = true;
49 m_recordFormat = std::forward<RecordFormatT>(value);
50 }
51 template <typename RecordFormatT = RecordFormat>
52 SourceSchema& WithRecordFormat(RecordFormatT&& value) {
53 SetRecordFormat(std::forward<RecordFormatT>(value));
54 return *this;
55 }
57
59
63 inline const Aws::String& GetRecordEncoding() const { return m_recordEncoding; }
64 inline bool RecordEncodingHasBeenSet() const { return m_recordEncodingHasBeenSet; }
65 template <typename RecordEncodingT = Aws::String>
66 void SetRecordEncoding(RecordEncodingT&& value) {
67 m_recordEncodingHasBeenSet = true;
68 m_recordEncoding = std::forward<RecordEncodingT>(value);
69 }
70 template <typename RecordEncodingT = Aws::String>
71 SourceSchema& WithRecordEncoding(RecordEncodingT&& value) {
72 SetRecordEncoding(std::forward<RecordEncodingT>(value));
73 return *this;
74 }
76
78
81 inline const Aws::Vector<RecordColumn>& GetRecordColumns() const { return m_recordColumns; }
82 inline bool RecordColumnsHasBeenSet() const { return m_recordColumnsHasBeenSet; }
83 template <typename RecordColumnsT = Aws::Vector<RecordColumn>>
84 void SetRecordColumns(RecordColumnsT&& value) {
85 m_recordColumnsHasBeenSet = true;
86 m_recordColumns = std::forward<RecordColumnsT>(value);
87 }
88 template <typename RecordColumnsT = Aws::Vector<RecordColumn>>
89 SourceSchema& WithRecordColumns(RecordColumnsT&& value) {
90 SetRecordColumns(std::forward<RecordColumnsT>(value));
91 return *this;
92 }
93 template <typename RecordColumnsT = RecordColumn>
94 SourceSchema& AddRecordColumns(RecordColumnsT&& value) {
95 m_recordColumnsHasBeenSet = true;
96 m_recordColumns.emplace_back(std::forward<RecordColumnsT>(value));
97 return *this;
98 }
100 private:
101 RecordFormat m_recordFormat;
102
103 Aws::String m_recordEncoding;
104
105 Aws::Vector<RecordColumn> m_recordColumns;
106 bool m_recordFormatHasBeenSet = false;
107 bool m_recordEncodingHasBeenSet = false;
108 bool m_recordColumnsHasBeenSet = false;
109};
110
111} // namespace Model
112} // namespace KinesisAnalyticsV2
113} // namespace Aws
AWS_KINESISANALYTICSV2_API SourceSchema & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetRecordColumns(RecordColumnsT &&value)
SourceSchema & WithRecordEncoding(RecordEncodingT &&value)
AWS_KINESISANALYTICSV2_API Aws::Utils::Json::JsonValue Jsonize() const
SourceSchema & WithRecordFormat(RecordFormatT &&value)
const Aws::Vector< RecordColumn > & GetRecordColumns() const
const Aws::String & GetRecordEncoding() const
AWS_KINESISANALYTICSV2_API SourceSchema()=default
void SetRecordFormat(RecordFormatT &&value)
const RecordFormat & GetRecordFormat() const
void SetRecordEncoding(RecordEncodingT &&value)
SourceSchema & AddRecordColumns(RecordColumnsT &&value)
AWS_KINESISANALYTICSV2_API SourceSchema(Aws::Utils::Json::JsonView jsonValue)
SourceSchema & WithRecordColumns(RecordColumnsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue