AWS SDK for C++

AWS SDK for C++ Version 1.11.900

Loading...
Searching...
No Matches
NotificationTarget.h
1
6#pragma once
7#include <aws/cloudwatchomni/CloudWatchOmni_EXPORTS.h>
8#include <aws/cloudwatchomni/model/NotificationTargetType.h>
9#include <aws/core/utils/memory/stl/AWSMap.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/crt/cbor/Cbor.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Cbor {
18class CborValue;
19} // namespace Cbor
20} // namespace Utils
21namespace CloudWatchOmni {
22namespace Model {
23
30 public:
31 AWS_CLOUDWATCHOMNI_API NotificationTarget() = default;
32 AWS_CLOUDWATCHOMNI_API NotificationTarget(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
33 AWS_CLOUDWATCHOMNI_API NotificationTarget& operator=(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
34 AWS_CLOUDWATCHOMNI_API void CborEncode(Aws::Crt::Cbor::CborEncoder& encoder) const;
35
37
40 inline NotificationTargetType GetType() const { return m_type; }
41 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
42 inline void SetType(NotificationTargetType value) {
43 m_typeHasBeenSet = true;
44 m_type = value;
45 }
47 SetType(value);
48 return *this;
49 }
51
53
58 inline const Aws::String& GetArn() const { return m_arn; }
59 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
60 template <typename ArnT = Aws::String>
61 void SetArn(ArnT&& value) {
62 m_arnHasBeenSet = true;
63 m_arn = std::forward<ArnT>(value);
64 }
65 template <typename ArnT = Aws::String>
66 NotificationTarget& WithArn(ArnT&& value) {
67 SetArn(std::forward<ArnT>(value));
68 return *this;
69 }
71
73
76 inline const Aws::Map<Aws::String, Aws::String>& GetMetadata() const { return m_metadata; }
77 inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; }
78 template <typename MetadataT = Aws::Map<Aws::String, Aws::String>>
79 void SetMetadata(MetadataT&& value) {
80 m_metadataHasBeenSet = true;
81 m_metadata = std::forward<MetadataT>(value);
82 }
83 template <typename MetadataT = Aws::Map<Aws::String, Aws::String>>
84 NotificationTarget& WithMetadata(MetadataT&& value) {
85 SetMetadata(std::forward<MetadataT>(value));
86 return *this;
87 }
88 template <typename MetadataKeyT = Aws::String, typename MetadataValueT = Aws::String>
89 NotificationTarget& AddMetadata(MetadataKeyT&& key, MetadataValueT&& value) {
90 m_metadataHasBeenSet = true;
91 m_metadata.emplace(std::forward<MetadataKeyT>(key), std::forward<MetadataValueT>(value));
92 return *this;
93 }
95 private:
97
98 Aws::String m_arn;
99
101 bool m_typeHasBeenSet = false;
102 bool m_arnHasBeenSet = false;
103 bool m_metadataHasBeenSet = false;
104};
105
106} // namespace Model
107} // namespace CloudWatchOmni
108} // namespace Aws
AWS_CLOUDWATCHOMNI_API NotificationTarget()=default
const Aws::Map< Aws::String, Aws::String > & GetMetadata() const
AWS_CLOUDWATCHOMNI_API void CborEncode(Aws::Crt::Cbor::CborEncoder &encoder) const
NotificationTarget & WithType(NotificationTargetType value)
NotificationTarget & AddMetadata(MetadataKeyT &&key, MetadataValueT &&value)
void SetType(NotificationTargetType value)
NotificationTarget & WithMetadata(MetadataT &&value)
AWS_CLOUDWATCHOMNI_API NotificationTarget(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
NotificationTarget & WithArn(ArnT &&value)
AWS_CLOUDWATCHOMNI_API NotificationTarget & 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
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String