AWS SDK for C++

AWS SDK for C++ Version 1.11.714

Loading...
Searching...
No Matches
ModifyClusterIamRolesRequest.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/redshift/RedshiftRequest.h>
10#include <aws/redshift/Redshift_EXPORTS.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Redshift {
16namespace Model {
17
24 public:
25 AWS_REDSHIFT_API ModifyClusterIamRolesRequest() = 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 "ModifyClusterIamRoles"; }
32
33 AWS_REDSHIFT_API Aws::String SerializePayload() const override;
34
35 protected:
36 AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
37
38 public:
40
44 inline const Aws::String& GetClusterIdentifier() const { return m_clusterIdentifier; }
45 inline bool ClusterIdentifierHasBeenSet() const { return m_clusterIdentifierHasBeenSet; }
46 template <typename ClusterIdentifierT = Aws::String>
47 void SetClusterIdentifier(ClusterIdentifierT&& value) {
48 m_clusterIdentifierHasBeenSet = true;
49 m_clusterIdentifier = std::forward<ClusterIdentifierT>(value);
50 }
51 template <typename ClusterIdentifierT = Aws::String>
53 SetClusterIdentifier(std::forward<ClusterIdentifierT>(value));
54 return *this;
55 }
57
59
63 inline const Aws::Vector<Aws::String>& GetAddIamRoles() const { return m_addIamRoles; }
64 inline bool AddIamRolesHasBeenSet() const { return m_addIamRolesHasBeenSet; }
65 template <typename AddIamRolesT = Aws::Vector<Aws::String>>
66 void SetAddIamRoles(AddIamRolesT&& value) {
67 m_addIamRolesHasBeenSet = true;
68 m_addIamRoles = std::forward<AddIamRolesT>(value);
69 }
70 template <typename AddIamRolesT = Aws::Vector<Aws::String>>
72 SetAddIamRoles(std::forward<AddIamRolesT>(value));
73 return *this;
74 }
75 template <typename AddIamRolesT = Aws::String>
77 m_addIamRolesHasBeenSet = true;
78 m_addIamRoles.emplace_back(std::forward<AddIamRolesT>(value));
79 return *this;
80 }
82
84
87 inline const Aws::Vector<Aws::String>& GetRemoveIamRoles() const { return m_removeIamRoles; }
88 inline bool RemoveIamRolesHasBeenSet() const { return m_removeIamRolesHasBeenSet; }
89 template <typename RemoveIamRolesT = Aws::Vector<Aws::String>>
90 void SetRemoveIamRoles(RemoveIamRolesT&& value) {
91 m_removeIamRolesHasBeenSet = true;
92 m_removeIamRoles = std::forward<RemoveIamRolesT>(value);
93 }
94 template <typename RemoveIamRolesT = Aws::Vector<Aws::String>>
96 SetRemoveIamRoles(std::forward<RemoveIamRolesT>(value));
97 return *this;
98 }
99 template <typename RemoveIamRolesT = Aws::String>
101 m_removeIamRolesHasBeenSet = true;
102 m_removeIamRoles.emplace_back(std::forward<RemoveIamRolesT>(value));
103 return *this;
104 }
106
108
112 inline const Aws::String& GetDefaultIamRoleArn() const { return m_defaultIamRoleArn; }
113 inline bool DefaultIamRoleArnHasBeenSet() const { return m_defaultIamRoleArnHasBeenSet; }
114 template <typename DefaultIamRoleArnT = Aws::String>
115 void SetDefaultIamRoleArn(DefaultIamRoleArnT&& value) {
116 m_defaultIamRoleArnHasBeenSet = true;
117 m_defaultIamRoleArn = std::forward<DefaultIamRoleArnT>(value);
118 }
119 template <typename DefaultIamRoleArnT = Aws::String>
121 SetDefaultIamRoleArn(std::forward<DefaultIamRoleArnT>(value));
122 return *this;
123 }
125 private:
126 Aws::String m_clusterIdentifier;
127
128 Aws::Vector<Aws::String> m_addIamRoles;
129
130 Aws::Vector<Aws::String> m_removeIamRoles;
131
132 Aws::String m_defaultIamRoleArn;
133 bool m_clusterIdentifierHasBeenSet = false;
134 bool m_addIamRolesHasBeenSet = false;
135 bool m_removeIamRolesHasBeenSet = false;
136 bool m_defaultIamRoleArnHasBeenSet = false;
137};
138
139} // namespace Model
140} // namespace Redshift
141} // namespace Aws
ModifyClusterIamRolesRequest & WithClusterIdentifier(ClusterIdentifierT &&value)
AWS_REDSHIFT_API ModifyClusterIamRolesRequest()=default
ModifyClusterIamRolesRequest & WithDefaultIamRoleArn(DefaultIamRoleArnT &&value)
const Aws::Vector< Aws::String > & GetAddIamRoles() const
AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
ModifyClusterIamRolesRequest & WithAddIamRoles(AddIamRolesT &&value)
AWS_REDSHIFT_API Aws::String SerializePayload() const override
ModifyClusterIamRolesRequest & AddRemoveIamRoles(RemoveIamRolesT &&value)
const Aws::Vector< Aws::String > & GetRemoveIamRoles() const
ModifyClusterIamRolesRequest & WithRemoveIamRoles(RemoveIamRolesT &&value)
ModifyClusterIamRolesRequest & AddAddIamRoles(AddIamRolesT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector