AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
ModifyClusterIamRolesRequest.h
1
6#pragma once
7#include <aws/redshift/Redshift_EXPORTS.h>
8#include <aws/redshift/RedshiftRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Redshift
16{
17namespace Model
18{
19
26 {
27 public:
28 AWS_REDSHIFT_API ModifyClusterIamRolesRequest() = default;
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "ModifyClusterIamRoles"; }
35
36 AWS_REDSHIFT_API Aws::String SerializePayload() const override;
37
38 protected:
39 AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
40
41 public:
42
44
48 inline const Aws::String& GetClusterIdentifier() const { return m_clusterIdentifier; }
49 inline bool ClusterIdentifierHasBeenSet() const { return m_clusterIdentifierHasBeenSet; }
50 template<typename ClusterIdentifierT = Aws::String>
51 void SetClusterIdentifier(ClusterIdentifierT&& value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier = std::forward<ClusterIdentifierT>(value); }
52 template<typename ClusterIdentifierT = Aws::String>
53 ModifyClusterIamRolesRequest& WithClusterIdentifier(ClusterIdentifierT&& value) { SetClusterIdentifier(std::forward<ClusterIdentifierT>(value)); return *this;}
55
57
61 inline const Aws::Vector<Aws::String>& GetAddIamRoles() const { return m_addIamRoles; }
62 inline bool AddIamRolesHasBeenSet() const { return m_addIamRolesHasBeenSet; }
63 template<typename AddIamRolesT = Aws::Vector<Aws::String>>
64 void SetAddIamRoles(AddIamRolesT&& value) { m_addIamRolesHasBeenSet = true; m_addIamRoles = std::forward<AddIamRolesT>(value); }
65 template<typename AddIamRolesT = Aws::Vector<Aws::String>>
66 ModifyClusterIamRolesRequest& WithAddIamRoles(AddIamRolesT&& value) { SetAddIamRoles(std::forward<AddIamRolesT>(value)); return *this;}
67 template<typename AddIamRolesT = Aws::String>
68 ModifyClusterIamRolesRequest& AddAddIamRoles(AddIamRolesT&& value) { m_addIamRolesHasBeenSet = true; m_addIamRoles.emplace_back(std::forward<AddIamRolesT>(value)); return *this; }
70
72
75 inline const Aws::Vector<Aws::String>& GetRemoveIamRoles() const { return m_removeIamRoles; }
76 inline bool RemoveIamRolesHasBeenSet() const { return m_removeIamRolesHasBeenSet; }
77 template<typename RemoveIamRolesT = Aws::Vector<Aws::String>>
78 void SetRemoveIamRoles(RemoveIamRolesT&& value) { m_removeIamRolesHasBeenSet = true; m_removeIamRoles = std::forward<RemoveIamRolesT>(value); }
79 template<typename RemoveIamRolesT = Aws::Vector<Aws::String>>
80 ModifyClusterIamRolesRequest& WithRemoveIamRoles(RemoveIamRolesT&& value) { SetRemoveIamRoles(std::forward<RemoveIamRolesT>(value)); return *this;}
81 template<typename RemoveIamRolesT = Aws::String>
82 ModifyClusterIamRolesRequest& AddRemoveIamRoles(RemoveIamRolesT&& value) { m_removeIamRolesHasBeenSet = true; m_removeIamRoles.emplace_back(std::forward<RemoveIamRolesT>(value)); return *this; }
84
86
90 inline const Aws::String& GetDefaultIamRoleArn() const { return m_defaultIamRoleArn; }
91 inline bool DefaultIamRoleArnHasBeenSet() const { return m_defaultIamRoleArnHasBeenSet; }
92 template<typename DefaultIamRoleArnT = Aws::String>
93 void SetDefaultIamRoleArn(DefaultIamRoleArnT&& value) { m_defaultIamRoleArnHasBeenSet = true; m_defaultIamRoleArn = std::forward<DefaultIamRoleArnT>(value); }
94 template<typename DefaultIamRoleArnT = Aws::String>
95 ModifyClusterIamRolesRequest& WithDefaultIamRoleArn(DefaultIamRoleArnT&& value) { SetDefaultIamRoleArn(std::forward<DefaultIamRoleArnT>(value)); return *this;}
97 private:
98
99 Aws::String m_clusterIdentifier;
100 bool m_clusterIdentifierHasBeenSet = false;
101
102 Aws::Vector<Aws::String> m_addIamRoles;
103 bool m_addIamRolesHasBeenSet = false;
104
105 Aws::Vector<Aws::String> m_removeIamRoles;
106 bool m_removeIamRolesHasBeenSet = false;
107
108 Aws::String m_defaultIamRoleArn;
109 bool m_defaultIamRoleArnHasBeenSet = false;
110 };
111
112} // namespace Model
113} // namespace Redshift
114} // 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