AWS SDK for C++

AWS SDK for C++ Version 1.11.788

Loading...
Searching...
No Matches
MessageAttributeValue.h
1
6#pragma once
7#include <aws/core/utils/Array.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/sqs/SQS_EXPORTS.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace SQS {
22namespace Model {
23
37 public:
38 AWS_SQS_API MessageAttributeValue() = default;
42
44
50 inline const Aws::String& GetStringValue() const { return m_stringValue; }
51 inline bool StringValueHasBeenSet() const { return m_stringValueHasBeenSet; }
52 template <typename StringValueT = Aws::String>
53 void SetStringValue(StringValueT&& value) {
54 m_stringValueHasBeenSet = true;
55 m_stringValue = std::forward<StringValueT>(value);
56 }
57 template <typename StringValueT = Aws::String>
58 MessageAttributeValue& WithStringValue(StringValueT&& value) {
59 SetStringValue(std::forward<StringValueT>(value));
60 return *this;
61 }
63
65
69 inline const Aws::Utils::ByteBuffer& GetBinaryValue() const { return m_binaryValue; }
70 inline bool BinaryValueHasBeenSet() const { return m_binaryValueHasBeenSet; }
71 template <typename BinaryValueT = Aws::Utils::ByteBuffer>
72 void SetBinaryValue(BinaryValueT&& value) {
73 m_binaryValueHasBeenSet = true;
74 m_binaryValue = std::forward<BinaryValueT>(value);
75 }
76 template <typename BinaryValueT = Aws::Utils::ByteBuffer>
77 MessageAttributeValue& WithBinaryValue(BinaryValueT&& value) {
78 SetBinaryValue(std::forward<BinaryValueT>(value));
79 return *this;
80 }
82
84
87 inline const Aws::Vector<Aws::String>& GetStringListValues() const { return m_stringListValues; }
88 inline bool StringListValuesHasBeenSet() const { return m_stringListValuesHasBeenSet; }
89 template <typename StringListValuesT = Aws::Vector<Aws::String>>
90 void SetStringListValues(StringListValuesT&& value) {
91 m_stringListValuesHasBeenSet = true;
92 m_stringListValues = std::forward<StringListValuesT>(value);
93 }
94 template <typename StringListValuesT = Aws::Vector<Aws::String>>
95 MessageAttributeValue& WithStringListValues(StringListValuesT&& value) {
96 SetStringListValues(std::forward<StringListValuesT>(value));
97 return *this;
98 }
99 template <typename StringListValuesT = Aws::String>
100 MessageAttributeValue& AddStringListValues(StringListValuesT&& value) {
101 m_stringListValuesHasBeenSet = true;
102 m_stringListValues.emplace_back(std::forward<StringListValuesT>(value));
103 return *this;
104 }
106
108
111 inline const Aws::Vector<Aws::Utils::ByteBuffer>& GetBinaryListValues() const { return m_binaryListValues; }
112 inline bool BinaryListValuesHasBeenSet() const { return m_binaryListValuesHasBeenSet; }
113 template <typename BinaryListValuesT = Aws::Vector<Aws::Utils::ByteBuffer>>
114 void SetBinaryListValues(BinaryListValuesT&& value) {
115 m_binaryListValuesHasBeenSet = true;
116 m_binaryListValues = std::forward<BinaryListValuesT>(value);
117 }
118 template <typename BinaryListValuesT = Aws::Vector<Aws::Utils::ByteBuffer>>
119 MessageAttributeValue& WithBinaryListValues(BinaryListValuesT&& value) {
120 SetBinaryListValues(std::forward<BinaryListValuesT>(value));
121 return *this;
122 }
123 template <typename BinaryListValuesT = Aws::Utils::ByteBuffer>
124 MessageAttributeValue& AddBinaryListValues(BinaryListValuesT&& value) {
125 m_binaryListValuesHasBeenSet = true;
126 m_binaryListValues.emplace_back(std::forward<BinaryListValuesT>(value));
127 return *this;
128 }
130
132
140 inline const Aws::String& GetDataType() const { return m_dataType; }
141 inline bool DataTypeHasBeenSet() const { return m_dataTypeHasBeenSet; }
142 template <typename DataTypeT = Aws::String>
143 void SetDataType(DataTypeT&& value) {
144 m_dataTypeHasBeenSet = true;
145 m_dataType = std::forward<DataTypeT>(value);
146 }
147 template <typename DataTypeT = Aws::String>
149 SetDataType(std::forward<DataTypeT>(value));
150 return *this;
151 }
153 private:
154 Aws::String m_stringValue;
155
156 Aws::Utils::ByteBuffer m_binaryValue{};
157
158 Aws::Vector<Aws::String> m_stringListValues;
159
160 Aws::Vector<Aws::Utils::ByteBuffer> m_binaryListValues;
161
162 Aws::String m_dataType;
163 bool m_stringValueHasBeenSet = false;
164 bool m_binaryValueHasBeenSet = false;
165 bool m_stringListValuesHasBeenSet = false;
166 bool m_binaryListValuesHasBeenSet = false;
167 bool m_dataTypeHasBeenSet = false;
168};
169
170} // namespace Model
171} // namespace SQS
172} // namespace Aws
AWS_SQS_API MessageAttributeValue & operator=(Aws::Utils::Json::JsonView jsonValue)
MessageAttributeValue & WithDataType(DataTypeT &&value)
void SetBinaryListValues(BinaryListValuesT &&value)
AWS_SQS_API MessageAttributeValue()=default
const Aws::Utils::ByteBuffer & GetBinaryValue() const
MessageAttributeValue & WithStringValue(StringValueT &&value)
MessageAttributeValue & WithBinaryValue(BinaryValueT &&value)
void SetStringListValues(StringListValuesT &&value)
MessageAttributeValue & AddBinaryListValues(BinaryListValuesT &&value)
MessageAttributeValue & AddStringListValues(StringListValuesT &&value)
AWS_SQS_API MessageAttributeValue(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::String > & GetStringListValues() const
MessageAttributeValue & WithBinaryListValues(BinaryListValuesT &&value)
MessageAttributeValue & WithStringListValues(StringListValuesT &&value)
AWS_SQS_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< Aws::Utils::ByteBuffer > & GetBinaryListValues() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue