AWS SDK for C++

AWS SDK for C++ Version 1.11.795

Loading...
Searching...
No Matches
CreateProjectRequest.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/datazone/DataZoneRequest.h>
11#include <aws/datazone/DataZone_EXPORTS.h>
12#include <aws/datazone/model/EnvironmentConfigurationUserParameter.h>
13#include <aws/datazone/model/ProjectMembershipAssignment.h>
14
15#include <utility>
16
17namespace Aws {
18namespace DataZone {
19namespace Model {
20
24 public:
25 AWS_DATAZONE_API CreateProjectRequest() = default;
26
27 // Service request name is the Operation name which will send this request out,
28 // each operation should has unique request name, so that we can get operation's name from this request.
29 // Note: this is not true for response, multiple operations may have the same response name,
30 // so we can not get operation's name from response.
31 inline virtual const char* GetServiceRequestName() const override { return "CreateProject"; }
32
33 AWS_DATAZONE_API Aws::String SerializePayload() const override;
34
36
39 inline const Aws::String& GetDomainIdentifier() const { return m_domainIdentifier; }
40 inline bool DomainIdentifierHasBeenSet() const { return m_domainIdentifierHasBeenSet; }
41 template <typename DomainIdentifierT = Aws::String>
42 void SetDomainIdentifier(DomainIdentifierT&& value) {
43 m_domainIdentifierHasBeenSet = true;
44 m_domainIdentifier = std::forward<DomainIdentifierT>(value);
45 }
46 template <typename DomainIdentifierT = Aws::String>
47 CreateProjectRequest& WithDomainIdentifier(DomainIdentifierT&& value) {
48 SetDomainIdentifier(std::forward<DomainIdentifierT>(value));
49 return *this;
50 }
52
54
57 inline const Aws::String& GetName() const { return m_name; }
58 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
59 template <typename NameT = Aws::String>
60 void SetName(NameT&& value) {
61 m_nameHasBeenSet = true;
62 m_name = std::forward<NameT>(value);
63 }
64 template <typename NameT = Aws::String>
66 SetName(std::forward<NameT>(value));
67 return *this;
68 }
70
72
75 inline const Aws::String& GetDescription() const { return m_description; }
76 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
77 template <typename DescriptionT = Aws::String>
78 void SetDescription(DescriptionT&& value) {
79 m_descriptionHasBeenSet = true;
80 m_description = std::forward<DescriptionT>(value);
81 }
82 template <typename DescriptionT = Aws::String>
83 CreateProjectRequest& WithDescription(DescriptionT&& value) {
84 SetDescription(std::forward<DescriptionT>(value));
85 return *this;
86 }
88
90
93 inline const Aws::Map<Aws::String, Aws::String>& GetResourceTags() const { return m_resourceTags; }
94 inline bool ResourceTagsHasBeenSet() const { return m_resourceTagsHasBeenSet; }
95 template <typename ResourceTagsT = Aws::Map<Aws::String, Aws::String>>
96 void SetResourceTags(ResourceTagsT&& value) {
97 m_resourceTagsHasBeenSet = true;
98 m_resourceTags = std::forward<ResourceTagsT>(value);
99 }
100 template <typename ResourceTagsT = Aws::Map<Aws::String, Aws::String>>
101 CreateProjectRequest& WithResourceTags(ResourceTagsT&& value) {
102 SetResourceTags(std::forward<ResourceTagsT>(value));
103 return *this;
104 }
105 template <typename ResourceTagsKeyT = Aws::String, typename ResourceTagsValueT = Aws::String>
106 CreateProjectRequest& AddResourceTags(ResourceTagsKeyT&& key, ResourceTagsValueT&& value) {
107 m_resourceTagsHasBeenSet = true;
108 m_resourceTags.emplace(std::forward<ResourceTagsKeyT>(key), std::forward<ResourceTagsValueT>(value));
109 return *this;
110 }
112
114
117 inline const Aws::Vector<Aws::String>& GetGlossaryTerms() const { return m_glossaryTerms; }
118 inline bool GlossaryTermsHasBeenSet() const { return m_glossaryTermsHasBeenSet; }
119 template <typename GlossaryTermsT = Aws::Vector<Aws::String>>
120 void SetGlossaryTerms(GlossaryTermsT&& value) {
121 m_glossaryTermsHasBeenSet = true;
122 m_glossaryTerms = std::forward<GlossaryTermsT>(value);
123 }
124 template <typename GlossaryTermsT = Aws::Vector<Aws::String>>
125 CreateProjectRequest& WithGlossaryTerms(GlossaryTermsT&& value) {
126 SetGlossaryTerms(std::forward<GlossaryTermsT>(value));
127 return *this;
128 }
129 template <typename GlossaryTermsT = Aws::String>
130 CreateProjectRequest& AddGlossaryTerms(GlossaryTermsT&& value) {
131 m_glossaryTermsHasBeenSet = true;
132 m_glossaryTerms.emplace_back(std::forward<GlossaryTermsT>(value));
133 return *this;
134 }
136
138
142 inline const Aws::String& GetDomainUnitId() const { return m_domainUnitId; }
143 inline bool DomainUnitIdHasBeenSet() const { return m_domainUnitIdHasBeenSet; }
144 template <typename DomainUnitIdT = Aws::String>
145 void SetDomainUnitId(DomainUnitIdT&& value) {
146 m_domainUnitIdHasBeenSet = true;
147 m_domainUnitId = std::forward<DomainUnitIdT>(value);
148 }
149 template <typename DomainUnitIdT = Aws::String>
150 CreateProjectRequest& WithDomainUnitId(DomainUnitIdT&& value) {
151 SetDomainUnitId(std::forward<DomainUnitIdT>(value));
152 return *this;
153 }
155
157
160 inline const Aws::String& GetProjectProfileId() const { return m_projectProfileId; }
161 inline bool ProjectProfileIdHasBeenSet() const { return m_projectProfileIdHasBeenSet; }
162 template <typename ProjectProfileIdT = Aws::String>
163 void SetProjectProfileId(ProjectProfileIdT&& value) {
164 m_projectProfileIdHasBeenSet = true;
165 m_projectProfileId = std::forward<ProjectProfileIdT>(value);
166 }
167 template <typename ProjectProfileIdT = Aws::String>
168 CreateProjectRequest& WithProjectProfileId(ProjectProfileIdT&& value) {
169 SetProjectProfileId(std::forward<ProjectProfileIdT>(value));
170 return *this;
171 }
173
175
178 inline const Aws::Vector<EnvironmentConfigurationUserParameter>& GetUserParameters() const { return m_userParameters; }
179 inline bool UserParametersHasBeenSet() const { return m_userParametersHasBeenSet; }
180 template <typename UserParametersT = Aws::Vector<EnvironmentConfigurationUserParameter>>
181 void SetUserParameters(UserParametersT&& value) {
182 m_userParametersHasBeenSet = true;
183 m_userParameters = std::forward<UserParametersT>(value);
184 }
185 template <typename UserParametersT = Aws::Vector<EnvironmentConfigurationUserParameter>>
186 CreateProjectRequest& WithUserParameters(UserParametersT&& value) {
187 SetUserParameters(std::forward<UserParametersT>(value));
188 return *this;
189 }
190 template <typename UserParametersT = EnvironmentConfigurationUserParameter>
191 CreateProjectRequest& AddUserParameters(UserParametersT&& value) {
192 m_userParametersHasBeenSet = true;
193 m_userParameters.emplace_back(std::forward<UserParametersT>(value));
194 return *this;
195 }
197
199
203 inline const Aws::String& GetProjectCategory() const { return m_projectCategory; }
204 inline bool ProjectCategoryHasBeenSet() const { return m_projectCategoryHasBeenSet; }
205 template <typename ProjectCategoryT = Aws::String>
206 void SetProjectCategory(ProjectCategoryT&& value) {
207 m_projectCategoryHasBeenSet = true;
208 m_projectCategory = std::forward<ProjectCategoryT>(value);
209 }
210 template <typename ProjectCategoryT = Aws::String>
211 CreateProjectRequest& WithProjectCategory(ProjectCategoryT&& value) {
212 SetProjectCategory(std::forward<ProjectCategoryT>(value));
213 return *this;
214 }
216
218
222 inline const Aws::String& GetProjectExecutionRole() const { return m_projectExecutionRole; }
223 inline bool ProjectExecutionRoleHasBeenSet() const { return m_projectExecutionRoleHasBeenSet; }
224 template <typename ProjectExecutionRoleT = Aws::String>
225 void SetProjectExecutionRole(ProjectExecutionRoleT&& value) {
226 m_projectExecutionRoleHasBeenSet = true;
227 m_projectExecutionRole = std::forward<ProjectExecutionRoleT>(value);
228 }
229 template <typename ProjectExecutionRoleT = Aws::String>
230 CreateProjectRequest& WithProjectExecutionRole(ProjectExecutionRoleT&& value) {
231 SetProjectExecutionRole(std::forward<ProjectExecutionRoleT>(value));
232 return *this;
233 }
235
237
240 inline const Aws::Vector<ProjectMembershipAssignment>& GetMembershipAssignments() const { return m_membershipAssignments; }
241 inline bool MembershipAssignmentsHasBeenSet() const { return m_membershipAssignmentsHasBeenSet; }
242 template <typename MembershipAssignmentsT = Aws::Vector<ProjectMembershipAssignment>>
243 void SetMembershipAssignments(MembershipAssignmentsT&& value) {
244 m_membershipAssignmentsHasBeenSet = true;
245 m_membershipAssignments = std::forward<MembershipAssignmentsT>(value);
246 }
247 template <typename MembershipAssignmentsT = Aws::Vector<ProjectMembershipAssignment>>
248 CreateProjectRequest& WithMembershipAssignments(MembershipAssignmentsT&& value) {
249 SetMembershipAssignments(std::forward<MembershipAssignmentsT>(value));
250 return *this;
251 }
252 template <typename MembershipAssignmentsT = ProjectMembershipAssignment>
253 CreateProjectRequest& AddMembershipAssignments(MembershipAssignmentsT&& value) {
254 m_membershipAssignmentsHasBeenSet = true;
255 m_membershipAssignments.emplace_back(std::forward<MembershipAssignmentsT>(value));
256 return *this;
257 }
259 private:
260 Aws::String m_domainIdentifier;
261
262 Aws::String m_name;
263
264 Aws::String m_description;
265
267
268 Aws::Vector<Aws::String> m_glossaryTerms;
269
270 Aws::String m_domainUnitId;
271
272 Aws::String m_projectProfileId;
273
275
276 Aws::String m_projectCategory;
277
278 Aws::String m_projectExecutionRole;
279
280 Aws::Vector<ProjectMembershipAssignment> m_membershipAssignments;
281 bool m_domainIdentifierHasBeenSet = false;
282 bool m_nameHasBeenSet = false;
283 bool m_descriptionHasBeenSet = false;
284 bool m_resourceTagsHasBeenSet = false;
285 bool m_glossaryTermsHasBeenSet = false;
286 bool m_domainUnitIdHasBeenSet = false;
287 bool m_projectProfileIdHasBeenSet = false;
288 bool m_userParametersHasBeenSet = false;
289 bool m_projectCategoryHasBeenSet = false;
290 bool m_projectExecutionRoleHasBeenSet = false;
291 bool m_membershipAssignmentsHasBeenSet = false;
292};
293
294} // namespace Model
295} // namespace DataZone
296} // namespace Aws
void SetProjectCategory(ProjectCategoryT &&value)
const Aws::Vector< EnvironmentConfigurationUserParameter > & GetUserParameters() const
CreateProjectRequest & AddResourceTags(ResourceTagsKeyT &&key, ResourceTagsValueT &&value)
virtual const char * GetServiceRequestName() const override
void SetUserParameters(UserParametersT &&value)
CreateProjectRequest & WithResourceTags(ResourceTagsT &&value)
void SetDomainIdentifier(DomainIdentifierT &&value)
const Aws::Vector< Aws::String > & GetGlossaryTerms() const
AWS_DATAZONE_API Aws::String SerializePayload() const override
CreateProjectRequest & WithDescription(DescriptionT &&value)
CreateProjectRequest & WithProjectProfileId(ProjectProfileIdT &&value)
CreateProjectRequest & WithProjectExecutionRole(ProjectExecutionRoleT &&value)
void SetMembershipAssignments(MembershipAssignmentsT &&value)
CreateProjectRequest & AddGlossaryTerms(GlossaryTermsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetResourceTags() const
void SetProjectExecutionRole(ProjectExecutionRoleT &&value)
const Aws::Vector< ProjectMembershipAssignment > & GetMembershipAssignments() const
CreateProjectRequest & WithUserParameters(UserParametersT &&value)
CreateProjectRequest & WithMembershipAssignments(MembershipAssignmentsT &&value)
CreateProjectRequest & WithProjectCategory(ProjectCategoryT &&value)
CreateProjectRequest & AddUserParameters(UserParametersT &&value)
CreateProjectRequest & WithDomainUnitId(DomainUnitIdT &&value)
void SetProjectProfileId(ProjectProfileIdT &&value)
const Aws::String & GetProjectExecutionRole() const
CreateProjectRequest & WithGlossaryTerms(GlossaryTermsT &&value)
CreateProjectRequest & WithName(NameT &&value)
CreateProjectRequest & AddMembershipAssignments(MembershipAssignmentsT &&value)
CreateProjectRequest & WithDomainIdentifier(DomainIdentifierT &&value)
AWS_DATAZONE_API CreateProjectRequest()=default
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