AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
MessageAttributeValue.h
1
6#pragma once
7#include <aws/core/utils/Array.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/sns/SNS_EXPORTS.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Xml {
17class XmlNode;
18} // namespace Xml
19} // namespace Utils
20namespace SNS {
21namespace Model {
22
41 public:
42 AWS_SNS_API MessageAttributeValue() = default;
45
46 AWS_SNS_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
47 AWS_SNS_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
48
50
56 inline const Aws::String& GetDataType() const { return m_dataType; }
57 inline bool DataTypeHasBeenSet() const { return m_dataTypeHasBeenSet; }
58 template <typename DataTypeT = Aws::String>
59 void SetDataType(DataTypeT&& value) {
60 m_dataTypeHasBeenSet = true;
61 m_dataType = std::forward<DataTypeT>(value);
62 }
63 template <typename DataTypeT = Aws::String>
64 MessageAttributeValue& WithDataType(DataTypeT&& value) {
65 SetDataType(std::forward<DataTypeT>(value));
66 return *this;
67 }
69
71
76 inline const Aws::String& GetStringValue() const { return m_stringValue; }
77 inline bool StringValueHasBeenSet() const { return m_stringValueHasBeenSet; }
78 template <typename StringValueT = Aws::String>
79 void SetStringValue(StringValueT&& value) {
80 m_stringValueHasBeenSet = true;
81 m_stringValue = std::forward<StringValueT>(value);
82 }
83 template <typename StringValueT = Aws::String>
84 MessageAttributeValue& WithStringValue(StringValueT&& value) {
85 SetStringValue(std::forward<StringValueT>(value));
86 return *this;
87 }
89
91
95 inline const Aws::Utils::ByteBuffer& GetBinaryValue() const { return m_binaryValue; }
96 inline bool BinaryValueHasBeenSet() const { return m_binaryValueHasBeenSet; }
97 template <typename BinaryValueT = Aws::Utils::ByteBuffer>
98 void SetBinaryValue(BinaryValueT&& value) {
99 m_binaryValueHasBeenSet = true;
100 m_binaryValue = std::forward<BinaryValueT>(value);
101 }
102 template <typename BinaryValueT = Aws::Utils::ByteBuffer>
103 MessageAttributeValue& WithBinaryValue(BinaryValueT&& value) {
104 SetBinaryValue(std::forward<BinaryValueT>(value));
105 return *this;
106 }
108 private:
109 Aws::String m_dataType;
110
111 Aws::String m_stringValue;
112
113 Aws::Utils::ByteBuffer m_binaryValue{};
114 bool m_dataTypeHasBeenSet = false;
115 bool m_stringValueHasBeenSet = false;
116 bool m_binaryValueHasBeenSet = false;
117};
118
119} // namespace Model
120} // namespace SNS
121} // namespace Aws
AWS_SNS_API MessageAttributeValue()=default
MessageAttributeValue & WithStringValue(StringValueT &&value)
AWS_SNS_API MessageAttributeValue(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_SNS_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_SNS_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const Aws::Utils::ByteBuffer & GetBinaryValue() const
MessageAttributeValue & WithDataType(DataTypeT &&value)
MessageAttributeValue & WithBinaryValue(BinaryValueT &&value)
AWS_SNS_API MessageAttributeValue & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream