AWS SDK for C++

AWS SDK for C++ Version 1.11.740

Loading...
Searching...
No Matches
CreateProfileRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/wellarchitected/WellArchitectedRequest.h>
12#include <aws/wellarchitected/WellArchitected_EXPORTS.h>
13#include <aws/wellarchitected/model/ProfileQuestionUpdate.h>
14
15#include <utility>
16
17namespace Aws {
18namespace WellArchitected {
19namespace Model {
20
24 public:
25 AWS_WELLARCHITECTED_API CreateProfileRequest() = 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 "CreateProfile"; }
32
33 AWS_WELLARCHITECTED_API Aws::String SerializePayload() const override;
34
36
39 inline const Aws::String& GetProfileName() const { return m_profileName; }
40 inline bool ProfileNameHasBeenSet() const { return m_profileNameHasBeenSet; }
41 template <typename ProfileNameT = Aws::String>
42 void SetProfileName(ProfileNameT&& value) {
43 m_profileNameHasBeenSet = true;
44 m_profileName = std::forward<ProfileNameT>(value);
45 }
46 template <typename ProfileNameT = Aws::String>
47 CreateProfileRequest& WithProfileName(ProfileNameT&& value) {
48 SetProfileName(std::forward<ProfileNameT>(value));
49 return *this;
50 }
52
54
57 inline const Aws::String& GetProfileDescription() const { return m_profileDescription; }
58 inline bool ProfileDescriptionHasBeenSet() const { return m_profileDescriptionHasBeenSet; }
59 template <typename ProfileDescriptionT = Aws::String>
60 void SetProfileDescription(ProfileDescriptionT&& value) {
61 m_profileDescriptionHasBeenSet = true;
62 m_profileDescription = std::forward<ProfileDescriptionT>(value);
63 }
64 template <typename ProfileDescriptionT = Aws::String>
65 CreateProfileRequest& WithProfileDescription(ProfileDescriptionT&& value) {
66 SetProfileDescription(std::forward<ProfileDescriptionT>(value));
67 return *this;
68 }
70
72
75 inline const Aws::Vector<ProfileQuestionUpdate>& GetProfileQuestions() const { return m_profileQuestions; }
76 inline bool ProfileQuestionsHasBeenSet() const { return m_profileQuestionsHasBeenSet; }
77 template <typename ProfileQuestionsT = Aws::Vector<ProfileQuestionUpdate>>
78 void SetProfileQuestions(ProfileQuestionsT&& value) {
79 m_profileQuestionsHasBeenSet = true;
80 m_profileQuestions = std::forward<ProfileQuestionsT>(value);
81 }
82 template <typename ProfileQuestionsT = Aws::Vector<ProfileQuestionUpdate>>
83 CreateProfileRequest& WithProfileQuestions(ProfileQuestionsT&& value) {
84 SetProfileQuestions(std::forward<ProfileQuestionsT>(value));
85 return *this;
86 }
87 template <typename ProfileQuestionsT = ProfileQuestionUpdate>
88 CreateProfileRequest& AddProfileQuestions(ProfileQuestionsT&& value) {
89 m_profileQuestionsHasBeenSet = true;
90 m_profileQuestions.emplace_back(std::forward<ProfileQuestionsT>(value));
91 return *this;
92 }
94
96
97 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
98 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
99 template <typename ClientRequestTokenT = Aws::String>
100 void SetClientRequestToken(ClientRequestTokenT&& value) {
101 m_clientRequestTokenHasBeenSet = true;
102 m_clientRequestToken = std::forward<ClientRequestTokenT>(value);
103 }
104 template <typename ClientRequestTokenT = Aws::String>
105 CreateProfileRequest& WithClientRequestToken(ClientRequestTokenT&& value) {
106 SetClientRequestToken(std::forward<ClientRequestTokenT>(value));
107 return *this;
108 }
110
112
115 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
116 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
117 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
118 void SetTags(TagsT&& value) {
119 m_tagsHasBeenSet = true;
120 m_tags = std::forward<TagsT>(value);
121 }
122 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
124 SetTags(std::forward<TagsT>(value));
125 return *this;
126 }
127 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
128 CreateProfileRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
129 m_tagsHasBeenSet = true;
130 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
131 return *this;
132 }
134 private:
135 Aws::String m_profileName;
136
137 Aws::String m_profileDescription;
138
139 Aws::Vector<ProfileQuestionUpdate> m_profileQuestions;
140
141 Aws::String m_clientRequestToken{Aws::Utils::UUID::PseudoRandomUUID()};
142
144 bool m_profileNameHasBeenSet = false;
145 bool m_profileDescriptionHasBeenSet = false;
146 bool m_profileQuestionsHasBeenSet = false;
147 bool m_clientRequestTokenHasBeenSet = true;
148 bool m_tagsHasBeenSet = false;
149};
150
151} // namespace Model
152} // namespace WellArchitected
153} // namespace Aws
static Aws::Utils::UUID PseudoRandomUUID()
AWS_WELLARCHITECTED_API CreateProfileRequest()=default
void SetProfileDescription(ProfileDescriptionT &&value)
CreateProfileRequest & WithClientRequestToken(ClientRequestTokenT &&value)
void SetClientRequestToken(ClientRequestTokenT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
CreateProfileRequest & AddProfileQuestions(ProfileQuestionsT &&value)
virtual const char * GetServiceRequestName() const override
CreateProfileRequest & WithProfileName(ProfileNameT &&value)
CreateProfileRequest & WithTags(TagsT &&value)
CreateProfileRequest & WithProfileDescription(ProfileDescriptionT &&value)
const Aws::Vector< ProfileQuestionUpdate > & GetProfileQuestions() const
CreateProfileRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
AWS_WELLARCHITECTED_API Aws::String SerializePayload() const override
CreateProfileRequest & WithProfileQuestions(ProfileQuestionsT &&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