AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
S3LoggingConfiguration.h
1
6#pragma once
7#include <aws/athena/Athena_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9
10#include <utility>
11
12namespace Aws {
13namespace Utils {
14namespace Json {
15class JsonValue;
16class JsonView;
17} // namespace Json
18} // namespace Utils
19namespace Athena {
20namespace Model {
21
29 public:
30 AWS_ATHENA_API S3LoggingConfiguration() = default;
33 AWS_ATHENA_API Aws::Utils::Json::JsonValue Jsonize() const;
34
36
39 inline bool GetEnabled() const { return m_enabled; }
40 inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; }
41 inline void SetEnabled(bool value) {
42 m_enabledHasBeenSet = true;
43 m_enabled = value;
44 }
45 inline S3LoggingConfiguration& WithEnabled(bool value) {
46 SetEnabled(value);
47 return *this;
48 }
50
52
56 inline const Aws::String& GetKmsKey() const { return m_kmsKey; }
57 inline bool KmsKeyHasBeenSet() const { return m_kmsKeyHasBeenSet; }
58 template <typename KmsKeyT = Aws::String>
59 void SetKmsKey(KmsKeyT&& value) {
60 m_kmsKeyHasBeenSet = true;
61 m_kmsKey = std::forward<KmsKeyT>(value);
62 }
63 template <typename KmsKeyT = Aws::String>
65 SetKmsKey(std::forward<KmsKeyT>(value));
66 return *this;
67 }
69
71
74 inline const Aws::String& GetLogLocation() const { return m_logLocation; }
75 inline bool LogLocationHasBeenSet() const { return m_logLocationHasBeenSet; }
76 template <typename LogLocationT = Aws::String>
77 void SetLogLocation(LogLocationT&& value) {
78 m_logLocationHasBeenSet = true;
79 m_logLocation = std::forward<LogLocationT>(value);
80 }
81 template <typename LogLocationT = Aws::String>
82 S3LoggingConfiguration& WithLogLocation(LogLocationT&& value) {
83 SetLogLocation(std::forward<LogLocationT>(value));
84 return *this;
85 }
87 private:
88 bool m_enabled{false};
89
90 Aws::String m_kmsKey;
91
92 Aws::String m_logLocation;
93 bool m_enabledHasBeenSet = false;
94 bool m_kmsKeyHasBeenSet = false;
95 bool m_logLocationHasBeenSet = false;
96};
97
98} // namespace Model
99} // namespace Athena
100} // namespace Aws
S3LoggingConfiguration & WithLogLocation(LogLocationT &&value)
S3LoggingConfiguration & WithKmsKey(KmsKeyT &&value)
AWS_ATHENA_API S3LoggingConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_ATHENA_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_ATHENA_API S3LoggingConfiguration(Aws::Utils::Json::JsonView jsonValue)
S3LoggingConfiguration & WithEnabled(bool value)
AWS_ATHENA_API S3LoggingConfiguration()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue