AWS SDK for C++

AWS SDK for C++ Version 1.11.694

Loading...
Searching...
No Matches
DestinationConfiguration.h
1
6#pragma once
7#include <aws/ivschat/Ivschat_EXPORTS.h>
8#include <aws/ivschat/model/CloudWatchLogsDestinationConfiguration.h>
9#include <aws/ivschat/model/FirehoseDestinationConfiguration.h>
10#include <aws/ivschat/model/S3DestinationConfiguration.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace ivschat {
22namespace Model {
23
33 public:
34 AWS_IVSCHAT_API DestinationConfiguration() = default;
37 AWS_IVSCHAT_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
44 inline const S3DestinationConfiguration& GetS3() const { return m_s3; }
45 inline bool S3HasBeenSet() const { return m_s3HasBeenSet; }
46 template <typename S3T = S3DestinationConfiguration>
47 void SetS3(S3T&& value) {
48 m_s3HasBeenSet = true;
49 m_s3 = std::forward<S3T>(value);
50 }
51 template <typename S3T = S3DestinationConfiguration>
53 SetS3(std::forward<S3T>(value));
54 return *this;
55 }
57
59
63 inline const CloudWatchLogsDestinationConfiguration& GetCloudWatchLogs() const { return m_cloudWatchLogs; }
64 inline bool CloudWatchLogsHasBeenSet() const { return m_cloudWatchLogsHasBeenSet; }
65 template <typename CloudWatchLogsT = CloudWatchLogsDestinationConfiguration>
66 void SetCloudWatchLogs(CloudWatchLogsT&& value) {
67 m_cloudWatchLogsHasBeenSet = true;
68 m_cloudWatchLogs = std::forward<CloudWatchLogsT>(value);
69 }
70 template <typename CloudWatchLogsT = CloudWatchLogsDestinationConfiguration>
71 DestinationConfiguration& WithCloudWatchLogs(CloudWatchLogsT&& value) {
72 SetCloudWatchLogs(std::forward<CloudWatchLogsT>(value));
73 return *this;
74 }
76
78
82 inline const FirehoseDestinationConfiguration& GetFirehose() const { return m_firehose; }
83 inline bool FirehoseHasBeenSet() const { return m_firehoseHasBeenSet; }
84 template <typename FirehoseT = FirehoseDestinationConfiguration>
85 void SetFirehose(FirehoseT&& value) {
86 m_firehoseHasBeenSet = true;
87 m_firehose = std::forward<FirehoseT>(value);
88 }
89 template <typename FirehoseT = FirehoseDestinationConfiguration>
91 SetFirehose(std::forward<FirehoseT>(value));
92 return *this;
93 }
95 private:
97 bool m_s3HasBeenSet = false;
98
100 bool m_cloudWatchLogsHasBeenSet = false;
101
103 bool m_firehoseHasBeenSet = false;
104};
105
106} // namespace Model
107} // namespace ivschat
108} // namespace Aws
AWS_IVSCHAT_API DestinationConfiguration(Aws::Utils::Json::JsonView jsonValue)
const FirehoseDestinationConfiguration & GetFirehose() const
AWS_IVSCHAT_API DestinationConfiguration()=default
DestinationConfiguration & WithFirehose(FirehoseT &&value)
DestinationConfiguration & WithS3(S3T &&value)
DestinationConfiguration & WithCloudWatchLogs(CloudWatchLogsT &&value)
AWS_IVSCHAT_API DestinationConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_IVSCHAT_API Aws::Utils::Json::JsonValue Jsonize() const
const S3DestinationConfiguration & GetS3() const
const CloudWatchLogsDestinationConfiguration & GetCloudWatchLogs() const
Aws::Utils::Json::JsonValue JsonValue