AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
ModifyDocumentPermissionRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/ssm/SSMRequest.h>
10#include <aws/ssm/SSM_EXPORTS.h>
11#include <aws/ssm/model/DocumentPermissionType.h>
12
13#include <utility>
14
15namespace Aws {
16namespace SSM {
17namespace Model {
18
22 public:
23 AWS_SSM_API ModifyDocumentPermissionRequest() = default;
24
25 // Service request name is the Operation name which will send this request out,
26 // each operation should has unique request name, so that we can get operation's name from this request.
27 // Note: this is not true for response, multiple operations may have the same response name,
28 // so we can not get operation's name from response.
29 inline virtual const char* GetServiceRequestName() const override { return "ModifyDocumentPermission"; }
30
31 AWS_SSM_API Aws::String SerializePayload() const override;
32
34
36
39 inline const Aws::String& GetName() const { return m_name; }
40 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
41 template <typename NameT = Aws::String>
42 void SetName(NameT&& value) {
43 m_nameHasBeenSet = true;
44 m_name = std::forward<NameT>(value);
45 }
46 template <typename NameT = Aws::String>
48 SetName(std::forward<NameT>(value));
49 return *this;
50 }
52
54
58 inline DocumentPermissionType GetPermissionType() const { return m_permissionType; }
59 inline bool PermissionTypeHasBeenSet() const { return m_permissionTypeHasBeenSet; }
61 m_permissionTypeHasBeenSet = true;
62 m_permissionType = value;
63 }
65 SetPermissionType(value);
66 return *this;
67 }
69
71
76 inline const Aws::Vector<Aws::String>& GetAccountIdsToAdd() const { return m_accountIdsToAdd; }
77 inline bool AccountIdsToAddHasBeenSet() const { return m_accountIdsToAddHasBeenSet; }
78 template <typename AccountIdsToAddT = Aws::Vector<Aws::String>>
79 void SetAccountIdsToAdd(AccountIdsToAddT&& value) {
80 m_accountIdsToAddHasBeenSet = true;
81 m_accountIdsToAdd = std::forward<AccountIdsToAddT>(value);
82 }
83 template <typename AccountIdsToAddT = Aws::Vector<Aws::String>>
85 SetAccountIdsToAdd(std::forward<AccountIdsToAddT>(value));
86 return *this;
87 }
88 template <typename AccountIdsToAddT = Aws::String>
90 m_accountIdsToAddHasBeenSet = true;
91 m_accountIdsToAdd.emplace_back(std::forward<AccountIdsToAddT>(value));
92 return *this;
93 }
95
97
105 inline const Aws::Vector<Aws::String>& GetAccountIdsToRemove() const { return m_accountIdsToRemove; }
106 inline bool AccountIdsToRemoveHasBeenSet() const { return m_accountIdsToRemoveHasBeenSet; }
107 template <typename AccountIdsToRemoveT = Aws::Vector<Aws::String>>
108 void SetAccountIdsToRemove(AccountIdsToRemoveT&& value) {
109 m_accountIdsToRemoveHasBeenSet = true;
110 m_accountIdsToRemove = std::forward<AccountIdsToRemoveT>(value);
111 }
112 template <typename AccountIdsToRemoveT = Aws::Vector<Aws::String>>
114 SetAccountIdsToRemove(std::forward<AccountIdsToRemoveT>(value));
115 return *this;
116 }
117 template <typename AccountIdsToRemoveT = Aws::String>
119 m_accountIdsToRemoveHasBeenSet = true;
120 m_accountIdsToRemove.emplace_back(std::forward<AccountIdsToRemoveT>(value));
121 return *this;
122 }
124
126
130 inline const Aws::String& GetSharedDocumentVersion() const { return m_sharedDocumentVersion; }
131 inline bool SharedDocumentVersionHasBeenSet() const { return m_sharedDocumentVersionHasBeenSet; }
132 template <typename SharedDocumentVersionT = Aws::String>
133 void SetSharedDocumentVersion(SharedDocumentVersionT&& value) {
134 m_sharedDocumentVersionHasBeenSet = true;
135 m_sharedDocumentVersion = std::forward<SharedDocumentVersionT>(value);
136 }
137 template <typename SharedDocumentVersionT = Aws::String>
139 SetSharedDocumentVersion(std::forward<SharedDocumentVersionT>(value));
140 return *this;
141 }
143 private:
144 Aws::String m_name;
145
147
148 Aws::Vector<Aws::String> m_accountIdsToAdd;
149
150 Aws::Vector<Aws::String> m_accountIdsToRemove;
151
152 Aws::String m_sharedDocumentVersion;
153 bool m_nameHasBeenSet = false;
154 bool m_permissionTypeHasBeenSet = false;
155 bool m_accountIdsToAddHasBeenSet = false;
156 bool m_accountIdsToRemoveHasBeenSet = false;
157 bool m_sharedDocumentVersionHasBeenSet = false;
158};
159
160} // namespace Model
161} // namespace SSM
162} // namespace Aws
AWS_SSM_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
ModifyDocumentPermissionRequest & AddAccountIdsToRemove(AccountIdsToRemoveT &&value)
const Aws::Vector< Aws::String > & GetAccountIdsToAdd() const
AWS_SSM_API Aws::String SerializePayload() const override
ModifyDocumentPermissionRequest & WithAccountIdsToRemove(AccountIdsToRemoveT &&value)
ModifyDocumentPermissionRequest & WithName(NameT &&value)
ModifyDocumentPermissionRequest & WithAccountIdsToAdd(AccountIdsToAddT &&value)
ModifyDocumentPermissionRequest & AddAccountIdsToAdd(AccountIdsToAddT &&value)
const Aws::Vector< Aws::String > & GetAccountIdsToRemove() const
ModifyDocumentPermissionRequest & WithSharedDocumentVersion(SharedDocumentVersionT &&value)
ModifyDocumentPermissionRequest & WithPermissionType(DocumentPermissionType 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