AWS SDK for C++

AWS SDK for C++ Version 1.11.714

Loading...
Searching...
No Matches
CreateIntegrationRequest.h
1
6#pragma once
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/redshift/RedshiftRequest.h>
11#include <aws/redshift/Redshift_EXPORTS.h>
12#include <aws/redshift/model/Tag.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Redshift {
18namespace Model {
19
23 public:
24 AWS_REDSHIFT_API CreateIntegrationRequest() = default;
25
26 // Service request name is the Operation name which will send this request out,
27 // each operation should has unique request name, so that we can get operation's name from this request.
28 // Note: this is not true for response, multiple operations may have the same response name,
29 // so we can not get operation's name from response.
30 inline virtual const char* GetServiceRequestName() const override { return "CreateIntegration"; }
31
32 AWS_REDSHIFT_API Aws::String SerializePayload() const override;
33
34 protected:
35 AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
36
37 public:
39
43 inline const Aws::String& GetSourceArn() const { return m_sourceArn; }
44 inline bool SourceArnHasBeenSet() const { return m_sourceArnHasBeenSet; }
45 template <typename SourceArnT = Aws::String>
46 void SetSourceArn(SourceArnT&& value) {
47 m_sourceArnHasBeenSet = true;
48 m_sourceArn = std::forward<SourceArnT>(value);
49 }
50 template <typename SourceArnT = Aws::String>
52 SetSourceArn(std::forward<SourceArnT>(value));
53 return *this;
54 }
56
58
62 inline const Aws::String& GetTargetArn() const { return m_targetArn; }
63 inline bool TargetArnHasBeenSet() const { return m_targetArnHasBeenSet; }
64 template <typename TargetArnT = Aws::String>
65 void SetTargetArn(TargetArnT&& value) {
66 m_targetArnHasBeenSet = true;
67 m_targetArn = std::forward<TargetArnT>(value);
68 }
69 template <typename TargetArnT = Aws::String>
71 SetTargetArn(std::forward<TargetArnT>(value));
72 return *this;
73 }
75
77
80 inline const Aws::String& GetIntegrationName() const { return m_integrationName; }
81 inline bool IntegrationNameHasBeenSet() const { return m_integrationNameHasBeenSet; }
82 template <typename IntegrationNameT = Aws::String>
83 void SetIntegrationName(IntegrationNameT&& value) {
84 m_integrationNameHasBeenSet = true;
85 m_integrationName = std::forward<IntegrationNameT>(value);
86 }
87 template <typename IntegrationNameT = Aws::String>
88 CreateIntegrationRequest& WithIntegrationName(IntegrationNameT&& value) {
89 SetIntegrationName(std::forward<IntegrationNameT>(value));
90 return *this;
91 }
93
95
100 inline const Aws::String& GetKMSKeyId() const { return m_kMSKeyId; }
101 inline bool KMSKeyIdHasBeenSet() const { return m_kMSKeyIdHasBeenSet; }
102 template <typename KMSKeyIdT = Aws::String>
103 void SetKMSKeyId(KMSKeyIdT&& value) {
104 m_kMSKeyIdHasBeenSet = true;
105 m_kMSKeyId = std::forward<KMSKeyIdT>(value);
106 }
107 template <typename KMSKeyIdT = Aws::String>
109 SetKMSKeyId(std::forward<KMSKeyIdT>(value));
110 return *this;
111 }
113
115
118 inline const Aws::Vector<Tag>& GetTagList() const { return m_tagList; }
119 inline bool TagListHasBeenSet() const { return m_tagListHasBeenSet; }
120 template <typename TagListT = Aws::Vector<Tag>>
121 void SetTagList(TagListT&& value) {
122 m_tagListHasBeenSet = true;
123 m_tagList = std::forward<TagListT>(value);
124 }
125 template <typename TagListT = Aws::Vector<Tag>>
127 SetTagList(std::forward<TagListT>(value));
128 return *this;
129 }
130 template <typename TagListT = Tag>
132 m_tagListHasBeenSet = true;
133 m_tagList.emplace_back(std::forward<TagListT>(value));
134 return *this;
135 }
137
139
147 inline const Aws::Map<Aws::String, Aws::String>& GetAdditionalEncryptionContext() const { return m_additionalEncryptionContext; }
148 inline bool AdditionalEncryptionContextHasBeenSet() const { return m_additionalEncryptionContextHasBeenSet; }
149 template <typename AdditionalEncryptionContextT = Aws::Map<Aws::String, Aws::String>>
150 void SetAdditionalEncryptionContext(AdditionalEncryptionContextT&& value) {
151 m_additionalEncryptionContextHasBeenSet = true;
152 m_additionalEncryptionContext = std::forward<AdditionalEncryptionContextT>(value);
153 }
154 template <typename AdditionalEncryptionContextT = Aws::Map<Aws::String, Aws::String>>
155 CreateIntegrationRequest& WithAdditionalEncryptionContext(AdditionalEncryptionContextT&& value) {
156 SetAdditionalEncryptionContext(std::forward<AdditionalEncryptionContextT>(value));
157 return *this;
158 }
159 template <typename AdditionalEncryptionContextKeyT = Aws::String, typename AdditionalEncryptionContextValueT = Aws::String>
160 CreateIntegrationRequest& AddAdditionalEncryptionContext(AdditionalEncryptionContextKeyT&& key,
161 AdditionalEncryptionContextValueT&& value) {
162 m_additionalEncryptionContextHasBeenSet = true;
163 m_additionalEncryptionContext.emplace(std::forward<AdditionalEncryptionContextKeyT>(key),
164 std::forward<AdditionalEncryptionContextValueT>(value));
165 return *this;
166 }
168
170
173 inline const Aws::String& GetDescription() const { return m_description; }
174 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
175 template <typename DescriptionT = Aws::String>
176 void SetDescription(DescriptionT&& value) {
177 m_descriptionHasBeenSet = true;
178 m_description = std::forward<DescriptionT>(value);
179 }
180 template <typename DescriptionT = Aws::String>
182 SetDescription(std::forward<DescriptionT>(value));
183 return *this;
184 }
186 private:
187 Aws::String m_sourceArn;
188
189 Aws::String m_targetArn;
190
191 Aws::String m_integrationName;
192
193 Aws::String m_kMSKeyId;
194
195 Aws::Vector<Tag> m_tagList;
196
197 Aws::Map<Aws::String, Aws::String> m_additionalEncryptionContext;
198
199 Aws::String m_description;
200 bool m_sourceArnHasBeenSet = false;
201 bool m_targetArnHasBeenSet = false;
202 bool m_integrationNameHasBeenSet = false;
203 bool m_kMSKeyIdHasBeenSet = false;
204 bool m_tagListHasBeenSet = false;
205 bool m_additionalEncryptionContextHasBeenSet = false;
206 bool m_descriptionHasBeenSet = false;
207};
208
209} // namespace Model
210} // namespace Redshift
211} // namespace Aws
void SetAdditionalEncryptionContext(AdditionalEncryptionContextT &&value)
CreateIntegrationRequest & AddTagList(TagListT &&value)
CreateIntegrationRequest & WithDescription(DescriptionT &&value)
AWS_REDSHIFT_API Aws::String SerializePayload() const override
CreateIntegrationRequest & WithAdditionalEncryptionContext(AdditionalEncryptionContextT &&value)
CreateIntegrationRequest & WithKMSKeyId(KMSKeyIdT &&value)
AWS_REDSHIFT_API CreateIntegrationRequest()=default
CreateIntegrationRequest & WithIntegrationName(IntegrationNameT &&value)
CreateIntegrationRequest & AddAdditionalEncryptionContext(AdditionalEncryptionContextKeyT &&key, AdditionalEncryptionContextValueT &&value)
AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
CreateIntegrationRequest & WithSourceArn(SourceArnT &&value)
const Aws::Map< Aws::String, Aws::String > & GetAdditionalEncryptionContext() const
virtual const char * GetServiceRequestName() const override
CreateIntegrationRequest & WithTargetArn(TargetArnT &&value)
CreateIntegrationRequest & WithTagList(TagListT &&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