AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
Join.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/JoinColumn.h>
11#include <aws/glue/model/JoinType.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
32class Join {
33 public:
34 AWS_GLUE_API Join() = default;
35 AWS_GLUE_API Join(Aws::Utils::Json::JsonView jsonValue);
36 AWS_GLUE_API Join& operator=(Aws::Utils::Json::JsonView jsonValue);
38
40
43 inline const Aws::String& GetName() const { return m_name; }
44 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
45 template <typename NameT = Aws::String>
46 void SetName(NameT&& value) {
47 m_nameHasBeenSet = true;
48 m_name = std::forward<NameT>(value);
49 }
50 template <typename NameT = Aws::String>
51 Join& WithName(NameT&& value) {
52 SetName(std::forward<NameT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::Vector<Aws::String>& GetInputs() const { return m_inputs; }
62 inline bool InputsHasBeenSet() const { return m_inputsHasBeenSet; }
63 template <typename InputsT = Aws::Vector<Aws::String>>
64 void SetInputs(InputsT&& value) {
65 m_inputsHasBeenSet = true;
66 m_inputs = std::forward<InputsT>(value);
67 }
68 template <typename InputsT = Aws::Vector<Aws::String>>
69 Join& WithInputs(InputsT&& value) {
70 SetInputs(std::forward<InputsT>(value));
71 return *this;
72 }
73 template <typename InputsT = Aws::String>
74 Join& AddInputs(InputsT&& value) {
75 m_inputsHasBeenSet = true;
76 m_inputs.emplace_back(std::forward<InputsT>(value));
77 return *this;
78 }
80
82
85 inline JoinType GetJoinType() const { return m_joinType; }
86 inline bool JoinTypeHasBeenSet() const { return m_joinTypeHasBeenSet; }
87 inline void SetJoinType(JoinType value) {
88 m_joinTypeHasBeenSet = true;
89 m_joinType = value;
90 }
91 inline Join& WithJoinType(JoinType value) {
92 SetJoinType(value);
93 return *this;
94 }
96
98
101 inline const Aws::Vector<JoinColumn>& GetColumns() const { return m_columns; }
102 inline bool ColumnsHasBeenSet() const { return m_columnsHasBeenSet; }
103 template <typename ColumnsT = Aws::Vector<JoinColumn>>
104 void SetColumns(ColumnsT&& value) {
105 m_columnsHasBeenSet = true;
106 m_columns = std::forward<ColumnsT>(value);
107 }
108 template <typename ColumnsT = Aws::Vector<JoinColumn>>
109 Join& WithColumns(ColumnsT&& value) {
110 SetColumns(std::forward<ColumnsT>(value));
111 return *this;
112 }
113 template <typename ColumnsT = JoinColumn>
114 Join& AddColumns(ColumnsT&& value) {
115 m_columnsHasBeenSet = true;
116 m_columns.emplace_back(std::forward<ColumnsT>(value));
117 return *this;
118 }
120 private:
121 Aws::String m_name;
122
124
125 JoinType m_joinType{JoinType::NOT_SET};
126
127 Aws::Vector<JoinColumn> m_columns;
128 bool m_nameHasBeenSet = false;
129 bool m_inputsHasBeenSet = false;
130 bool m_joinTypeHasBeenSet = false;
131 bool m_columnsHasBeenSet = false;
132};
133
134} // namespace Model
135} // namespace Glue
136} // namespace Aws
JoinType GetJoinType() const
Definition Join.h:85
bool ColumnsHasBeenSet() const
Definition Join.h:102
bool NameHasBeenSet() const
Definition Join.h:44
AWS_GLUE_API Join()=default
const Aws::Vector< JoinColumn > & GetColumns() const
Definition Join.h:101
Join & WithInputs(InputsT &&value)
Definition Join.h:69
void SetName(NameT &&value)
Definition Join.h:46
Join & AddColumns(ColumnsT &&value)
Definition Join.h:114
void SetColumns(ColumnsT &&value)
Definition Join.h:104
void SetJoinType(JoinType value)
Definition Join.h:87
Join & AddInputs(InputsT &&value)
Definition Join.h:74
Join & WithJoinType(JoinType value)
Definition Join.h:91
const Aws::String & GetName() const
Definition Join.h:43
bool InputsHasBeenSet() const
Definition Join.h:62
Join & WithColumns(ColumnsT &&value)
Definition Join.h:109
const Aws::Vector< Aws::String > & GetInputs() const
Definition Join.h:61
AWS_GLUE_API Join(Aws::Utils::Json::JsonView jsonValue)
AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const
Join & WithName(NameT &&value)
Definition Join.h:51
void SetInputs(InputsT &&value)
Definition Join.h:64
bool JoinTypeHasBeenSet() const
Definition Join.h:86
AWS_GLUE_API Join & 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