AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
CreateLinkRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/oam/OAMRequest.h>
11#include <aws/oam/OAM_EXPORTS.h>
12#include <aws/oam/model/LinkConfiguration.h>
13#include <aws/oam/model/ResourceType.h>
14
15#include <utility>
16
17namespace Aws {
18namespace OAM {
19namespace Model {
20
24 public:
25 AWS_OAM_API CreateLinkRequest() = 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 "CreateLink"; }
32
33 AWS_OAM_API Aws::String SerializePayload() const override;
34
36
50 inline const Aws::String& GetLabelTemplate() const { return m_labelTemplate; }
51 inline bool LabelTemplateHasBeenSet() const { return m_labelTemplateHasBeenSet; }
52 template <typename LabelTemplateT = Aws::String>
53 void SetLabelTemplate(LabelTemplateT&& value) {
54 m_labelTemplateHasBeenSet = true;
55 m_labelTemplate = std::forward<LabelTemplateT>(value);
56 }
57 template <typename LabelTemplateT = Aws::String>
58 CreateLinkRequest& WithLabelTemplate(LabelTemplateT&& value) {
59 SetLabelTemplate(std::forward<LabelTemplateT>(value));
60 return *this;
61 }
63
65
70 inline const LinkConfiguration& GetLinkConfiguration() const { return m_linkConfiguration; }
71 inline bool LinkConfigurationHasBeenSet() const { return m_linkConfigurationHasBeenSet; }
72 template <typename LinkConfigurationT = LinkConfiguration>
73 void SetLinkConfiguration(LinkConfigurationT&& value) {
74 m_linkConfigurationHasBeenSet = true;
75 m_linkConfiguration = std::forward<LinkConfigurationT>(value);
76 }
77 template <typename LinkConfigurationT = LinkConfiguration>
78 CreateLinkRequest& WithLinkConfiguration(LinkConfigurationT&& value) {
79 SetLinkConfiguration(std::forward<LinkConfigurationT>(value));
80 return *this;
81 }
83
85
89 inline const Aws::Vector<ResourceType>& GetResourceTypes() const { return m_resourceTypes; }
90 inline bool ResourceTypesHasBeenSet() const { return m_resourceTypesHasBeenSet; }
91 template <typename ResourceTypesT = Aws::Vector<ResourceType>>
92 void SetResourceTypes(ResourceTypesT&& value) {
93 m_resourceTypesHasBeenSet = true;
94 m_resourceTypes = std::forward<ResourceTypesT>(value);
95 }
96 template <typename ResourceTypesT = Aws::Vector<ResourceType>>
97 CreateLinkRequest& WithResourceTypes(ResourceTypesT&& value) {
98 SetResourceTypes(std::forward<ResourceTypesT>(value));
99 return *this;
100 }
102 m_resourceTypesHasBeenSet = true;
103 m_resourceTypes.push_back(value);
104 return *this;
105 }
107
109
115 inline const Aws::String& GetSinkIdentifier() const { return m_sinkIdentifier; }
116 inline bool SinkIdentifierHasBeenSet() const { return m_sinkIdentifierHasBeenSet; }
117 template <typename SinkIdentifierT = Aws::String>
118 void SetSinkIdentifier(SinkIdentifierT&& value) {
119 m_sinkIdentifierHasBeenSet = true;
120 m_sinkIdentifier = std::forward<SinkIdentifierT>(value);
121 }
122 template <typename SinkIdentifierT = Aws::String>
123 CreateLinkRequest& WithSinkIdentifier(SinkIdentifierT&& value) {
124 SetSinkIdentifier(std::forward<SinkIdentifierT>(value));
125 return *this;
126 }
128
130
139 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
140 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
141 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
142 void SetTags(TagsT&& value) {
143 m_tagsHasBeenSet = true;
144 m_tags = std::forward<TagsT>(value);
145 }
146 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
147 CreateLinkRequest& WithTags(TagsT&& value) {
148 SetTags(std::forward<TagsT>(value));
149 return *this;
150 }
151 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
152 CreateLinkRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
153 m_tagsHasBeenSet = true;
154 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
155 return *this;
156 }
158 private:
159 Aws::String m_labelTemplate;
160
161 LinkConfiguration m_linkConfiguration;
162
163 Aws::Vector<ResourceType> m_resourceTypes;
164
165 Aws::String m_sinkIdentifier;
166
168 bool m_labelTemplateHasBeenSet = false;
169 bool m_linkConfigurationHasBeenSet = false;
170 bool m_resourceTypesHasBeenSet = false;
171 bool m_sinkIdentifierHasBeenSet = false;
172 bool m_tagsHasBeenSet = false;
173};
174
175} // namespace Model
176} // namespace OAM
177} // namespace Aws
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
std::vector< T, Aws::Allocator< T > > Vector