AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
CreateAcceleratorRequest.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/globalaccelerator/model/IpAddressType.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/globalaccelerator/model/Tag.h>
13#include <utility>
14#include <aws/core/utils/UUID.h>
15
16namespace Aws
17{
18namespace GlobalAccelerator
19{
20namespace Model
21{
22
26 {
27 public:
28 AWS_GLOBALACCELERATOR_API CreateAcceleratorRequest() = 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 "CreateAccelerator"; }
35
36 AWS_GLOBALACCELERATOR_API Aws::String SerializePayload() const override;
37
38 AWS_GLOBALACCELERATOR_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
39
40
42
47 inline const Aws::String& GetName() const { return m_name; }
48 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
49 template<typename NameT = Aws::String>
50 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
51 template<typename NameT = Aws::String>
52 CreateAcceleratorRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
54
56
60 inline IpAddressType GetIpAddressType() const { return m_ipAddressType; }
61 inline bool IpAddressTypeHasBeenSet() const { return m_ipAddressTypeHasBeenSet; }
62 inline void SetIpAddressType(IpAddressType value) { m_ipAddressTypeHasBeenSet = true; m_ipAddressType = value; }
65
67
86 inline const Aws::Vector<Aws::String>& GetIpAddresses() const { return m_ipAddresses; }
87 inline bool IpAddressesHasBeenSet() const { return m_ipAddressesHasBeenSet; }
88 template<typename IpAddressesT = Aws::Vector<Aws::String>>
89 void SetIpAddresses(IpAddressesT&& value) { m_ipAddressesHasBeenSet = true; m_ipAddresses = std::forward<IpAddressesT>(value); }
90 template<typename IpAddressesT = Aws::Vector<Aws::String>>
91 CreateAcceleratorRequest& WithIpAddresses(IpAddressesT&& value) { SetIpAddresses(std::forward<IpAddressesT>(value)); return *this;}
92 template<typename IpAddressesT = Aws::String>
93 CreateAcceleratorRequest& AddIpAddresses(IpAddressesT&& value) { m_ipAddressesHasBeenSet = true; m_ipAddresses.emplace_back(std::forward<IpAddressesT>(value)); return *this; }
95
97
102 inline bool GetEnabled() const { return m_enabled; }
103 inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; }
104 inline void SetEnabled(bool value) { m_enabledHasBeenSet = true; m_enabled = value; }
105 inline CreateAcceleratorRequest& WithEnabled(bool value) { SetEnabled(value); return *this;}
107
109
113 inline const Aws::String& GetIdempotencyToken() const { return m_idempotencyToken; }
114 inline bool IdempotencyTokenHasBeenSet() const { return m_idempotencyTokenHasBeenSet; }
115 template<typename IdempotencyTokenT = Aws::String>
116 void SetIdempotencyToken(IdempotencyTokenT&& value) { m_idempotencyTokenHasBeenSet = true; m_idempotencyToken = std::forward<IdempotencyTokenT>(value); }
117 template<typename IdempotencyTokenT = Aws::String>
118 CreateAcceleratorRequest& WithIdempotencyToken(IdempotencyTokenT&& value) { SetIdempotencyToken(std::forward<IdempotencyTokenT>(value)); return *this;}
120
122
127 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
128 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
129 template<typename TagsT = Aws::Vector<Tag>>
130 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
131 template<typename TagsT = Aws::Vector<Tag>>
132 CreateAcceleratorRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
133 template<typename TagsT = Tag>
134 CreateAcceleratorRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
136 private:
137
138 Aws::String m_name;
139 bool m_nameHasBeenSet = false;
140
141 IpAddressType m_ipAddressType{IpAddressType::NOT_SET};
142 bool m_ipAddressTypeHasBeenSet = false;
143
144 Aws::Vector<Aws::String> m_ipAddresses;
145 bool m_ipAddressesHasBeenSet = false;
146
147 bool m_enabled{false};
148 bool m_enabledHasBeenSet = false;
149
151 bool m_idempotencyTokenHasBeenSet = true;
152
153 Aws::Vector<Tag> m_tags;
154 bool m_tagsHasBeenSet = false;
155 };
156
157} // namespace Model
158} // namespace GlobalAccelerator
159} // namespace Aws
CreateAcceleratorRequest & AddIpAddresses(IpAddressesT &&value)
AWS_GLOBALACCELERATOR_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
const Aws::Vector< Aws::String > & GetIpAddresses() const
CreateAcceleratorRequest & WithIdempotencyToken(IdempotencyTokenT &&value)
CreateAcceleratorRequest & WithIpAddresses(IpAddressesT &&value)
AWS_GLOBALACCELERATOR_API Aws::String SerializePayload() const override
CreateAcceleratorRequest & WithIpAddressType(IpAddressType value)
AWS_GLOBALACCELERATOR_API CreateAcceleratorRequest()=default
static Aws::Utils::UUID PseudoRandomUUID()
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