AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
DestinationConfiguration.h
1
6#pragma once
7#include <aws/ivschat/Ivschat_EXPORTS.h>
8#include <aws/ivschat/model/S3DestinationConfiguration.h>
9#include <aws/ivschat/model/CloudWatchLogsDestinationConfiguration.h>
10#include <aws/ivschat/model/FirehoseDestinationConfiguration.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace ivschat
24{
25namespace Model
26{
27
37 {
38 public:
39 AWS_IVSCHAT_API DestinationConfiguration() = default;
42 AWS_IVSCHAT_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
50 inline const S3DestinationConfiguration& GetS3() const { return m_s3; }
51 inline bool S3HasBeenSet() const { return m_s3HasBeenSet; }
52 template<typename S3T = S3DestinationConfiguration>
53 void SetS3(S3T&& value) { m_s3HasBeenSet = true; m_s3 = std::forward<S3T>(value); }
54 template<typename S3T = S3DestinationConfiguration>
55 DestinationConfiguration& WithS3(S3T&& value) { SetS3(std::forward<S3T>(value)); return *this;}
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) { m_cloudWatchLogsHasBeenSet = true; m_cloudWatchLogs = std::forward<CloudWatchLogsT>(value); }
67 template<typename CloudWatchLogsT = CloudWatchLogsDestinationConfiguration>
68 DestinationConfiguration& WithCloudWatchLogs(CloudWatchLogsT&& value) { SetCloudWatchLogs(std::forward<CloudWatchLogsT>(value)); return *this;}
70
72
76 inline const FirehoseDestinationConfiguration& GetFirehose() const { return m_firehose; }
77 inline bool FirehoseHasBeenSet() const { return m_firehoseHasBeenSet; }
78 template<typename FirehoseT = FirehoseDestinationConfiguration>
79 void SetFirehose(FirehoseT&& value) { m_firehoseHasBeenSet = true; m_firehose = std::forward<FirehoseT>(value); }
80 template<typename FirehoseT = FirehoseDestinationConfiguration>
81 DestinationConfiguration& WithFirehose(FirehoseT&& value) { SetFirehose(std::forward<FirehoseT>(value)); return *this;}
83 private:
84
86 bool m_s3HasBeenSet = false;
87
89 bool m_cloudWatchLogsHasBeenSet = false;
90
92 bool m_firehoseHasBeenSet = false;
93 };
94
95} // namespace Model
96} // namespace ivschat
97} // 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