AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
DeliveryDestination.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/logs/CloudWatchLogs_EXPORTS.h>
10#include <aws/logs/model/DeliveryDestinationConfiguration.h>
11#include <aws/logs/model/DeliveryDestinationType.h>
12#include <aws/logs/model/OutputFormat.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace CloudWatchLogs {
24namespace Model {
25
53 public:
54 AWS_CLOUDWATCHLOGS_API DeliveryDestination() = default;
55 AWS_CLOUDWATCHLOGS_API DeliveryDestination(Aws::Utils::Json::JsonView jsonValue);
56 AWS_CLOUDWATCHLOGS_API DeliveryDestination& operator=(Aws::Utils::Json::JsonView jsonValue);
57 AWS_CLOUDWATCHLOGS_API Aws::Utils::Json::JsonValue Jsonize() const;
58
60
63 inline const Aws::String& GetName() const { return m_name; }
64 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
65 template <typename NameT = Aws::String>
66 void SetName(NameT&& value) {
67 m_nameHasBeenSet = true;
68 m_name = std::forward<NameT>(value);
69 }
70 template <typename NameT = Aws::String>
71 DeliveryDestination& WithName(NameT&& value) {
72 SetName(std::forward<NameT>(value));
73 return *this;
74 }
76
78
82 inline const Aws::String& GetArn() const { return m_arn; }
83 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
84 template <typename ArnT = Aws::String>
85 void SetArn(ArnT&& value) {
86 m_arnHasBeenSet = true;
87 m_arn = std::forward<ArnT>(value);
88 }
89 template <typename ArnT = Aws::String>
91 SetArn(std::forward<ArnT>(value));
92 return *this;
93 }
95
97
101 inline DeliveryDestinationType GetDeliveryDestinationType() const { return m_deliveryDestinationType; }
102 inline bool DeliveryDestinationTypeHasBeenSet() const { return m_deliveryDestinationTypeHasBeenSet; }
104 m_deliveryDestinationTypeHasBeenSet = true;
105 m_deliveryDestinationType = value;
106 }
109 return *this;
110 }
112
114
117 inline OutputFormat GetOutputFormat() const { return m_outputFormat; }
118 inline bool OutputFormatHasBeenSet() const { return m_outputFormatHasBeenSet; }
119 inline void SetOutputFormat(OutputFormat value) {
120 m_outputFormatHasBeenSet = true;
121 m_outputFormat = value;
122 }
124 SetOutputFormat(value);
125 return *this;
126 }
128
130
134 inline const DeliveryDestinationConfiguration& GetDeliveryDestinationConfiguration() const { return m_deliveryDestinationConfiguration; }
135 inline bool DeliveryDestinationConfigurationHasBeenSet() const { return m_deliveryDestinationConfigurationHasBeenSet; }
136 template <typename DeliveryDestinationConfigurationT = DeliveryDestinationConfiguration>
137 void SetDeliveryDestinationConfiguration(DeliveryDestinationConfigurationT&& value) {
138 m_deliveryDestinationConfigurationHasBeenSet = true;
139 m_deliveryDestinationConfiguration = std::forward<DeliveryDestinationConfigurationT>(value);
140 }
141 template <typename DeliveryDestinationConfigurationT = DeliveryDestinationConfiguration>
142 DeliveryDestination& WithDeliveryDestinationConfiguration(DeliveryDestinationConfigurationT&& value) {
143 SetDeliveryDestinationConfiguration(std::forward<DeliveryDestinationConfigurationT>(value));
144 return *this;
145 }
147
149
152 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
153 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
154 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
155 void SetTags(TagsT&& value) {
156 m_tagsHasBeenSet = true;
157 m_tags = std::forward<TagsT>(value);
158 }
159 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
161 SetTags(std::forward<TagsT>(value));
162 return *this;
163 }
164 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
165 DeliveryDestination& AddTags(TagsKeyT&& key, TagsValueT&& value) {
166 m_tagsHasBeenSet = true;
167 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
168 return *this;
169 }
171 private:
172 Aws::String m_name;
173
174 Aws::String m_arn;
175
177
178 OutputFormat m_outputFormat{OutputFormat::NOT_SET};
179
180 DeliveryDestinationConfiguration m_deliveryDestinationConfiguration;
181
183 bool m_nameHasBeenSet = false;
184 bool m_arnHasBeenSet = false;
185 bool m_deliveryDestinationTypeHasBeenSet = false;
186 bool m_outputFormatHasBeenSet = false;
187 bool m_deliveryDestinationConfigurationHasBeenSet = false;
188 bool m_tagsHasBeenSet = false;
189};
190
191} // namespace Model
192} // namespace CloudWatchLogs
193} // namespace Aws
void SetDeliveryDestinationConfiguration(DeliveryDestinationConfigurationT &&value)
DeliveryDestination & WithName(NameT &&value)
AWS_CLOUDWATCHLOGS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_CLOUDWATCHLOGS_API DeliveryDestination & operator=(Aws::Utils::Json::JsonView jsonValue)
const DeliveryDestinationConfiguration & GetDeliveryDestinationConfiguration() const
AWS_CLOUDWATCHLOGS_API DeliveryDestination()=default
DeliveryDestination & WithDeliveryDestinationType(DeliveryDestinationType value)
DeliveryDestination & WithArn(ArnT &&value)
DeliveryDestination & AddTags(TagsKeyT &&key, TagsValueT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
void SetDeliveryDestinationType(DeliveryDestinationType value)
DeliveryDestinationType GetDeliveryDestinationType() const
DeliveryDestination & WithOutputFormat(OutputFormat value)
AWS_CLOUDWATCHLOGS_API DeliveryDestination(Aws::Utils::Json::JsonView jsonValue)
DeliveryDestination & WithTags(TagsT &&value)
DeliveryDestination & WithDeliveryDestinationConfiguration(DeliveryDestinationConfigurationT &&value)
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
Aws::Utils::Json::JsonValue JsonValue