AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
CreatePermissionRequest.h
1
6#pragma once
7#include <aws/ram/RAM_EXPORTS.h>
8#include <aws/ram/RAMRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/ram/model/Tag.h>
12#include <utility>
13
14namespace Aws
15{
16namespace RAM
17{
18namespace Model
19{
20
24 {
25 public:
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "CreatePermission"; }
33
34 AWS_RAM_API Aws::String SerializePayload() const override;
35
36
38
42 inline const Aws::String& GetName() const{ return m_name; }
43 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
44 inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
45 inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
46 inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
47 inline CreatePermissionRequest& WithName(const Aws::String& value) { SetName(value); return *this;}
48 inline CreatePermissionRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
49 inline CreatePermissionRequest& WithName(const char* value) { SetName(value); return *this;}
51
53
61 inline const Aws::String& GetResourceType() const{ return m_resourceType; }
62 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
63 inline void SetResourceType(const Aws::String& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; }
64 inline void SetResourceType(Aws::String&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::move(value); }
65 inline void SetResourceType(const char* value) { m_resourceTypeHasBeenSet = true; m_resourceType.assign(value); }
66 inline CreatePermissionRequest& WithResourceType(const Aws::String& value) { SetResourceType(value); return *this;}
67 inline CreatePermissionRequest& WithResourceType(Aws::String&& value) { SetResourceType(std::move(value)); return *this;}
68 inline CreatePermissionRequest& WithResourceType(const char* value) { SetResourceType(value); return *this;}
70
72
94 inline const Aws::String& GetPolicyTemplate() const{ return m_policyTemplate; }
95 inline bool PolicyTemplateHasBeenSet() const { return m_policyTemplateHasBeenSet; }
96 inline void SetPolicyTemplate(const Aws::String& value) { m_policyTemplateHasBeenSet = true; m_policyTemplate = value; }
97 inline void SetPolicyTemplate(Aws::String&& value) { m_policyTemplateHasBeenSet = true; m_policyTemplate = std::move(value); }
98 inline void SetPolicyTemplate(const char* value) { m_policyTemplateHasBeenSet = true; m_policyTemplate.assign(value); }
99 inline CreatePermissionRequest& WithPolicyTemplate(const Aws::String& value) { SetPolicyTemplate(value); return *this;}
100 inline CreatePermissionRequest& WithPolicyTemplate(Aws::String&& value) { SetPolicyTemplate(std::move(value)); return *this;}
101 inline CreatePermissionRequest& WithPolicyTemplate(const char* value) { SetPolicyTemplate(value); return *this;}
103
105
117 inline const Aws::String& GetClientToken() const{ return m_clientToken; }
118 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
119 inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; }
120 inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); }
121 inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); }
122 inline CreatePermissionRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;}
123 inline CreatePermissionRequest& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;}
124 inline CreatePermissionRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;}
126
128
132 inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
133 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
134 inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
135 inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
136 inline CreatePermissionRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
137 inline CreatePermissionRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
138 inline CreatePermissionRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
139 inline CreatePermissionRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
141 private:
142
143 Aws::String m_name;
144 bool m_nameHasBeenSet = false;
145
146 Aws::String m_resourceType;
147 bool m_resourceTypeHasBeenSet = false;
148
149 Aws::String m_policyTemplate;
150 bool m_policyTemplateHasBeenSet = false;
151
152 Aws::String m_clientToken;
153 bool m_clientTokenHasBeenSet = false;
154
155 Aws::Vector<Tag> m_tags;
156 bool m_tagsHasBeenSet = false;
157 };
158
159} // namespace Model
160} // namespace RAM
161} // namespace Aws
CreatePermissionRequest & WithClientToken(Aws::String &&value)
CreatePermissionRequest & WithPolicyTemplate(const char *value)
CreatePermissionRequest & WithPolicyTemplate(const Aws::String &value)
CreatePermissionRequest & WithName(const char *value)
CreatePermissionRequest & WithClientToken(const char *value)
CreatePermissionRequest & WithName(Aws::String &&value)
virtual const char * GetServiceRequestName() const override
void SetResourceType(const Aws::String &value)
CreatePermissionRequest & WithResourceType(Aws::String &&value)
CreatePermissionRequest & AddTags(const Tag &value)
CreatePermissionRequest & WithTags(Aws::Vector< Tag > &&value)
const Aws::Vector< Tag > & GetTags() const
void SetPolicyTemplate(const Aws::String &value)
void SetTags(const Aws::Vector< Tag > &value)
CreatePermissionRequest & AddTags(Tag &&value)
CreatePermissionRequest & WithPolicyTemplate(Aws::String &&value)
CreatePermissionRequest & WithClientToken(const Aws::String &value)
CreatePermissionRequest & WithTags(const Aws::Vector< Tag > &value)
AWS_RAM_API Aws::String SerializePayload() const override
CreatePermissionRequest & WithResourceType(const char *value)
CreatePermissionRequest & WithResourceType(const Aws::String &value)
CreatePermissionRequest & WithName(const Aws::String &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector