7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/glue/Glue_EXPORTS.h>
11#include <aws/glue/model/FieldDataType.h>
12#include <aws/glue/model/FieldFilterOperator.h>
45 template <
typename FieldNameT = Aws::String>
47 m_fieldNameHasBeenSet =
true;
48 m_fieldName = std::forward<FieldNameT>(value);
50 template <
typename FieldNameT = Aws::String>
63 template <
typename LabelT = Aws::String>
65 m_labelHasBeenSet =
true;
66 m_label = std::forward<LabelT>(value);
68 template <
typename LabelT = Aws::String>
70 SetLabel(std::forward<LabelT>(value));
81 template <
typename DescriptionT = Aws::String>
83 m_descriptionHasBeenSet =
true;
84 m_description = std::forward<DescriptionT>(value);
86 template <
typename DescriptionT = Aws::String>
100 m_fieldTypeHasBeenSet =
true;
117 m_isPrimaryKeyHasBeenSet =
true;
118 m_isPrimaryKey = value;
133 m_isNullableHasBeenSet =
true;
134 m_isNullable = value;
150 m_isRetrievableHasBeenSet =
true;
151 m_isRetrievable = value;
167 m_isFilterableHasBeenSet =
true;
168 m_isFilterable = value;
184 m_isPartitionableHasBeenSet =
true;
185 m_isPartitionable = value;
201 m_isCreateableHasBeenSet =
true;
202 m_isCreateable = value;
218 m_isUpdateableHasBeenSet =
true;
219 m_isUpdateable = value;
235 m_isUpsertableHasBeenSet =
true;
236 m_isUpsertable = value;
252 m_isDefaultOnCreateHasBeenSet =
true;
253 m_isDefaultOnCreate = value;
267 template <
typename SupportedValuesT = Aws::Vector<Aws::String>>
269 m_supportedValuesHasBeenSet =
true;
270 m_supportedValues = std::forward<SupportedValuesT>(value);
272 template <
typename SupportedValuesT = Aws::Vector<Aws::String>>
277 template <
typename SupportedValuesT = Aws::String>
279 m_supportedValuesHasBeenSet =
true;
280 m_supportedValues.emplace_back(std::forward<SupportedValuesT>(value));
291 template <
typename SupportedFilterOperatorsT = Aws::Vector<FieldFilterOperator>>
293 m_supportedFilterOperatorsHasBeenSet =
true;
294 m_supportedFilterOperators = std::forward<SupportedFilterOperatorsT>(value);
296 template <
typename SupportedFilterOperatorsT = Aws::Vector<FieldFilterOperator>>
302 m_supportedFilterOperatorsHasBeenSet =
true;
303 m_supportedFilterOperators.push_back(value);
314 template <
typename ParentFieldT = Aws::String>
316 m_parentFieldHasBeenSet =
true;
317 m_parentField = std::forward<ParentFieldT>(value);
319 template <
typename ParentFieldT = Aws::String>
333 template <
typename NativeDataTypeT = Aws::String>
335 m_nativeDataTypeHasBeenSet =
true;
336 m_nativeDataType = std::forward<NativeDataTypeT>(value);
338 template <
typename NativeDataTypeT = Aws::String>
351 template <
typename CustomPropertiesT = Aws::Map<Aws::String, Aws::String>>
353 m_customPropertiesHasBeenSet =
true;
354 m_customProperties = std::forward<CustomPropertiesT>(value);
356 template <
typename CustomPropertiesT = Aws::Map<Aws::String, Aws::String>>
361 template <
typename CustomPropertiesKeyT = Aws::String,
typename CustomPropertiesValueT = Aws::String>
363 m_customPropertiesHasBeenSet =
true;
364 m_customProperties.emplace(std::forward<CustomPropertiesKeyT>(key), std::forward<CustomPropertiesValueT>(value));
377 bool m_isPrimaryKey{
false};
379 bool m_isNullable{
false};
381 bool m_isRetrievable{
false};
383 bool m_isFilterable{
false};
385 bool m_isPartitionable{
false};
387 bool m_isCreateable{
false};
389 bool m_isUpdateable{
false};
391 bool m_isUpsertable{
false};
393 bool m_isDefaultOnCreate{
false};
404 bool m_fieldNameHasBeenSet =
false;
405 bool m_labelHasBeenSet =
false;
406 bool m_descriptionHasBeenSet =
false;
407 bool m_fieldTypeHasBeenSet =
false;
408 bool m_isPrimaryKeyHasBeenSet =
false;
409 bool m_isNullableHasBeenSet =
false;
410 bool m_isRetrievableHasBeenSet =
false;
411 bool m_isFilterableHasBeenSet =
false;
412 bool m_isPartitionableHasBeenSet =
false;
413 bool m_isCreateableHasBeenSet =
false;
414 bool m_isUpdateableHasBeenSet =
false;
415 bool m_isUpsertableHasBeenSet =
false;
416 bool m_isDefaultOnCreateHasBeenSet =
false;
417 bool m_supportedValuesHasBeenSet =
false;
418 bool m_supportedFilterOperatorsHasBeenSet =
false;
419 bool m_parentFieldHasBeenSet =
false;
420 bool m_nativeDataTypeHasBeenSet =
false;
421 bool m_customPropertiesHasBeenSet =
false;
AWS_GLUE_API Field & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetDescription(DescriptionT &&value)
bool ParentFieldHasBeenSet() const
bool IsRetrievableHasBeenSet() const
void SetIsNullable(bool value)
const Aws::String & GetParentField() const
const Aws::String & GetFieldName() const
Field & WithIsNullable(bool value)
bool IsNullableHasBeenSet() const
void SetFieldType(FieldDataType value)
bool GetIsDefaultOnCreate() const
bool FieldNameHasBeenSet() const
AWS_GLUE_API Field(Aws::Utils::Json::JsonView jsonValue)
void SetIsCreateable(bool value)
Field & WithSupportedValues(SupportedValuesT &&value)
Field & WithIsUpdateable(bool value)
bool IsDefaultOnCreateHasBeenSet() const
void SetSupportedFilterOperators(SupportedFilterOperatorsT &&value)
bool IsUpdateableHasBeenSet() const
bool GetIsRetrievable() const
Field & WithIsPartitionable(bool value)
void SetIsDefaultOnCreate(bool value)
bool NativeDataTypeHasBeenSet() const
Field & WithFieldName(FieldNameT &&value)
bool IsUpsertableHasBeenSet() const
const Aws::String & GetNativeDataType() const
void SetNativeDataType(NativeDataTypeT &&value)
bool IsPartitionableHasBeenSet() const
Field & WithCustomProperties(CustomPropertiesT &&value)
Field & WithIsPrimaryKey(bool value)
bool IsFilterableHasBeenSet() const
bool IsCreateableHasBeenSet() const
void SetIsPartitionable(bool value)
Field & WithFieldType(FieldDataType value)
const Aws::Vector< FieldFilterOperator > & GetSupportedFilterOperators() const
AWS_GLUE_API Field()=default
Field & WithIsRetrievable(bool value)
Field & WithNativeDataType(NativeDataTypeT &&value)
bool IsPrimaryKeyHasBeenSet() const
Field & WithLabel(LabelT &&value)
void SetSupportedValues(SupportedValuesT &&value)
void SetIsUpdateable(bool value)
bool SupportedFilterOperatorsHasBeenSet() const
Field & WithIsDefaultOnCreate(bool value)
const Aws::Map< Aws::String, Aws::String > & GetCustomProperties() const
bool CustomPropertiesHasBeenSet() const
FieldDataType GetFieldType() const
bool GetIsPrimaryKey() const
AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const
bool GetIsNullable() const
void SetIsPrimaryKey(bool value)
void SetParentField(ParentFieldT &&value)
bool GetIsFilterable() const
void SetFieldName(FieldNameT &&value)
Field & WithIsCreateable(bool value)
Field & WithIsUpsertable(bool value)
bool GetIsUpsertable() const
bool SupportedValuesHasBeenSet() const
bool FieldTypeHasBeenSet() const
void SetIsUpsertable(bool value)
bool DescriptionHasBeenSet() const
const Aws::String & GetLabel() const
const Aws::String & GetDescription() const
bool LabelHasBeenSet() const
Field & WithSupportedFilterOperators(SupportedFilterOperatorsT &&value)
void SetIsRetrievable(bool value)
bool GetIsCreateable() const
bool GetIsPartitionable() const
Field & WithParentField(ParentFieldT &&value)
Field & AddCustomProperties(CustomPropertiesKeyT &&key, CustomPropertiesValueT &&value)
void SetIsFilterable(bool value)
Field & AddSupportedFilterOperators(FieldFilterOperator value)
Field & WithDescription(DescriptionT &&value)
bool GetIsUpdateable() const
void SetCustomProperties(CustomPropertiesT &&value)
Field & WithIsFilterable(bool value)
void SetLabel(LabelT &&value)
const Aws::Vector< Aws::String > & GetSupportedValues() const
Field & AddSupportedValues(SupportedValuesT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue