AWS SDK for C++

AWS SDK for C++ Version 1.11.695

Loading...
Searching...
No Matches
CreateProjectRequest.h
1
6#pragma once
7#include <aws/codebuild/CodeBuildRequest.h>
8#include <aws/codebuild/CodeBuild_EXPORTS.h>
9#include <aws/codebuild/model/LogsConfig.h>
10#include <aws/codebuild/model/ProjectArtifacts.h>
11#include <aws/codebuild/model/ProjectBuildBatchConfig.h>
12#include <aws/codebuild/model/ProjectCache.h>
13#include <aws/codebuild/model/ProjectEnvironment.h>
14#include <aws/codebuild/model/ProjectFileSystemLocation.h>
15#include <aws/codebuild/model/ProjectSource.h>
16#include <aws/codebuild/model/ProjectSourceVersion.h>
17#include <aws/codebuild/model/Tag.h>
18#include <aws/codebuild/model/VpcConfig.h>
19#include <aws/core/utils/memory/stl/AWSString.h>
20#include <aws/core/utils/memory/stl/AWSVector.h>
21
22#include <utility>
23
24namespace Aws {
25namespace CodeBuild {
26namespace Model {
27
31 public:
32 AWS_CODEBUILD_API CreateProjectRequest() = default;
33
34 // Service request name is the Operation name which will send this request out,
35 // each operation should has unique request name, so that we can get operation's name from this request.
36 // Note: this is not true for response, multiple operations may have the same response name,
37 // so we can not get operation's name from response.
38 inline virtual const char* GetServiceRequestName() const override { return "CreateProject"; }
39
40 AWS_CODEBUILD_API Aws::String SerializePayload() const override;
41
43
45
48 inline const Aws::String& GetName() const { return m_name; }
49 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
50 template <typename NameT = Aws::String>
51 void SetName(NameT&& value) {
52 m_nameHasBeenSet = true;
53 m_name = std::forward<NameT>(value);
54 }
55 template <typename NameT = Aws::String>
57 SetName(std::forward<NameT>(value));
58 return *this;
59 }
61
63
66 inline const Aws::String& GetDescription() const { return m_description; }
67 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
68 template <typename DescriptionT = Aws::String>
69 void SetDescription(DescriptionT&& value) {
70 m_descriptionHasBeenSet = true;
71 m_description = std::forward<DescriptionT>(value);
72 }
73 template <typename DescriptionT = Aws::String>
74 CreateProjectRequest& WithDescription(DescriptionT&& value) {
75 SetDescription(std::forward<DescriptionT>(value));
76 return *this;
77 }
79
81
84 inline const ProjectSource& GetSource() const { return m_source; }
85 inline bool SourceHasBeenSet() const { return m_sourceHasBeenSet; }
86 template <typename SourceT = ProjectSource>
87 void SetSource(SourceT&& value) {
88 m_sourceHasBeenSet = true;
89 m_source = std::forward<SourceT>(value);
90 }
91 template <typename SourceT = ProjectSource>
92 CreateProjectRequest& WithSource(SourceT&& value) {
93 SetSource(std::forward<SourceT>(value));
94 return *this;
95 }
97
99
102 inline const Aws::Vector<ProjectSource>& GetSecondarySources() const { return m_secondarySources; }
103 inline bool SecondarySourcesHasBeenSet() const { return m_secondarySourcesHasBeenSet; }
104 template <typename SecondarySourcesT = Aws::Vector<ProjectSource>>
105 void SetSecondarySources(SecondarySourcesT&& value) {
106 m_secondarySourcesHasBeenSet = true;
107 m_secondarySources = std::forward<SecondarySourcesT>(value);
108 }
109 template <typename SecondarySourcesT = Aws::Vector<ProjectSource>>
110 CreateProjectRequest& WithSecondarySources(SecondarySourcesT&& value) {
111 SetSecondarySources(std::forward<SecondarySourcesT>(value));
112 return *this;
113 }
114 template <typename SecondarySourcesT = ProjectSource>
115 CreateProjectRequest& AddSecondarySources(SecondarySourcesT&& value) {
116 m_secondarySourcesHasBeenSet = true;
117 m_secondarySources.emplace_back(std::forward<SecondarySourcesT>(value));
118 return *this;
119 }
121
123
144 inline const Aws::String& GetSourceVersion() const { return m_sourceVersion; }
145 inline bool SourceVersionHasBeenSet() const { return m_sourceVersionHasBeenSet; }
146 template <typename SourceVersionT = Aws::String>
147 void SetSourceVersion(SourceVersionT&& value) {
148 m_sourceVersionHasBeenSet = true;
149 m_sourceVersion = std::forward<SourceVersionT>(value);
150 }
151 template <typename SourceVersionT = Aws::String>
152 CreateProjectRequest& WithSourceVersion(SourceVersionT&& value) {
153 SetSourceVersion(std::forward<SourceVersionT>(value));
154 return *this;
155 }
157
159
165 inline const Aws::Vector<ProjectSourceVersion>& GetSecondarySourceVersions() const { return m_secondarySourceVersions; }
166 inline bool SecondarySourceVersionsHasBeenSet() const { return m_secondarySourceVersionsHasBeenSet; }
167 template <typename SecondarySourceVersionsT = Aws::Vector<ProjectSourceVersion>>
168 void SetSecondarySourceVersions(SecondarySourceVersionsT&& value) {
169 m_secondarySourceVersionsHasBeenSet = true;
170 m_secondarySourceVersions = std::forward<SecondarySourceVersionsT>(value);
171 }
172 template <typename SecondarySourceVersionsT = Aws::Vector<ProjectSourceVersion>>
173 CreateProjectRequest& WithSecondarySourceVersions(SecondarySourceVersionsT&& value) {
174 SetSecondarySourceVersions(std::forward<SecondarySourceVersionsT>(value));
175 return *this;
176 }
177 template <typename SecondarySourceVersionsT = ProjectSourceVersion>
178 CreateProjectRequest& AddSecondarySourceVersions(SecondarySourceVersionsT&& value) {
179 m_secondarySourceVersionsHasBeenSet = true;
180 m_secondarySourceVersions.emplace_back(std::forward<SecondarySourceVersionsT>(value));
181 return *this;
182 }
184
186
189 inline const ProjectArtifacts& GetArtifacts() const { return m_artifacts; }
190 inline bool ArtifactsHasBeenSet() const { return m_artifactsHasBeenSet; }
191 template <typename ArtifactsT = ProjectArtifacts>
192 void SetArtifacts(ArtifactsT&& value) {
193 m_artifactsHasBeenSet = true;
194 m_artifacts = std::forward<ArtifactsT>(value);
195 }
196 template <typename ArtifactsT = ProjectArtifacts>
197 CreateProjectRequest& WithArtifacts(ArtifactsT&& value) {
198 SetArtifacts(std::forward<ArtifactsT>(value));
199 return *this;
200 }
202
204
207 inline const Aws::Vector<ProjectArtifacts>& GetSecondaryArtifacts() const { return m_secondaryArtifacts; }
208 inline bool SecondaryArtifactsHasBeenSet() const { return m_secondaryArtifactsHasBeenSet; }
209 template <typename SecondaryArtifactsT = Aws::Vector<ProjectArtifacts>>
210 void SetSecondaryArtifacts(SecondaryArtifactsT&& value) {
211 m_secondaryArtifactsHasBeenSet = true;
212 m_secondaryArtifacts = std::forward<SecondaryArtifactsT>(value);
213 }
214 template <typename SecondaryArtifactsT = Aws::Vector<ProjectArtifacts>>
215 CreateProjectRequest& WithSecondaryArtifacts(SecondaryArtifactsT&& value) {
216 SetSecondaryArtifacts(std::forward<SecondaryArtifactsT>(value));
217 return *this;
218 }
219 template <typename SecondaryArtifactsT = ProjectArtifacts>
220 CreateProjectRequest& AddSecondaryArtifacts(SecondaryArtifactsT&& value) {
221 m_secondaryArtifactsHasBeenSet = true;
222 m_secondaryArtifacts.emplace_back(std::forward<SecondaryArtifactsT>(value));
223 return *this;
224 }
226
228
232 inline const ProjectCache& GetCache() const { return m_cache; }
233 inline bool CacheHasBeenSet() const { return m_cacheHasBeenSet; }
234 template <typename CacheT = ProjectCache>
235 void SetCache(CacheT&& value) {
236 m_cacheHasBeenSet = true;
237 m_cache = std::forward<CacheT>(value);
238 }
239 template <typename CacheT = ProjectCache>
241 SetCache(std::forward<CacheT>(value));
242 return *this;
243 }
245
247
250 inline const ProjectEnvironment& GetEnvironment() const { return m_environment; }
251 inline bool EnvironmentHasBeenSet() const { return m_environmentHasBeenSet; }
252 template <typename EnvironmentT = ProjectEnvironment>
253 void SetEnvironment(EnvironmentT&& value) {
254 m_environmentHasBeenSet = true;
255 m_environment = std::forward<EnvironmentT>(value);
256 }
257 template <typename EnvironmentT = ProjectEnvironment>
258 CreateProjectRequest& WithEnvironment(EnvironmentT&& value) {
259 SetEnvironment(std::forward<EnvironmentT>(value));
260 return *this;
261 }
263
265
269 inline const Aws::String& GetServiceRole() const { return m_serviceRole; }
270 inline bool ServiceRoleHasBeenSet() const { return m_serviceRoleHasBeenSet; }
271 template <typename ServiceRoleT = Aws::String>
272 void SetServiceRole(ServiceRoleT&& value) {
273 m_serviceRoleHasBeenSet = true;
274 m_serviceRole = std::forward<ServiceRoleT>(value);
275 }
276 template <typename ServiceRoleT = Aws::String>
277 CreateProjectRequest& WithServiceRole(ServiceRoleT&& value) {
278 SetServiceRole(std::forward<ServiceRoleT>(value));
279 return *this;
280 }
282
284
289 inline int GetTimeoutInMinutes() const { return m_timeoutInMinutes; }
290 inline bool TimeoutInMinutesHasBeenSet() const { return m_timeoutInMinutesHasBeenSet; }
291 inline void SetTimeoutInMinutes(int value) {
292 m_timeoutInMinutesHasBeenSet = true;
293 m_timeoutInMinutes = value;
294 }
296 SetTimeoutInMinutes(value);
297 return *this;
298 }
300
302
306 inline int GetQueuedTimeoutInMinutes() const { return m_queuedTimeoutInMinutes; }
307 inline bool QueuedTimeoutInMinutesHasBeenSet() const { return m_queuedTimeoutInMinutesHasBeenSet; }
308 inline void SetQueuedTimeoutInMinutes(int value) {
309 m_queuedTimeoutInMinutesHasBeenSet = true;
310 m_queuedTimeoutInMinutes = value;
311 }
314 return *this;
315 }
317
319
327 inline const Aws::String& GetEncryptionKey() const { return m_encryptionKey; }
328 inline bool EncryptionKeyHasBeenSet() const { return m_encryptionKeyHasBeenSet; }
329 template <typename EncryptionKeyT = Aws::String>
330 void SetEncryptionKey(EncryptionKeyT&& value) {
331 m_encryptionKeyHasBeenSet = true;
332 m_encryptionKey = std::forward<EncryptionKeyT>(value);
333 }
334 template <typename EncryptionKeyT = Aws::String>
335 CreateProjectRequest& WithEncryptionKey(EncryptionKeyT&& value) {
336 SetEncryptionKey(std::forward<EncryptionKeyT>(value));
337 return *this;
338 }
340
342
347 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
348 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
349 template <typename TagsT = Aws::Vector<Tag>>
350 void SetTags(TagsT&& value) {
351 m_tagsHasBeenSet = true;
352 m_tags = std::forward<TagsT>(value);
353 }
354 template <typename TagsT = Aws::Vector<Tag>>
356 SetTags(std::forward<TagsT>(value));
357 return *this;
358 }
359 template <typename TagsT = Tag>
361 m_tagsHasBeenSet = true;
362 m_tags.emplace_back(std::forward<TagsT>(value));
363 return *this;
364 }
366
368
373 inline const VpcConfig& GetVpcConfig() const { return m_vpcConfig; }
374 inline bool VpcConfigHasBeenSet() const { return m_vpcConfigHasBeenSet; }
375 template <typename VpcConfigT = VpcConfig>
376 void SetVpcConfig(VpcConfigT&& value) {
377 m_vpcConfigHasBeenSet = true;
378 m_vpcConfig = std::forward<VpcConfigT>(value);
379 }
380 template <typename VpcConfigT = VpcConfig>
381 CreateProjectRequest& WithVpcConfig(VpcConfigT&& value) {
382 SetVpcConfig(std::forward<VpcConfigT>(value));
383 return *this;
384 }
386
388
392 inline bool GetBadgeEnabled() const { return m_badgeEnabled; }
393 inline bool BadgeEnabledHasBeenSet() const { return m_badgeEnabledHasBeenSet; }
394 inline void SetBadgeEnabled(bool value) {
395 m_badgeEnabledHasBeenSet = true;
396 m_badgeEnabled = value;
397 }
399 SetBadgeEnabled(value);
400 return *this;
401 }
403
405
409 inline const LogsConfig& GetLogsConfig() const { return m_logsConfig; }
410 inline bool LogsConfigHasBeenSet() const { return m_logsConfigHasBeenSet; }
411 template <typename LogsConfigT = LogsConfig>
412 void SetLogsConfig(LogsConfigT&& value) {
413 m_logsConfigHasBeenSet = true;
414 m_logsConfig = std::forward<LogsConfigT>(value);
415 }
416 template <typename LogsConfigT = LogsConfig>
417 CreateProjectRequest& WithLogsConfig(LogsConfigT&& value) {
418 SetLogsConfig(std::forward<LogsConfigT>(value));
419 return *this;
420 }
422
424
431 inline const Aws::Vector<ProjectFileSystemLocation>& GetFileSystemLocations() const { return m_fileSystemLocations; }
432 inline bool FileSystemLocationsHasBeenSet() const { return m_fileSystemLocationsHasBeenSet; }
433 template <typename FileSystemLocationsT = Aws::Vector<ProjectFileSystemLocation>>
434 void SetFileSystemLocations(FileSystemLocationsT&& value) {
435 m_fileSystemLocationsHasBeenSet = true;
436 m_fileSystemLocations = std::forward<FileSystemLocationsT>(value);
437 }
438 template <typename FileSystemLocationsT = Aws::Vector<ProjectFileSystemLocation>>
439 CreateProjectRequest& WithFileSystemLocations(FileSystemLocationsT&& value) {
440 SetFileSystemLocations(std::forward<FileSystemLocationsT>(value));
441 return *this;
442 }
443 template <typename FileSystemLocationsT = ProjectFileSystemLocation>
444 CreateProjectRequest& AddFileSystemLocations(FileSystemLocationsT&& value) {
445 m_fileSystemLocationsHasBeenSet = true;
446 m_fileSystemLocations.emplace_back(std::forward<FileSystemLocationsT>(value));
447 return *this;
448 }
450
452
456 inline const ProjectBuildBatchConfig& GetBuildBatchConfig() const { return m_buildBatchConfig; }
457 inline bool BuildBatchConfigHasBeenSet() const { return m_buildBatchConfigHasBeenSet; }
458 template <typename BuildBatchConfigT = ProjectBuildBatchConfig>
459 void SetBuildBatchConfig(BuildBatchConfigT&& value) {
460 m_buildBatchConfigHasBeenSet = true;
461 m_buildBatchConfig = std::forward<BuildBatchConfigT>(value);
462 }
463 template <typename BuildBatchConfigT = ProjectBuildBatchConfig>
464 CreateProjectRequest& WithBuildBatchConfig(BuildBatchConfigT&& value) {
465 SetBuildBatchConfig(std::forward<BuildBatchConfigT>(value));
466 return *this;
467 }
469
471
477 inline int GetConcurrentBuildLimit() const { return m_concurrentBuildLimit; }
478 inline bool ConcurrentBuildLimitHasBeenSet() const { return m_concurrentBuildLimitHasBeenSet; }
479 inline void SetConcurrentBuildLimit(int value) {
480 m_concurrentBuildLimitHasBeenSet = true;
481 m_concurrentBuildLimit = value;
482 }
485 return *this;
486 }
488
490
496 inline int GetAutoRetryLimit() const { return m_autoRetryLimit; }
497 inline bool AutoRetryLimitHasBeenSet() const { return m_autoRetryLimitHasBeenSet; }
498 inline void SetAutoRetryLimit(int value) {
499 m_autoRetryLimitHasBeenSet = true;
500 m_autoRetryLimit = value;
501 }
503 SetAutoRetryLimit(value);
504 return *this;
505 }
507 private:
508 Aws::String m_name;
509 bool m_nameHasBeenSet = false;
510
511 Aws::String m_description;
512 bool m_descriptionHasBeenSet = false;
513
514 ProjectSource m_source;
515 bool m_sourceHasBeenSet = false;
516
517 Aws::Vector<ProjectSource> m_secondarySources;
518 bool m_secondarySourcesHasBeenSet = false;
519
520 Aws::String m_sourceVersion;
521 bool m_sourceVersionHasBeenSet = false;
522
523 Aws::Vector<ProjectSourceVersion> m_secondarySourceVersions;
524 bool m_secondarySourceVersionsHasBeenSet = false;
525
526 ProjectArtifacts m_artifacts;
527 bool m_artifactsHasBeenSet = false;
528
529 Aws::Vector<ProjectArtifacts> m_secondaryArtifacts;
530 bool m_secondaryArtifactsHasBeenSet = false;
531
532 ProjectCache m_cache;
533 bool m_cacheHasBeenSet = false;
534
535 ProjectEnvironment m_environment;
536 bool m_environmentHasBeenSet = false;
537
538 Aws::String m_serviceRole;
539 bool m_serviceRoleHasBeenSet = false;
540
541 int m_timeoutInMinutes{0};
542 bool m_timeoutInMinutesHasBeenSet = false;
543
544 int m_queuedTimeoutInMinutes{0};
545 bool m_queuedTimeoutInMinutesHasBeenSet = false;
546
547 Aws::String m_encryptionKey;
548 bool m_encryptionKeyHasBeenSet = false;
549
550 Aws::Vector<Tag> m_tags;
551 bool m_tagsHasBeenSet = false;
552
553 VpcConfig m_vpcConfig;
554 bool m_vpcConfigHasBeenSet = false;
555
556 bool m_badgeEnabled{false};
557 bool m_badgeEnabledHasBeenSet = false;
558
559 LogsConfig m_logsConfig;
560 bool m_logsConfigHasBeenSet = false;
561
562 Aws::Vector<ProjectFileSystemLocation> m_fileSystemLocations;
563 bool m_fileSystemLocationsHasBeenSet = false;
564
565 ProjectBuildBatchConfig m_buildBatchConfig;
566 bool m_buildBatchConfigHasBeenSet = false;
567
568 int m_concurrentBuildLimit{0};
569 bool m_concurrentBuildLimitHasBeenSet = false;
570
571 int m_autoRetryLimit{0};
572 bool m_autoRetryLimitHasBeenSet = false;
573};
574
575} // namespace Model
576} // namespace CodeBuild
577} // namespace Aws
CreateProjectRequest & WithLogsConfig(LogsConfigT &&value)
CreateProjectRequest & WithSecondarySources(SecondarySourcesT &&value)
CreateProjectRequest & AddSecondarySources(SecondarySourcesT &&value)
CreateProjectRequest & WithFileSystemLocations(FileSystemLocationsT &&value)
CreateProjectRequest & WithDescription(DescriptionT &&value)
CreateProjectRequest & WithServiceRole(ServiceRoleT &&value)
void SetSecondarySources(SecondarySourcesT &&value)
const Aws::Vector< ProjectArtifacts > & GetSecondaryArtifacts() const
AWS_CODEBUILD_API CreateProjectRequest()=default
CreateProjectRequest & WithConcurrentBuildLimit(int value)
const Aws::Vector< ProjectSource > & GetSecondarySources() const
virtual const char * GetServiceRequestName() const override
CreateProjectRequest & AddTags(TagsT &&value)
const Aws::Vector< ProjectSourceVersion > & GetSecondarySourceVersions() const
CreateProjectRequest & AddSecondarySourceVersions(SecondarySourceVersionsT &&value)
CreateProjectRequest & WithQueuedTimeoutInMinutes(int value)
CreateProjectRequest & AddSecondaryArtifacts(SecondaryArtifactsT &&value)
CreateProjectRequest & WithBuildBatchConfig(BuildBatchConfigT &&value)
CreateProjectRequest & WithArtifacts(ArtifactsT &&value)
CreateProjectRequest & WithTags(TagsT &&value)
CreateProjectRequest & WithSourceVersion(SourceVersionT &&value)
const ProjectBuildBatchConfig & GetBuildBatchConfig() const
CreateProjectRequest & WithEncryptionKey(EncryptionKeyT &&value)
CreateProjectRequest & WithEnvironment(EnvironmentT &&value)
const ProjectArtifacts & GetArtifacts() const
const Aws::Vector< ProjectFileSystemLocation > & GetFileSystemLocations() const
CreateProjectRequest & WithSecondarySourceVersions(SecondarySourceVersionsT &&value)
AWS_CODEBUILD_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
void SetSecondaryArtifacts(SecondaryArtifactsT &&value)
CreateProjectRequest & WithVpcConfig(VpcConfigT &&value)
CreateProjectRequest & WithSecondaryArtifacts(SecondaryArtifactsT &&value)
CreateProjectRequest & WithName(NameT &&value)
const Aws::Vector< Tag > & GetTags() const
const ProjectEnvironment & GetEnvironment() const
void SetSecondarySourceVersions(SecondarySourceVersionsT &&value)
CreateProjectRequest & WithAutoRetryLimit(int value)
CreateProjectRequest & WithBadgeEnabled(bool value)
CreateProjectRequest & WithTimeoutInMinutes(int value)
CreateProjectRequest & WithCache(CacheT &&value)
void SetBuildBatchConfig(BuildBatchConfigT &&value)
CreateProjectRequest & AddFileSystemLocations(FileSystemLocationsT &&value)
AWS_CODEBUILD_API Aws::String SerializePayload() const override
CreateProjectRequest & WithSource(SourceT &&value)
void SetFileSystemLocations(FileSystemLocationsT &&value)
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector