AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
LogConfiguration.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/core/utils/memory/stl/AWSVector.h>
10#include <aws/ecs/ECS_EXPORTS.h>
11#include <aws/ecs/model/LogDriver.h>
12#include <aws/ecs/model/Secret.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace ECS {
24namespace Model {
25
60 public:
61 AWS_ECS_API LogConfiguration() = default;
65
67
88 inline LogDriver GetLogDriver() const { return m_logDriver; }
89 inline bool LogDriverHasBeenSet() const { return m_logDriverHasBeenSet; }
90 inline void SetLogDriver(LogDriver value) {
91 m_logDriverHasBeenSet = true;
92 m_logDriver = value;
93 }
95 SetLogDriver(value);
96 return *this;
97 }
99
101
228 inline const Aws::Map<Aws::String, Aws::String>& GetOptions() const { return m_options; }
229 inline bool OptionsHasBeenSet() const { return m_optionsHasBeenSet; }
230 template <typename OptionsT = Aws::Map<Aws::String, Aws::String>>
231 void SetOptions(OptionsT&& value) {
232 m_optionsHasBeenSet = true;
233 m_options = std::forward<OptionsT>(value);
234 }
235 template <typename OptionsT = Aws::Map<Aws::String, Aws::String>>
236 LogConfiguration& WithOptions(OptionsT&& value) {
237 SetOptions(std::forward<OptionsT>(value));
238 return *this;
239 }
240 template <typename OptionsKeyT = Aws::String, typename OptionsValueT = Aws::String>
241 LogConfiguration& AddOptions(OptionsKeyT&& key, OptionsValueT&& value) {
242 m_optionsHasBeenSet = true;
243 m_options.emplace(std::forward<OptionsKeyT>(key), std::forward<OptionsValueT>(value));
244 return *this;
245 }
247
249
255 inline const Aws::Vector<Secret>& GetSecretOptions() const { return m_secretOptions; }
256 inline bool SecretOptionsHasBeenSet() const { return m_secretOptionsHasBeenSet; }
257 template <typename SecretOptionsT = Aws::Vector<Secret>>
258 void SetSecretOptions(SecretOptionsT&& value) {
259 m_secretOptionsHasBeenSet = true;
260 m_secretOptions = std::forward<SecretOptionsT>(value);
261 }
262 template <typename SecretOptionsT = Aws::Vector<Secret>>
263 LogConfiguration& WithSecretOptions(SecretOptionsT&& value) {
264 SetSecretOptions(std::forward<SecretOptionsT>(value));
265 return *this;
266 }
267 template <typename SecretOptionsT = Secret>
268 LogConfiguration& AddSecretOptions(SecretOptionsT&& value) {
269 m_secretOptionsHasBeenSet = true;
270 m_secretOptions.emplace_back(std::forward<SecretOptionsT>(value));
271 return *this;
272 }
274 private:
275 LogDriver m_logDriver{LogDriver::NOT_SET};
276
278
279 Aws::Vector<Secret> m_secretOptions;
280 bool m_logDriverHasBeenSet = false;
281 bool m_optionsHasBeenSet = false;
282 bool m_secretOptionsHasBeenSet = false;
283};
284
285} // namespace Model
286} // namespace ECS
287} // namespace Aws
LogConfiguration & AddOptions(OptionsKeyT &&key, OptionsValueT &&value)
AWS_ECS_API LogConfiguration()=default
AWS_ECS_API LogConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_ECS_API LogConfiguration(Aws::Utils::Json::JsonView jsonValue)
LogConfiguration & WithSecretOptions(SecretOptionsT &&value)
const Aws::Vector< Secret > & GetSecretOptions() const
LogConfiguration & AddSecretOptions(SecretOptionsT &&value)
AWS_ECS_API Aws::Utils::Json::JsonValue Jsonize() const
LogConfiguration & WithLogDriver(LogDriver value)
LogConfiguration & WithOptions(OptionsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetOptions() const
void SetSecretOptions(SecretOptionsT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue