AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
VerifiedAccessLogOptions.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/ec2/EC2_EXPORTS.h>
10#include <aws/ec2/model/VerifiedAccessLogCloudWatchLogsDestinationOptions.h>
11#include <aws/ec2/model/VerifiedAccessLogKinesisDataFirehoseDestinationOptions.h>
12#include <aws/ec2/model/VerifiedAccessLogS3DestinationOptions.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Xml {
19class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace EC2 {
23namespace Model {
24
31 public:
32 AWS_EC2_API VerifiedAccessLogOptions() = default;
35
36 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
37 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
38
40
43 inline const VerifiedAccessLogS3DestinationOptions& GetS3() const { return m_s3; }
44 inline bool S3HasBeenSet() const { return m_s3HasBeenSet; }
45 template <typename S3T = VerifiedAccessLogS3DestinationOptions>
46 void SetS3(S3T&& value) {
47 m_s3HasBeenSet = true;
48 m_s3 = std::forward<S3T>(value);
49 }
50 template <typename S3T = VerifiedAccessLogS3DestinationOptions>
52 SetS3(std::forward<S3T>(value));
53 return *this;
54 }
56
58
61 inline const VerifiedAccessLogCloudWatchLogsDestinationOptions& GetCloudWatchLogs() const { return m_cloudWatchLogs; }
62 inline bool CloudWatchLogsHasBeenSet() const { return m_cloudWatchLogsHasBeenSet; }
63 template <typename CloudWatchLogsT = VerifiedAccessLogCloudWatchLogsDestinationOptions>
64 void SetCloudWatchLogs(CloudWatchLogsT&& value) {
65 m_cloudWatchLogsHasBeenSet = true;
66 m_cloudWatchLogs = std::forward<CloudWatchLogsT>(value);
67 }
68 template <typename CloudWatchLogsT = VerifiedAccessLogCloudWatchLogsDestinationOptions>
69 VerifiedAccessLogOptions& WithCloudWatchLogs(CloudWatchLogsT&& value) {
70 SetCloudWatchLogs(std::forward<CloudWatchLogsT>(value));
71 return *this;
72 }
74
76
79 inline const VerifiedAccessLogKinesisDataFirehoseDestinationOptions& GetKinesisDataFirehose() const { return m_kinesisDataFirehose; }
80 inline bool KinesisDataFirehoseHasBeenSet() const { return m_kinesisDataFirehoseHasBeenSet; }
81 template <typename KinesisDataFirehoseT = VerifiedAccessLogKinesisDataFirehoseDestinationOptions>
82 void SetKinesisDataFirehose(KinesisDataFirehoseT&& value) {
83 m_kinesisDataFirehoseHasBeenSet = true;
84 m_kinesisDataFirehose = std::forward<KinesisDataFirehoseT>(value);
85 }
86 template <typename KinesisDataFirehoseT = VerifiedAccessLogKinesisDataFirehoseDestinationOptions>
87 VerifiedAccessLogOptions& WithKinesisDataFirehose(KinesisDataFirehoseT&& value) {
88 SetKinesisDataFirehose(std::forward<KinesisDataFirehoseT>(value));
89 return *this;
90 }
92
94
98 inline const Aws::String& GetLogVersion() const { return m_logVersion; }
99 inline bool LogVersionHasBeenSet() const { return m_logVersionHasBeenSet; }
100 template <typename LogVersionT = Aws::String>
101 void SetLogVersion(LogVersionT&& value) {
102 m_logVersionHasBeenSet = true;
103 m_logVersion = std::forward<LogVersionT>(value);
104 }
105 template <typename LogVersionT = Aws::String>
107 SetLogVersion(std::forward<LogVersionT>(value));
108 return *this;
109 }
111
113
117 inline bool GetIncludeTrustContext() const { return m_includeTrustContext; }
118 inline bool IncludeTrustContextHasBeenSet() const { return m_includeTrustContextHasBeenSet; }
119 inline void SetIncludeTrustContext(bool value) {
120 m_includeTrustContextHasBeenSet = true;
121 m_includeTrustContext = value;
122 }
125 return *this;
126 }
128 private:
130
132
134
135 Aws::String m_logVersion;
136
137 bool m_includeTrustContext{false};
138 bool m_s3HasBeenSet = false;
139 bool m_cloudWatchLogsHasBeenSet = false;
140 bool m_kinesisDataFirehoseHasBeenSet = false;
141 bool m_logVersionHasBeenSet = false;
142 bool m_includeTrustContextHasBeenSet = false;
143};
144
145} // namespace Model
146} // namespace EC2
147} // namespace Aws
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
AWS_EC2_API VerifiedAccessLogOptions & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API VerifiedAccessLogOptions()=default
VerifiedAccessLogOptions & WithS3(S3T &&value)
AWS_EC2_API VerifiedAccessLogOptions(const Aws::Utils::Xml::XmlNode &xmlNode)
VerifiedAccessLogOptions & WithLogVersion(LogVersionT &&value)
const VerifiedAccessLogS3DestinationOptions & GetS3() const
const VerifiedAccessLogKinesisDataFirehoseDestinationOptions & GetKinesisDataFirehose() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
VerifiedAccessLogOptions & WithCloudWatchLogs(CloudWatchLogsT &&value)
const VerifiedAccessLogCloudWatchLogsDestinationOptions & GetCloudWatchLogs() const
VerifiedAccessLogOptions & WithIncludeTrustContext(bool value)
void SetKinesisDataFirehose(KinesisDataFirehoseT &&value)
VerifiedAccessLogOptions & WithKinesisDataFirehose(KinesisDataFirehoseT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream