AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
CreateTargetGroupRequest.h
1
6#pragma once
7#include <aws/vpc-lattice/VPCLattice_EXPORTS.h>
8#include <aws/vpc-lattice/VPCLatticeRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/vpc-lattice/model/TargetGroupConfig.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/vpc-lattice/model/TargetGroupType.h>
13#include <utility>
14#include <aws/core/utils/UUID.h>
15
16namespace Aws
17{
18namespace VPCLattice
19{
20namespace Model
21{
22
26 {
27 public:
28 AWS_VPCLATTICE_API CreateTargetGroupRequest() = 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 "CreateTargetGroup"; }
35
36 AWS_VPCLATTICE_API Aws::String SerializePayload() const override;
37
38
40
46 inline const Aws::String& GetClientToken() const { return m_clientToken; }
47 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
48 template<typename ClientTokenT = Aws::String>
49 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::forward<ClientTokenT>(value); }
50 template<typename ClientTokenT = Aws::String>
51 CreateTargetGroupRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
53
55
58 inline const TargetGroupConfig& GetConfig() const { return m_config; }
59 inline bool ConfigHasBeenSet() const { return m_configHasBeenSet; }
60 template<typename ConfigT = TargetGroupConfig>
61 void SetConfig(ConfigT&& value) { m_configHasBeenSet = true; m_config = std::forward<ConfigT>(value); }
62 template<typename ConfigT = TargetGroupConfig>
63 CreateTargetGroupRequest& WithConfig(ConfigT&& value) { SetConfig(std::forward<ConfigT>(value)); return *this;}
65
67
72 inline const Aws::String& GetName() const { return m_name; }
73 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
74 template<typename NameT = Aws::String>
75 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
76 template<typename NameT = Aws::String>
77 CreateTargetGroupRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
79
81
84 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
85 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
86 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
87 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
88 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
89 CreateTargetGroupRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
90 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
91 CreateTargetGroupRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
92 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
93 }
95
97
100 inline TargetGroupType GetType() const { return m_type; }
101 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
102 inline void SetType(TargetGroupType value) { m_typeHasBeenSet = true; m_type = value; }
103 inline CreateTargetGroupRequest& WithType(TargetGroupType value) { SetType(value); return *this;}
105 private:
106
108 bool m_clientTokenHasBeenSet = true;
109
110 TargetGroupConfig m_config;
111 bool m_configHasBeenSet = false;
112
113 Aws::String m_name;
114 bool m_nameHasBeenSet = false;
115
117 bool m_tagsHasBeenSet = false;
118
120 bool m_typeHasBeenSet = false;
121 };
122
123} // namespace Model
124} // namespace VPCLattice
125} // namespace Aws
static Aws::Utils::UUID PseudoRandomUUID()
CreateTargetGroupRequest & WithTags(TagsT &&value)
virtual const char * GetServiceRequestName() const override
AWS_VPCLATTICE_API CreateTargetGroupRequest()=default
CreateTargetGroupRequest & WithClientToken(ClientTokenT &&value)
CreateTargetGroupRequest & WithName(NameT &&value)
CreateTargetGroupRequest & WithConfig(ConfigT &&value)
CreateTargetGroupRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
AWS_VPCLATTICE_API Aws::String SerializePayload() const override
CreateTargetGroupRequest & WithType(TargetGroupType value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String