AWS SDK for C++

AWS SDK for C++ Version 1.11.751

Loading...
Searching...
No Matches
CreateDimensionRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/iot/IoTRequest.h>
11#include <aws/iot/IoT_EXPORTS.h>
12#include <aws/iot/model/DimensionType.h>
13#include <aws/iot/model/Tag.h>
14
15#include <utility>
16
17namespace Aws {
18namespace IoT {
19namespace Model {
20
24 public:
25 AWS_IOT_API CreateDimensionRequest() = 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 "CreateDimension"; }
32
33 AWS_IOT_API Aws::String SerializePayload() const override;
34
36
40 inline const Aws::String& GetName() const { return m_name; }
41 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
42 template <typename NameT = Aws::String>
43 void SetName(NameT&& value) {
44 m_nameHasBeenSet = true;
45 m_name = std::forward<NameT>(value);
46 }
47 template <typename NameT = Aws::String>
49 SetName(std::forward<NameT>(value));
50 return *this;
51 }
53
55
59 inline DimensionType GetType() const { return m_type; }
60 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
61 inline void SetType(DimensionType value) {
62 m_typeHasBeenSet = true;
63 m_type = value;
64 }
66 SetType(value);
67 return *this;
68 }
70
72
77 inline const Aws::Vector<Aws::String>& GetStringValues() const { return m_stringValues; }
78 inline bool StringValuesHasBeenSet() const { return m_stringValuesHasBeenSet; }
79 template <typename StringValuesT = Aws::Vector<Aws::String>>
80 void SetStringValues(StringValuesT&& value) {
81 m_stringValuesHasBeenSet = true;
82 m_stringValues = std::forward<StringValuesT>(value);
83 }
84 template <typename StringValuesT = Aws::Vector<Aws::String>>
85 CreateDimensionRequest& WithStringValues(StringValuesT&& value) {
86 SetStringValues(std::forward<StringValuesT>(value));
87 return *this;
88 }
89 template <typename StringValuesT = Aws::String>
90 CreateDimensionRequest& AddStringValues(StringValuesT&& value) {
91 m_stringValuesHasBeenSet = true;
92 m_stringValues.emplace_back(std::forward<StringValuesT>(value));
93 return *this;
94 }
96
98
101 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
102 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
103 template <typename TagsT = Aws::Vector<Tag>>
104 void SetTags(TagsT&& value) {
105 m_tagsHasBeenSet = true;
106 m_tags = std::forward<TagsT>(value);
107 }
108 template <typename TagsT = Aws::Vector<Tag>>
110 SetTags(std::forward<TagsT>(value));
111 return *this;
112 }
113 template <typename TagsT = Tag>
115 m_tagsHasBeenSet = true;
116 m_tags.emplace_back(std::forward<TagsT>(value));
117 return *this;
118 }
120
122
128 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
129 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
130 template <typename ClientRequestTokenT = Aws::String>
131 void SetClientRequestToken(ClientRequestTokenT&& value) {
132 m_clientRequestTokenHasBeenSet = true;
133 m_clientRequestToken = std::forward<ClientRequestTokenT>(value);
134 }
135 template <typename ClientRequestTokenT = Aws::String>
136 CreateDimensionRequest& WithClientRequestToken(ClientRequestTokenT&& value) {
137 SetClientRequestToken(std::forward<ClientRequestTokenT>(value));
138 return *this;
139 }
141 private:
142 Aws::String m_name;
143
145
146 Aws::Vector<Aws::String> m_stringValues;
147
148 Aws::Vector<Tag> m_tags;
149
150 Aws::String m_clientRequestToken{Aws::Utils::UUID::PseudoRandomUUID()};
151 bool m_nameHasBeenSet = false;
152 bool m_typeHasBeenSet = false;
153 bool m_stringValuesHasBeenSet = false;
154 bool m_tagsHasBeenSet = false;
155 bool m_clientRequestTokenHasBeenSet = true;
156};
157
158} // namespace Model
159} // namespace IoT
160} // namespace Aws
CreateDimensionRequest & AddStringValues(StringValuesT &&value)
CreateDimensionRequest & WithClientRequestToken(ClientRequestTokenT &&value)
const Aws::String & GetClientRequestToken() const
AWS_IOT_API CreateDimensionRequest()=default
CreateDimensionRequest & AddTags(TagsT &&value)
CreateDimensionRequest & WithStringValues(StringValuesT &&value)
virtual const char * GetServiceRequestName() const override
AWS_IOT_API Aws::String SerializePayload() const override
const Aws::Vector< Aws::String > & GetStringValues() const
void SetClientRequestToken(ClientRequestTokenT &&value)
const Aws::Vector< Tag > & GetTags() const
CreateDimensionRequest & WithName(NameT &&value)
CreateDimensionRequest & WithTags(TagsT &&value)
CreateDimensionRequest & WithType(DimensionType value)
static Aws::Utils::UUID PseudoRandomUUID()
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector