AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
UpdateCrossAccountAttachmentRequest.h
1
6#pragma once
7#include <aws/globalaccelerator/GlobalAccelerator_EXPORTS.h>
8#include <aws/globalaccelerator/GlobalAcceleratorRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/globalaccelerator/model/Resource.h>
12#include <utility>
13
14namespace Aws
15{
16namespace GlobalAccelerator
17{
18namespace Model
19{
20
24 {
25 public:
26 AWS_GLOBALACCELERATOR_API UpdateCrossAccountAttachmentRequest() = default;
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 "UpdateCrossAccountAttachment"; }
33
34 AWS_GLOBALACCELERATOR_API Aws::String SerializePayload() const override;
35
36 AWS_GLOBALACCELERATOR_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
37
38
40
43 inline const Aws::String& GetAttachmentArn() const { return m_attachmentArn; }
44 inline bool AttachmentArnHasBeenSet() const { return m_attachmentArnHasBeenSet; }
45 template<typename AttachmentArnT = Aws::String>
46 void SetAttachmentArn(AttachmentArnT&& value) { m_attachmentArnHasBeenSet = true; m_attachmentArn = std::forward<AttachmentArnT>(value); }
47 template<typename AttachmentArnT = Aws::String>
48 UpdateCrossAccountAttachmentRequest& WithAttachmentArn(AttachmentArnT&& value) { SetAttachmentArn(std::forward<AttachmentArnT>(value)); return *this;}
50
52
55 inline const Aws::String& GetName() const { return m_name; }
56 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
57 template<typename NameT = Aws::String>
58 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
59 template<typename NameT = Aws::String>
60 UpdateCrossAccountAttachmentRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
62
64
71 inline const Aws::Vector<Aws::String>& GetAddPrincipals() const { return m_addPrincipals; }
72 inline bool AddPrincipalsHasBeenSet() const { return m_addPrincipalsHasBeenSet; }
73 template<typename AddPrincipalsT = Aws::Vector<Aws::String>>
74 void SetAddPrincipals(AddPrincipalsT&& value) { m_addPrincipalsHasBeenSet = true; m_addPrincipals = std::forward<AddPrincipalsT>(value); }
75 template<typename AddPrincipalsT = Aws::Vector<Aws::String>>
76 UpdateCrossAccountAttachmentRequest& WithAddPrincipals(AddPrincipalsT&& value) { SetAddPrincipals(std::forward<AddPrincipalsT>(value)); return *this;}
77 template<typename AddPrincipalsT = Aws::String>
78 UpdateCrossAccountAttachmentRequest& AddAddPrincipals(AddPrincipalsT&& value) { m_addPrincipalsHasBeenSet = true; m_addPrincipals.emplace_back(std::forward<AddPrincipalsT>(value)); return *this; }
80
82
89 inline const Aws::Vector<Aws::String>& GetRemovePrincipals() const { return m_removePrincipals; }
90 inline bool RemovePrincipalsHasBeenSet() const { return m_removePrincipalsHasBeenSet; }
91 template<typename RemovePrincipalsT = Aws::Vector<Aws::String>>
92 void SetRemovePrincipals(RemovePrincipalsT&& value) { m_removePrincipalsHasBeenSet = true; m_removePrincipals = std::forward<RemovePrincipalsT>(value); }
93 template<typename RemovePrincipalsT = Aws::Vector<Aws::String>>
94 UpdateCrossAccountAttachmentRequest& WithRemovePrincipals(RemovePrincipalsT&& value) { SetRemovePrincipals(std::forward<RemovePrincipalsT>(value)); return *this;}
95 template<typename RemovePrincipalsT = Aws::String>
96 UpdateCrossAccountAttachmentRequest& AddRemovePrincipals(RemovePrincipalsT&& value) { m_removePrincipalsHasBeenSet = true; m_removePrincipals.emplace_back(std::forward<RemovePrincipalsT>(value)); return *this; }
98
100
106 inline const Aws::Vector<Resource>& GetAddResources() const { return m_addResources; }
107 inline bool AddResourcesHasBeenSet() const { return m_addResourcesHasBeenSet; }
108 template<typename AddResourcesT = Aws::Vector<Resource>>
109 void SetAddResources(AddResourcesT&& value) { m_addResourcesHasBeenSet = true; m_addResources = std::forward<AddResourcesT>(value); }
110 template<typename AddResourcesT = Aws::Vector<Resource>>
111 UpdateCrossAccountAttachmentRequest& WithAddResources(AddResourcesT&& value) { SetAddResources(std::forward<AddResourcesT>(value)); return *this;}
112 template<typename AddResourcesT = Resource>
113 UpdateCrossAccountAttachmentRequest& AddAddResources(AddResourcesT&& value) { m_addResourcesHasBeenSet = true; m_addResources.emplace_back(std::forward<AddResourcesT>(value)); return *this; }
115
117
123 inline const Aws::Vector<Resource>& GetRemoveResources() const { return m_removeResources; }
124 inline bool RemoveResourcesHasBeenSet() const { return m_removeResourcesHasBeenSet; }
125 template<typename RemoveResourcesT = Aws::Vector<Resource>>
126 void SetRemoveResources(RemoveResourcesT&& value) { m_removeResourcesHasBeenSet = true; m_removeResources = std::forward<RemoveResourcesT>(value); }
127 template<typename RemoveResourcesT = Aws::Vector<Resource>>
128 UpdateCrossAccountAttachmentRequest& WithRemoveResources(RemoveResourcesT&& value) { SetRemoveResources(std::forward<RemoveResourcesT>(value)); return *this;}
129 template<typename RemoveResourcesT = Resource>
130 UpdateCrossAccountAttachmentRequest& AddRemoveResources(RemoveResourcesT&& value) { m_removeResourcesHasBeenSet = true; m_removeResources.emplace_back(std::forward<RemoveResourcesT>(value)); return *this; }
132 private:
133
134 Aws::String m_attachmentArn;
135 bool m_attachmentArnHasBeenSet = false;
136
137 Aws::String m_name;
138 bool m_nameHasBeenSet = false;
139
140 Aws::Vector<Aws::String> m_addPrincipals;
141 bool m_addPrincipalsHasBeenSet = false;
142
143 Aws::Vector<Aws::String> m_removePrincipals;
144 bool m_removePrincipalsHasBeenSet = false;
145
146 Aws::Vector<Resource> m_addResources;
147 bool m_addResourcesHasBeenSet = false;
148
149 Aws::Vector<Resource> m_removeResources;
150 bool m_removeResourcesHasBeenSet = false;
151 };
152
153} // namespace Model
154} // namespace GlobalAccelerator
155} // namespace Aws
UpdateCrossAccountAttachmentRequest & WithAddPrincipals(AddPrincipalsT &&value)
AWS_GLOBALACCELERATOR_API UpdateCrossAccountAttachmentRequest()=default
AWS_GLOBALACCELERATOR_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
UpdateCrossAccountAttachmentRequest & WithAttachmentArn(AttachmentArnT &&value)
UpdateCrossAccountAttachmentRequest & AddRemoveResources(RemoveResourcesT &&value)
UpdateCrossAccountAttachmentRequest & AddAddResources(AddResourcesT &&value)
UpdateCrossAccountAttachmentRequest & AddRemovePrincipals(RemovePrincipalsT &&value)
UpdateCrossAccountAttachmentRequest & AddAddPrincipals(AddPrincipalsT &&value)
AWS_GLOBALACCELERATOR_API Aws::String SerializePayload() const override
UpdateCrossAccountAttachmentRequest & WithRemovePrincipals(RemovePrincipalsT &&value)
UpdateCrossAccountAttachmentRequest & WithRemoveResources(RemoveResourcesT &&value)
UpdateCrossAccountAttachmentRequest & WithAddResources(AddResourcesT &&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