AWS SDK for C++

AWS SDK for C++ Version 1.11.900

Loading...
Searching...
No Matches
TraceMetadata.h
1
6#pragma once
7#include <aws/cloudwatchomni/CloudWatchOmni_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/crt/cbor/Cbor.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Cbor {
17class CborValue;
18} // namespace Cbor
19} // namespace Utils
20namespace CloudWatchOmni {
21namespace Model {
22
30 public:
31 AWS_CLOUDWATCHOMNI_API TraceMetadata() = default;
32 AWS_CLOUDWATCHOMNI_API TraceMetadata(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
33 AWS_CLOUDWATCHOMNI_API TraceMetadata& operator=(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
34 AWS_CLOUDWATCHOMNI_API void CborEncode(Aws::Crt::Cbor::CborEncoder& encoder) const;
35
37
38 inline const Aws::Map<Aws::String, Aws::String>& GetAttributes() const { return m_attributes; }
39 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
40 template <typename AttributesT = Aws::Map<Aws::String, Aws::String>>
41 void SetAttributes(AttributesT&& value) {
42 m_attributesHasBeenSet = true;
43 m_attributes = std::forward<AttributesT>(value);
44 }
45 template <typename AttributesT = Aws::Map<Aws::String, Aws::String>>
46 TraceMetadata& WithAttributes(AttributesT&& value) {
47 SetAttributes(std::forward<AttributesT>(value));
48 return *this;
49 }
50 template <typename AttributesKeyT = Aws::String, typename AttributesValueT = Aws::String>
51 TraceMetadata& AddAttributes(AttributesKeyT&& key, AttributesValueT&& value) {
52 m_attributesHasBeenSet = true;
53 m_attributes.emplace(std::forward<AttributesKeyT>(key), std::forward<AttributesValueT>(value));
54 return *this;
55 }
57 private:
59 bool m_attributesHasBeenSet = false;
60};
61
62} // namespace Model
63} // namespace CloudWatchOmni
64} // namespace Aws
const Aws::Map< Aws::String, Aws::String > & GetAttributes() const
AWS_CLOUDWATCHOMNI_API void CborEncode(Aws::Crt::Cbor::CborEncoder &encoder) const
AWS_CLOUDWATCHOMNI_API TraceMetadata(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
TraceMetadata & AddAttributes(AttributesKeyT &&key, AttributesValueT &&value)
void SetAttributes(AttributesT &&value)
AWS_CLOUDWATCHOMNI_API TraceMetadata()=default
TraceMetadata & WithAttributes(AttributesT &&value)
AWS_CLOUDWATCHOMNI_API TraceMetadata & operator=(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map