AWS SDK for C++

AWS SDK for C++ Version 1.11.691

Loading...
Searching...
No Matches
TargetTableConfig.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/glue/Glue_EXPORTS.h>
10#include <aws/glue/model/IntegrationPartition.h>
11#include <aws/glue/model/UnnestSpec.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace Glue {
23namespace Model {
24
32 public:
33 AWS_GLUE_API TargetTableConfig() = default;
37
39
43 inline UnnestSpec GetUnnestSpec() const { return m_unnestSpec; }
44 inline bool UnnestSpecHasBeenSet() const { return m_unnestSpecHasBeenSet; }
45 inline void SetUnnestSpec(UnnestSpec value) {
46 m_unnestSpecHasBeenSet = true;
47 m_unnestSpec = value;
48 }
50 SetUnnestSpec(value);
51 return *this;
52 }
54
56
59 inline const Aws::Vector<IntegrationPartition>& GetPartitionSpec() const { return m_partitionSpec; }
60 inline bool PartitionSpecHasBeenSet() const { return m_partitionSpecHasBeenSet; }
61 template <typename PartitionSpecT = Aws::Vector<IntegrationPartition>>
62 void SetPartitionSpec(PartitionSpecT&& value) {
63 m_partitionSpecHasBeenSet = true;
64 m_partitionSpec = std::forward<PartitionSpecT>(value);
65 }
66 template <typename PartitionSpecT = Aws::Vector<IntegrationPartition>>
67 TargetTableConfig& WithPartitionSpec(PartitionSpecT&& value) {
68 SetPartitionSpec(std::forward<PartitionSpecT>(value));
69 return *this;
70 }
71 template <typename PartitionSpecT = IntegrationPartition>
72 TargetTableConfig& AddPartitionSpec(PartitionSpecT&& value) {
73 m_partitionSpecHasBeenSet = true;
74 m_partitionSpec.emplace_back(std::forward<PartitionSpecT>(value));
75 return *this;
76 }
78
80
83 inline const Aws::String& GetTargetTableName() const { return m_targetTableName; }
84 inline bool TargetTableNameHasBeenSet() const { return m_targetTableNameHasBeenSet; }
85 template <typename TargetTableNameT = Aws::String>
86 void SetTargetTableName(TargetTableNameT&& value) {
87 m_targetTableNameHasBeenSet = true;
88 m_targetTableName = std::forward<TargetTableNameT>(value);
89 }
90 template <typename TargetTableNameT = Aws::String>
91 TargetTableConfig& WithTargetTableName(TargetTableNameT&& value) {
92 SetTargetTableName(std::forward<TargetTableNameT>(value));
93 return *this;
94 }
96 private:
97 UnnestSpec m_unnestSpec{UnnestSpec::NOT_SET};
98 bool m_unnestSpecHasBeenSet = false;
99
100 Aws::Vector<IntegrationPartition> m_partitionSpec;
101 bool m_partitionSpecHasBeenSet = false;
102
103 Aws::String m_targetTableName;
104 bool m_targetTableNameHasBeenSet = false;
105};
106
107} // namespace Model
108} // namespace Glue
109} // namespace Aws
TargetTableConfig & WithPartitionSpec(PartitionSpecT &&value)
TargetTableConfig & AddPartitionSpec(PartitionSpecT &&value)
TargetTableConfig & WithUnnestSpec(UnnestSpec value)
AWS_GLUE_API TargetTableConfig(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetTargetTableName() const
void SetPartitionSpec(PartitionSpecT &&value)
TargetTableConfig & WithTargetTableName(TargetTableNameT &&value)
const Aws::Vector< IntegrationPartition > & GetPartitionSpec() const
AWS_GLUE_API TargetTableConfig()=default
void SetTargetTableName(TargetTableNameT &&value)
AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_GLUE_API TargetTableConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue