AWS SDK for C++

AWS SDK for C++ Version 1.11.741

Loading...
Searching...
No Matches
CreateCollaborationRequest.h
1
6#pragma once
7#include <aws/cleanrooms/CleanRoomsRequest.h>
8#include <aws/cleanrooms/CleanRooms_EXPORTS.h>
9#include <aws/cleanrooms/model/AnalyticsEngine.h>
10#include <aws/cleanrooms/model/AutoApprovedChangeType.h>
11#include <aws/cleanrooms/model/CollaborationJobLogStatus.h>
12#include <aws/cleanrooms/model/CollaborationQueryLogStatus.h>
13#include <aws/cleanrooms/model/DataEncryptionMetadata.h>
14#include <aws/cleanrooms/model/MLMemberAbilities.h>
15#include <aws/cleanrooms/model/MemberAbility.h>
16#include <aws/cleanrooms/model/MemberSpecification.h>
17#include <aws/cleanrooms/model/PaymentConfiguration.h>
18#include <aws/cleanrooms/model/SupportedS3Region.h>
19#include <aws/core/utils/memory/stl/AWSMap.h>
20#include <aws/core/utils/memory/stl/AWSString.h>
21#include <aws/core/utils/memory/stl/AWSVector.h>
22
23#include <utility>
24
25namespace Aws {
26namespace CleanRooms {
27namespace Model {
28
32 public:
33 AWS_CLEANROOMS_API CreateCollaborationRequest() = default;
34
35 // Service request name is the Operation name which will send this request out,
36 // each operation should has unique request name, so that we can get operation's name from this request.
37 // Note: this is not true for response, multiple operations may have the same response name,
38 // so we can not get operation's name from response.
39 inline virtual const char* GetServiceRequestName() const override { return "CreateCollaboration"; }
40
41 AWS_CLEANROOMS_API Aws::String SerializePayload() const override;
42
44
48 inline const Aws::Vector<MemberSpecification>& GetMembers() const { return m_members; }
49 inline bool MembersHasBeenSet() const { return m_membersHasBeenSet; }
50 template <typename MembersT = Aws::Vector<MemberSpecification>>
51 void SetMembers(MembersT&& value) {
52 m_membersHasBeenSet = true;
53 m_members = std::forward<MembersT>(value);
54 }
55 template <typename MembersT = Aws::Vector<MemberSpecification>>
57 SetMembers(std::forward<MembersT>(value));
58 return *this;
59 }
60 template <typename MembersT = MemberSpecification>
62 m_membersHasBeenSet = true;
63 m_members.emplace_back(std::forward<MembersT>(value));
64 return *this;
65 }
67
69
72 inline const Aws::String& GetName() const { return m_name; }
73 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
74 template <typename NameT = Aws::String>
75 void SetName(NameT&& value) {
76 m_nameHasBeenSet = true;
77 m_name = std::forward<NameT>(value);
78 }
79 template <typename NameT = Aws::String>
81 SetName(std::forward<NameT>(value));
82 return *this;
83 }
85
87
90 inline const Aws::String& GetDescription() const { return m_description; }
91 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
92 template <typename DescriptionT = Aws::String>
93 void SetDescription(DescriptionT&& value) {
94 m_descriptionHasBeenSet = true;
95 m_description = std::forward<DescriptionT>(value);
96 }
97 template <typename DescriptionT = Aws::String>
99 SetDescription(std::forward<DescriptionT>(value));
100 return *this;
101 }
103
105
108 inline const Aws::Vector<MemberAbility>& GetCreatorMemberAbilities() const { return m_creatorMemberAbilities; }
109 inline bool CreatorMemberAbilitiesHasBeenSet() const { return m_creatorMemberAbilitiesHasBeenSet; }
110 template <typename CreatorMemberAbilitiesT = Aws::Vector<MemberAbility>>
111 void SetCreatorMemberAbilities(CreatorMemberAbilitiesT&& value) {
112 m_creatorMemberAbilitiesHasBeenSet = true;
113 m_creatorMemberAbilities = std::forward<CreatorMemberAbilitiesT>(value);
114 }
115 template <typename CreatorMemberAbilitiesT = Aws::Vector<MemberAbility>>
116 CreateCollaborationRequest& WithCreatorMemberAbilities(CreatorMemberAbilitiesT&& value) {
117 SetCreatorMemberAbilities(std::forward<CreatorMemberAbilitiesT>(value));
118 return *this;
119 }
121 m_creatorMemberAbilitiesHasBeenSet = true;
122 m_creatorMemberAbilities.push_back(value);
123 return *this;
124 }
126
128
131 inline const MLMemberAbilities& GetCreatorMLMemberAbilities() const { return m_creatorMLMemberAbilities; }
132 inline bool CreatorMLMemberAbilitiesHasBeenSet() const { return m_creatorMLMemberAbilitiesHasBeenSet; }
133 template <typename CreatorMLMemberAbilitiesT = MLMemberAbilities>
134 void SetCreatorMLMemberAbilities(CreatorMLMemberAbilitiesT&& value) {
135 m_creatorMLMemberAbilitiesHasBeenSet = true;
136 m_creatorMLMemberAbilities = std::forward<CreatorMLMemberAbilitiesT>(value);
137 }
138 template <typename CreatorMLMemberAbilitiesT = MLMemberAbilities>
139 CreateCollaborationRequest& WithCreatorMLMemberAbilities(CreatorMLMemberAbilitiesT&& value) {
140 SetCreatorMLMemberAbilities(std::forward<CreatorMLMemberAbilitiesT>(value));
141 return *this;
142 }
144
146
149 inline const Aws::String& GetCreatorDisplayName() const { return m_creatorDisplayName; }
150 inline bool CreatorDisplayNameHasBeenSet() const { return m_creatorDisplayNameHasBeenSet; }
151 template <typename CreatorDisplayNameT = Aws::String>
152 void SetCreatorDisplayName(CreatorDisplayNameT&& value) {
153 m_creatorDisplayNameHasBeenSet = true;
154 m_creatorDisplayName = std::forward<CreatorDisplayNameT>(value);
155 }
156 template <typename CreatorDisplayNameT = Aws::String>
158 SetCreatorDisplayName(std::forward<CreatorDisplayNameT>(value));
159 return *this;
160 }
162
164
168 inline const DataEncryptionMetadata& GetDataEncryptionMetadata() const { return m_dataEncryptionMetadata; }
169 inline bool DataEncryptionMetadataHasBeenSet() const { return m_dataEncryptionMetadataHasBeenSet; }
170 template <typename DataEncryptionMetadataT = DataEncryptionMetadata>
171 void SetDataEncryptionMetadata(DataEncryptionMetadataT&& value) {
172 m_dataEncryptionMetadataHasBeenSet = true;
173 m_dataEncryptionMetadata = std::forward<DataEncryptionMetadataT>(value);
174 }
175 template <typename DataEncryptionMetadataT = DataEncryptionMetadata>
176 CreateCollaborationRequest& WithDataEncryptionMetadata(DataEncryptionMetadataT&& value) {
177 SetDataEncryptionMetadata(std::forward<DataEncryptionMetadataT>(value));
178 return *this;
179 }
181
183
189 inline CollaborationQueryLogStatus GetQueryLogStatus() const { return m_queryLogStatus; }
190 inline bool QueryLogStatusHasBeenSet() const { return m_queryLogStatusHasBeenSet; }
192 m_queryLogStatusHasBeenSet = true;
193 m_queryLogStatus = value;
194 }
196 SetQueryLogStatus(value);
197 return *this;
198 }
200
202
208 inline CollaborationJobLogStatus GetJobLogStatus() const { return m_jobLogStatus; }
209 inline bool JobLogStatusHasBeenSet() const { return m_jobLogStatusHasBeenSet; }
211 m_jobLogStatusHasBeenSet = true;
212 m_jobLogStatus = value;
213 }
215 SetJobLogStatus(value);
216 return *this;
217 }
219
221
227 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
228 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
229 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
230 void SetTags(TagsT&& value) {
231 m_tagsHasBeenSet = true;
232 m_tags = std::forward<TagsT>(value);
233 }
234 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
236 SetTags(std::forward<TagsT>(value));
237 return *this;
238 }
239 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
240 CreateCollaborationRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
241 m_tagsHasBeenSet = true;
242 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
243 return *this;
244 }
246
248
254 inline const PaymentConfiguration& GetCreatorPaymentConfiguration() const { return m_creatorPaymentConfiguration; }
255 inline bool CreatorPaymentConfigurationHasBeenSet() const { return m_creatorPaymentConfigurationHasBeenSet; }
256 template <typename CreatorPaymentConfigurationT = PaymentConfiguration>
257 void SetCreatorPaymentConfiguration(CreatorPaymentConfigurationT&& value) {
258 m_creatorPaymentConfigurationHasBeenSet = true;
259 m_creatorPaymentConfiguration = std::forward<CreatorPaymentConfigurationT>(value);
260 }
261 template <typename CreatorPaymentConfigurationT = PaymentConfiguration>
262 CreateCollaborationRequest& WithCreatorPaymentConfiguration(CreatorPaymentConfigurationT&& value) {
263 SetCreatorPaymentConfiguration(std::forward<CreatorPaymentConfigurationT>(value));
264 return *this;
265 }
267
269
273 inline AnalyticsEngine GetAnalyticsEngine() const { return m_analyticsEngine; }
274 inline bool AnalyticsEngineHasBeenSet() const { return m_analyticsEngineHasBeenSet; }
276 m_analyticsEngineHasBeenSet = true;
277 m_analyticsEngine = value;
278 }
280 SetAnalyticsEngine(value);
281 return *this;
282 }
284
286
290 inline const Aws::Vector<AutoApprovedChangeType>& GetAutoApprovedChangeRequestTypes() const { return m_autoApprovedChangeRequestTypes; }
291 inline bool AutoApprovedChangeRequestTypesHasBeenSet() const { return m_autoApprovedChangeRequestTypesHasBeenSet; }
292 template <typename AutoApprovedChangeRequestTypesT = Aws::Vector<AutoApprovedChangeType>>
293 void SetAutoApprovedChangeRequestTypes(AutoApprovedChangeRequestTypesT&& value) {
294 m_autoApprovedChangeRequestTypesHasBeenSet = true;
295 m_autoApprovedChangeRequestTypes = std::forward<AutoApprovedChangeRequestTypesT>(value);
296 }
297 template <typename AutoApprovedChangeRequestTypesT = Aws::Vector<AutoApprovedChangeType>>
298 CreateCollaborationRequest& WithAutoApprovedChangeRequestTypes(AutoApprovedChangeRequestTypesT&& value) {
299 SetAutoApprovedChangeRequestTypes(std::forward<AutoApprovedChangeRequestTypesT>(value));
300 return *this;
301 }
303 m_autoApprovedChangeRequestTypesHasBeenSet = true;
304 m_autoApprovedChangeRequestTypes.push_back(value);
305 return *this;
306 }
308
310
316 inline const Aws::Vector<SupportedS3Region>& GetAllowedResultRegions() const { return m_allowedResultRegions; }
317 inline bool AllowedResultRegionsHasBeenSet() const { return m_allowedResultRegionsHasBeenSet; }
318 template <typename AllowedResultRegionsT = Aws::Vector<SupportedS3Region>>
319 void SetAllowedResultRegions(AllowedResultRegionsT&& value) {
320 m_allowedResultRegionsHasBeenSet = true;
321 m_allowedResultRegions = std::forward<AllowedResultRegionsT>(value);
322 }
323 template <typename AllowedResultRegionsT = Aws::Vector<SupportedS3Region>>
324 CreateCollaborationRequest& WithAllowedResultRegions(AllowedResultRegionsT&& value) {
325 SetAllowedResultRegions(std::forward<AllowedResultRegionsT>(value));
326 return *this;
327 }
329 m_allowedResultRegionsHasBeenSet = true;
330 m_allowedResultRegions.push_back(value);
331 return *this;
332 }
334
336
342 inline bool GetIsMetricsEnabled() const { return m_isMetricsEnabled; }
343 inline bool IsMetricsEnabledHasBeenSet() const { return m_isMetricsEnabledHasBeenSet; }
344 inline void SetIsMetricsEnabled(bool value) {
345 m_isMetricsEnabledHasBeenSet = true;
346 m_isMetricsEnabled = value;
347 }
349 SetIsMetricsEnabled(value);
350 return *this;
351 }
353 private:
355
356 Aws::String m_name;
357
358 Aws::String m_description;
359
360 Aws::Vector<MemberAbility> m_creatorMemberAbilities;
361
362 MLMemberAbilities m_creatorMLMemberAbilities;
363
364 Aws::String m_creatorDisplayName;
365
366 DataEncryptionMetadata m_dataEncryptionMetadata;
367
369
371
373
374 PaymentConfiguration m_creatorPaymentConfiguration;
375
376 AnalyticsEngine m_analyticsEngine{AnalyticsEngine::NOT_SET};
377
378 Aws::Vector<AutoApprovedChangeType> m_autoApprovedChangeRequestTypes;
379
380 Aws::Vector<SupportedS3Region> m_allowedResultRegions;
381
382 bool m_isMetricsEnabled{false};
383 bool m_membersHasBeenSet = false;
384 bool m_nameHasBeenSet = false;
385 bool m_descriptionHasBeenSet = false;
386 bool m_creatorMemberAbilitiesHasBeenSet = false;
387 bool m_creatorMLMemberAbilitiesHasBeenSet = false;
388 bool m_creatorDisplayNameHasBeenSet = false;
389 bool m_dataEncryptionMetadataHasBeenSet = false;
390 bool m_queryLogStatusHasBeenSet = false;
391 bool m_jobLogStatusHasBeenSet = false;
392 bool m_tagsHasBeenSet = false;
393 bool m_creatorPaymentConfigurationHasBeenSet = false;
394 bool m_analyticsEngineHasBeenSet = false;
395 bool m_autoApprovedChangeRequestTypesHasBeenSet = false;
396 bool m_allowedResultRegionsHasBeenSet = false;
397 bool m_isMetricsEnabledHasBeenSet = false;
398};
399
400} // namespace Model
401} // namespace CleanRooms
402} // namespace Aws
const Aws::Vector< MemberSpecification > & GetMembers() const
CreateCollaborationRequest & WithCreatorPaymentConfiguration(CreatorPaymentConfigurationT &&value)
CreateCollaborationRequest & AddMembers(MembersT &&value)
const Aws::Vector< AutoApprovedChangeType > & GetAutoApprovedChangeRequestTypes() const
CreateCollaborationRequest & WithIsMetricsEnabled(bool value)
CreateCollaborationRequest & WithQueryLogStatus(CollaborationQueryLogStatus value)
void SetAutoApprovedChangeRequestTypes(AutoApprovedChangeRequestTypesT &&value)
void SetCreatorPaymentConfiguration(CreatorPaymentConfigurationT &&value)
CreateCollaborationRequest & AddAllowedResultRegions(SupportedS3Region value)
CreateCollaborationRequest & WithName(NameT &&value)
CreateCollaborationRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateCollaborationRequest & WithAllowedResultRegions(AllowedResultRegionsT &&value)
virtual const char * GetServiceRequestName() const override
CreateCollaborationRequest & WithMembers(MembersT &&value)
CreateCollaborationRequest & WithJobLogStatus(CollaborationJobLogStatus value)
AWS_CLEANROOMS_API CreateCollaborationRequest()=default
const Aws::Vector< SupportedS3Region > & GetAllowedResultRegions() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
void SetDataEncryptionMetadata(DataEncryptionMetadataT &&value)
CreateCollaborationRequest & AddCreatorMemberAbilities(MemberAbility value)
CreateCollaborationRequest & WithCreatorMemberAbilities(CreatorMemberAbilitiesT &&value)
CreateCollaborationRequest & WithTags(TagsT &&value)
const DataEncryptionMetadata & GetDataEncryptionMetadata() const
CreateCollaborationRequest & WithDataEncryptionMetadata(DataEncryptionMetadataT &&value)
CreateCollaborationRequest & WithCreatorMLMemberAbilities(CreatorMLMemberAbilitiesT &&value)
void SetCreatorMemberAbilities(CreatorMemberAbilitiesT &&value)
AWS_CLEANROOMS_API Aws::String SerializePayload() const override
const PaymentConfiguration & GetCreatorPaymentConfiguration() const
void SetQueryLogStatus(CollaborationQueryLogStatus value)
CreateCollaborationRequest & WithDescription(DescriptionT &&value)
void SetCreatorMLMemberAbilities(CreatorMLMemberAbilitiesT &&value)
CreateCollaborationRequest & WithAnalyticsEngine(AnalyticsEngine value)
CreateCollaborationRequest & AddAutoApprovedChangeRequestTypes(AutoApprovedChangeType value)
CreateCollaborationRequest & WithAutoApprovedChangeRequestTypes(AutoApprovedChangeRequestTypesT &&value)
CreateCollaborationRequest & WithCreatorDisplayName(CreatorDisplayNameT &&value)
const Aws::Vector< MemberAbility > & GetCreatorMemberAbilities() const
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