AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
ColumnInfo.h
1
6#pragma once
7#include <aws/athena/Athena_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/athena/model/ColumnNullable.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace Athena
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_ATHENA_API ColumnInfo() = default;
37 AWS_ATHENA_API ColumnInfo(Aws::Utils::Json::JsonView jsonValue);
39 AWS_ATHENA_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
46 inline const Aws::String& GetCatalogName() const { return m_catalogName; }
47 inline bool CatalogNameHasBeenSet() const { return m_catalogNameHasBeenSet; }
48 template<typename CatalogNameT = Aws::String>
49 void SetCatalogName(CatalogNameT&& value) { m_catalogNameHasBeenSet = true; m_catalogName = std::forward<CatalogNameT>(value); }
50 template<typename CatalogNameT = Aws::String>
51 ColumnInfo& WithCatalogName(CatalogNameT&& value) { SetCatalogName(std::forward<CatalogNameT>(value)); return *this;}
53
55
58 inline const Aws::String& GetSchemaName() const { return m_schemaName; }
59 inline bool SchemaNameHasBeenSet() const { return m_schemaNameHasBeenSet; }
60 template<typename SchemaNameT = Aws::String>
61 void SetSchemaName(SchemaNameT&& value) { m_schemaNameHasBeenSet = true; m_schemaName = std::forward<SchemaNameT>(value); }
62 template<typename SchemaNameT = Aws::String>
63 ColumnInfo& WithSchemaName(SchemaNameT&& value) { SetSchemaName(std::forward<SchemaNameT>(value)); return *this;}
65
67
70 inline const Aws::String& GetTableName() const { return m_tableName; }
71 inline bool TableNameHasBeenSet() const { return m_tableNameHasBeenSet; }
72 template<typename TableNameT = Aws::String>
73 void SetTableName(TableNameT&& value) { m_tableNameHasBeenSet = true; m_tableName = std::forward<TableNameT>(value); }
74 template<typename TableNameT = Aws::String>
75 ColumnInfo& WithTableName(TableNameT&& value) { SetTableName(std::forward<TableNameT>(value)); return *this;}
77
79
82 inline const Aws::String& GetName() const { return m_name; }
83 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
84 template<typename NameT = Aws::String>
85 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
86 template<typename NameT = Aws::String>
87 ColumnInfo& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
89
91
94 inline const Aws::String& GetLabel() const { return m_label; }
95 inline bool LabelHasBeenSet() const { return m_labelHasBeenSet; }
96 template<typename LabelT = Aws::String>
97 void SetLabel(LabelT&& value) { m_labelHasBeenSet = true; m_label = std::forward<LabelT>(value); }
98 template<typename LabelT = Aws::String>
99 ColumnInfo& WithLabel(LabelT&& value) { SetLabel(std::forward<LabelT>(value)); return *this;}
101
103
106 inline const Aws::String& GetType() const { return m_type; }
107 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
108 template<typename TypeT = Aws::String>
109 void SetType(TypeT&& value) { m_typeHasBeenSet = true; m_type = std::forward<TypeT>(value); }
110 template<typename TypeT = Aws::String>
111 ColumnInfo& WithType(TypeT&& value) { SetType(std::forward<TypeT>(value)); return *this;}
113
115
119 inline int GetPrecision() const { return m_precision; }
120 inline bool PrecisionHasBeenSet() const { return m_precisionHasBeenSet; }
121 inline void SetPrecision(int value) { m_precisionHasBeenSet = true; m_precision = value; }
122 inline ColumnInfo& WithPrecision(int value) { SetPrecision(value); return *this;}
124
126
130 inline int GetScale() const { return m_scale; }
131 inline bool ScaleHasBeenSet() const { return m_scaleHasBeenSet; }
132 inline void SetScale(int value) { m_scaleHasBeenSet = true; m_scale = value; }
133 inline ColumnInfo& WithScale(int value) { SetScale(value); return *this;}
135
137
140 inline ColumnNullable GetNullable() const { return m_nullable; }
141 inline bool NullableHasBeenSet() const { return m_nullableHasBeenSet; }
142 inline void SetNullable(ColumnNullable value) { m_nullableHasBeenSet = true; m_nullable = value; }
143 inline ColumnInfo& WithNullable(ColumnNullable value) { SetNullable(value); return *this;}
145
147
150 inline bool GetCaseSensitive() const { return m_caseSensitive; }
151 inline bool CaseSensitiveHasBeenSet() const { return m_caseSensitiveHasBeenSet; }
152 inline void SetCaseSensitive(bool value) { m_caseSensitiveHasBeenSet = true; m_caseSensitive = value; }
153 inline ColumnInfo& WithCaseSensitive(bool value) { SetCaseSensitive(value); return *this;}
155 private:
156
157 Aws::String m_catalogName;
158 bool m_catalogNameHasBeenSet = false;
159
160 Aws::String m_schemaName;
161 bool m_schemaNameHasBeenSet = false;
162
163 Aws::String m_tableName;
164 bool m_tableNameHasBeenSet = false;
165
166 Aws::String m_name;
167 bool m_nameHasBeenSet = false;
168
169 Aws::String m_label;
170 bool m_labelHasBeenSet = false;
171
172 Aws::String m_type;
173 bool m_typeHasBeenSet = false;
174
175 int m_precision{0};
176 bool m_precisionHasBeenSet = false;
177
178 int m_scale{0};
179 bool m_scaleHasBeenSet = false;
180
182 bool m_nullableHasBeenSet = false;
183
184 bool m_caseSensitive{false};
185 bool m_caseSensitiveHasBeenSet = false;
186 };
187
188} // namespace Model
189} // namespace Athena
190} // namespace Aws
void SetCatalogName(CatalogNameT &&value)
Definition ColumnInfo.h:49
const Aws::String & GetCatalogName() const
Definition ColumnInfo.h:46
ColumnInfo & WithCaseSensitive(bool value)
Definition ColumnInfo.h:153
void SetCaseSensitive(bool value)
Definition ColumnInfo.h:152
void SetSchemaName(SchemaNameT &&value)
Definition ColumnInfo.h:61
ColumnInfo & WithType(TypeT &&value)
Definition ColumnInfo.h:111
AWS_ATHENA_API ColumnInfo(Aws::Utils::Json::JsonView jsonValue)
AWS_ATHENA_API ColumnInfo()=default
void SetTableName(TableNameT &&value)
Definition ColumnInfo.h:73
void SetName(NameT &&value)
Definition ColumnInfo.h:85
AWS_ATHENA_API ColumnInfo & operator=(Aws::Utils::Json::JsonView jsonValue)
ColumnInfo & WithCatalogName(CatalogNameT &&value)
Definition ColumnInfo.h:51
ColumnInfo & WithTableName(TableNameT &&value)
Definition ColumnInfo.h:75
void SetLabel(LabelT &&value)
Definition ColumnInfo.h:97
ColumnNullable GetNullable() const
Definition ColumnInfo.h:140
ColumnInfo & WithSchemaName(SchemaNameT &&value)
Definition ColumnInfo.h:63
void SetNullable(ColumnNullable value)
Definition ColumnInfo.h:142
ColumnInfo & WithPrecision(int value)
Definition ColumnInfo.h:122
AWS_ATHENA_API Aws::Utils::Json::JsonValue Jsonize() const
ColumnInfo & WithName(NameT &&value)
Definition ColumnInfo.h:87
const Aws::String & GetSchemaName() const
Definition ColumnInfo.h:58
ColumnInfo & WithLabel(LabelT &&value)
Definition ColumnInfo.h:99
void SetType(TypeT &&value)
Definition ColumnInfo.h:109
ColumnInfo & WithScale(int value)
Definition ColumnInfo.h:133
ColumnInfo & WithNullable(ColumnNullable value)
Definition ColumnInfo.h:143
const Aws::String & GetName() const
Definition ColumnInfo.h:82
const Aws::String & GetTableName() const
Definition ColumnInfo.h:70
const Aws::String & GetLabel() const
Definition ColumnInfo.h:94
const Aws::String & GetType() const
Definition ColumnInfo.h:106
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue