AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
AssociateResourceShareRequest.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 <utility>
12
13namespace Aws
14{
15namespace RAM
16{
17namespace Model
18{
19
23 {
24 public:
25 AWS_RAM_API AssociateResourceShareRequest() = 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 "AssociateResourceShare"; }
32
33 AWS_RAM_API Aws::String SerializePayload() const override;
34
35
37
43 inline const Aws::String& GetResourceShareArn() const { return m_resourceShareArn; }
44 inline bool ResourceShareArnHasBeenSet() const { return m_resourceShareArnHasBeenSet; }
45 template<typename ResourceShareArnT = Aws::String>
46 void SetResourceShareArn(ResourceShareArnT&& value) { m_resourceShareArnHasBeenSet = true; m_resourceShareArn = std::forward<ResourceShareArnT>(value); }
47 template<typename ResourceShareArnT = Aws::String>
48 AssociateResourceShareRequest& WithResourceShareArn(ResourceShareArnT&& value) { SetResourceShareArn(std::forward<ResourceShareArnT>(value)); return *this;}
50
52
58 inline const Aws::Vector<Aws::String>& GetResourceArns() const { return m_resourceArns; }
59 inline bool ResourceArnsHasBeenSet() const { return m_resourceArnsHasBeenSet; }
60 template<typename ResourceArnsT = Aws::Vector<Aws::String>>
61 void SetResourceArns(ResourceArnsT&& value) { m_resourceArnsHasBeenSet = true; m_resourceArns = std::forward<ResourceArnsT>(value); }
62 template<typename ResourceArnsT = Aws::Vector<Aws::String>>
63 AssociateResourceShareRequest& WithResourceArns(ResourceArnsT&& value) { SetResourceArns(std::forward<ResourceArnsT>(value)); return *this;}
64 template<typename ResourceArnsT = Aws::String>
65 AssociateResourceShareRequest& AddResourceArns(ResourceArnsT&& value) { m_resourceArnsHasBeenSet = true; m_resourceArns.emplace_back(std::forward<ResourceArnsT>(value)); return *this; }
67
69
91 inline const Aws::Vector<Aws::String>& GetPrincipals() const { return m_principals; }
92 inline bool PrincipalsHasBeenSet() const { return m_principalsHasBeenSet; }
93 template<typename PrincipalsT = Aws::Vector<Aws::String>>
94 void SetPrincipals(PrincipalsT&& value) { m_principalsHasBeenSet = true; m_principals = std::forward<PrincipalsT>(value); }
95 template<typename PrincipalsT = Aws::Vector<Aws::String>>
96 AssociateResourceShareRequest& WithPrincipals(PrincipalsT&& value) { SetPrincipals(std::forward<PrincipalsT>(value)); return *this;}
97 template<typename PrincipalsT = Aws::String>
98 AssociateResourceShareRequest& AddPrincipals(PrincipalsT&& value) { m_principalsHasBeenSet = true; m_principals.emplace_back(std::forward<PrincipalsT>(value)); return *this; }
100
102
114 inline const Aws::String& GetClientToken() const { return m_clientToken; }
115 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
116 template<typename ClientTokenT = Aws::String>
117 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::forward<ClientTokenT>(value); }
118 template<typename ClientTokenT = Aws::String>
119 AssociateResourceShareRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
121
123
127 inline const Aws::Vector<Aws::String>& GetSources() const { return m_sources; }
128 inline bool SourcesHasBeenSet() const { return m_sourcesHasBeenSet; }
129 template<typename SourcesT = Aws::Vector<Aws::String>>
130 void SetSources(SourcesT&& value) { m_sourcesHasBeenSet = true; m_sources = std::forward<SourcesT>(value); }
131 template<typename SourcesT = Aws::Vector<Aws::String>>
132 AssociateResourceShareRequest& WithSources(SourcesT&& value) { SetSources(std::forward<SourcesT>(value)); return *this;}
133 template<typename SourcesT = Aws::String>
134 AssociateResourceShareRequest& AddSources(SourcesT&& value) { m_sourcesHasBeenSet = true; m_sources.emplace_back(std::forward<SourcesT>(value)); return *this; }
136 private:
137
138 Aws::String m_resourceShareArn;
139 bool m_resourceShareArnHasBeenSet = false;
140
141 Aws::Vector<Aws::String> m_resourceArns;
142 bool m_resourceArnsHasBeenSet = false;
143
144 Aws::Vector<Aws::String> m_principals;
145 bool m_principalsHasBeenSet = false;
146
147 Aws::String m_clientToken;
148 bool m_clientTokenHasBeenSet = false;
149
150 Aws::Vector<Aws::String> m_sources;
151 bool m_sourcesHasBeenSet = false;
152 };
153
154} // namespace Model
155} // namespace RAM
156} // namespace Aws
AssociateResourceShareRequest & WithResourceShareArn(ResourceShareArnT &&value)
AssociateResourceShareRequest & WithSources(SourcesT &&value)
const Aws::Vector< Aws::String > & GetResourceArns() const
AssociateResourceShareRequest & WithResourceArns(ResourceArnsT &&value)
AssociateResourceShareRequest & AddSources(SourcesT &&value)
const Aws::Vector< Aws::String > & GetSources() const
AssociateResourceShareRequest & AddResourceArns(ResourceArnsT &&value)
const Aws::Vector< Aws::String > & GetPrincipals() const
AssociateResourceShareRequest & AddPrincipals(PrincipalsT &&value)
AssociateResourceShareRequest & WithClientToken(ClientTokenT &&value)
virtual const char * GetServiceRequestName() const override
AssociateResourceShareRequest & WithPrincipals(PrincipalsT &&value)
AWS_RAM_API Aws::String SerializePayload() const override
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector