AWS SDK for C++

AWS SDK for C++ Version 1.11.874

Loading...
Searching...
No Matches
FieldDefinition.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/glue/Glue_EXPORTS.h>
9#include <aws/glue/model/FieldDataType.h>
10#include <aws/glue/model/FilterOverrides.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace Glue {
22namespace Model {
23
31 public:
32 AWS_GLUE_API FieldDefinition() = default;
36
38
41 inline const Aws::String& GetName() const { return m_name; }
42 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
43 template <typename NameT = Aws::String>
44 void SetName(NameT&& value) {
45 m_nameHasBeenSet = true;
46 m_name = std::forward<NameT>(value);
47 }
48 template <typename NameT = Aws::String>
49 FieldDefinition& WithName(NameT&& value) {
50 SetName(std::forward<NameT>(value));
51 return *this;
52 }
54
56
59 inline FieldDataType GetFieldDataType() const { return m_fieldDataType; }
60 inline bool FieldDataTypeHasBeenSet() const { return m_fieldDataTypeHasBeenSet; }
61 inline void SetFieldDataType(FieldDataType value) {
62 m_fieldDataTypeHasBeenSet = true;
63 m_fieldDataType = value;
64 }
66 SetFieldDataType(value);
67 return *this;
68 }
70
72
79 inline const Aws::String& GetResponseDateFormat() const { return m_responseDateFormat; }
80 inline bool ResponseDateFormatHasBeenSet() const { return m_responseDateFormatHasBeenSet; }
81 template <typename ResponseDateFormatT = Aws::String>
82 void SetResponseDateFormat(ResponseDateFormatT&& value) {
83 m_responseDateFormatHasBeenSet = true;
84 m_responseDateFormat = std::forward<ResponseDateFormatT>(value);
85 }
86 template <typename ResponseDateFormatT = Aws::String>
87 FieldDefinition& WithResponseDateFormat(ResponseDateFormatT&& value) {
88 SetResponseDateFormat(std::forward<ResponseDateFormatT>(value));
89 return *this;
90 }
92
94
98 inline bool GetIsPartitionable() const { return m_isPartitionable; }
99 inline bool IsPartitionableHasBeenSet() const { return m_isPartitionableHasBeenSet; }
100 inline void SetIsPartitionable(bool value) {
101 m_isPartitionableHasBeenSet = true;
102 m_isPartitionable = value;
103 }
105 SetIsPartitionable(value);
106 return *this;
107 }
109
111
114 inline bool GetIsNullable() const { return m_isNullable; }
115 inline bool IsNullableHasBeenSet() const { return m_isNullableHasBeenSet; }
116 inline void SetIsNullable(bool value) {
117 m_isNullableHasBeenSet = true;
118 m_isNullable = value;
119 }
120 inline FieldDefinition& WithIsNullable(bool value) {
121 SetIsNullable(value);
122 return *this;
123 }
125
127
131 inline bool GetIsQueryable() const { return m_isQueryable; }
132 inline bool IsQueryableHasBeenSet() const { return m_isQueryableHasBeenSet; }
133 inline void SetIsQueryable(bool value) {
134 m_isQueryableHasBeenSet = true;
135 m_isQueryable = value;
136 }
137 inline FieldDefinition& WithIsQueryable(bool value) {
138 SetIsQueryable(value);
139 return *this;
140 }
142
144
147 inline bool GetIsOrderable() const { return m_isOrderable; }
148 inline bool IsOrderableHasBeenSet() const { return m_isOrderableHasBeenSet; }
149 inline void SetIsOrderable(bool value) {
150 m_isOrderableHasBeenSet = true;
151 m_isOrderable = value;
152 }
153 inline FieldDefinition& WithIsOrderable(bool value) {
154 SetIsOrderable(value);
155 return *this;
156 }
158
160
164 inline const FilterOverrides& GetFilterOverrides() const { return m_filterOverrides; }
165 inline bool FilterOverridesHasBeenSet() const { return m_filterOverridesHasBeenSet; }
166 template <typename FilterOverridesT = FilterOverrides>
167 void SetFilterOverrides(FilterOverridesT&& value) {
168 m_filterOverridesHasBeenSet = true;
169 m_filterOverrides = std::forward<FilterOverridesT>(value);
170 }
171 template <typename FilterOverridesT = FilterOverrides>
172 FieldDefinition& WithFilterOverrides(FilterOverridesT&& value) {
173 SetFilterOverrides(std::forward<FilterOverridesT>(value));
174 return *this;
175 }
177 private:
178 Aws::String m_name;
179
180 FieldDataType m_fieldDataType{FieldDataType::NOT_SET};
181
182 Aws::String m_responseDateFormat;
183
184 bool m_isPartitionable{false};
185
186 bool m_isNullable{false};
187
188 bool m_isQueryable{false};
189
190 bool m_isOrderable{false};
191
192 FilterOverrides m_filterOverrides;
193 bool m_nameHasBeenSet = false;
194 bool m_fieldDataTypeHasBeenSet = false;
195 bool m_responseDateFormatHasBeenSet = false;
196 bool m_isPartitionableHasBeenSet = false;
197 bool m_isNullableHasBeenSet = false;
198 bool m_isQueryableHasBeenSet = false;
199 bool m_isOrderableHasBeenSet = false;
200 bool m_filterOverridesHasBeenSet = false;
201};
202
203} // namespace Model
204} // namespace Glue
205} // namespace Aws
FieldDefinition & WithName(NameT &&value)
void SetFieldDataType(FieldDataType value)
const Aws::String & GetResponseDateFormat() const
AWS_GLUE_API FieldDefinition(Aws::Utils::Json::JsonView jsonValue)
AWS_GLUE_API FieldDefinition & operator=(Aws::Utils::Json::JsonView jsonValue)
FieldDefinition & WithResponseDateFormat(ResponseDateFormatT &&value)
const FilterOverrides & GetFilterOverrides() const
AWS_GLUE_API FieldDefinition()=default
void SetResponseDateFormat(ResponseDateFormatT &&value)
FieldDefinition & WithIsOrderable(bool value)
AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const
FieldDefinition & WithFieldDataType(FieldDataType value)
FieldDataType GetFieldDataType() const
FieldDefinition & WithIsNullable(bool value)
FieldDefinition & WithIsQueryable(bool value)
FieldDefinition & WithIsPartitionable(bool value)
void SetFilterOverrides(FilterOverridesT &&value)
FieldDefinition & WithFilterOverrides(FilterOverridesT &&value)
const Aws::String & GetName() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue