AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
MetricSource.h
1
6#pragma once
7#include <aws/lookoutmetrics/LookoutMetrics_EXPORTS.h>
8#include <aws/lookoutmetrics/model/S3SourceConfig.h>
9#include <aws/lookoutmetrics/model/AppFlowConfig.h>
10#include <aws/lookoutmetrics/model/CloudWatchConfig.h>
11#include <aws/lookoutmetrics/model/RDSSourceConfig.h>
12#include <aws/lookoutmetrics/model/RedshiftSourceConfig.h>
13#include <aws/lookoutmetrics/model/AthenaSourceConfig.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace LookoutMetrics
27{
28namespace Model
29{
30
38 {
39 public:
40 AWS_LOOKOUTMETRICS_API MetricSource() = default;
41 AWS_LOOKOUTMETRICS_API MetricSource(Aws::Utils::Json::JsonView jsonValue);
42 AWS_LOOKOUTMETRICS_API MetricSource& operator=(Aws::Utils::Json::JsonView jsonValue);
43 AWS_LOOKOUTMETRICS_API Aws::Utils::Json::JsonValue Jsonize() const;
44
45
47
48 inline const S3SourceConfig& GetS3SourceConfig() const { return m_s3SourceConfig; }
49 inline bool S3SourceConfigHasBeenSet() const { return m_s3SourceConfigHasBeenSet; }
50 template<typename S3SourceConfigT = S3SourceConfig>
51 void SetS3SourceConfig(S3SourceConfigT&& value) { m_s3SourceConfigHasBeenSet = true; m_s3SourceConfig = std::forward<S3SourceConfigT>(value); }
52 template<typename S3SourceConfigT = S3SourceConfig>
53 MetricSource& WithS3SourceConfig(S3SourceConfigT&& value) { SetS3SourceConfig(std::forward<S3SourceConfigT>(value)); return *this;}
55
57
60 inline const AppFlowConfig& GetAppFlowConfig() const { return m_appFlowConfig; }
61 inline bool AppFlowConfigHasBeenSet() const { return m_appFlowConfigHasBeenSet; }
62 template<typename AppFlowConfigT = AppFlowConfig>
63 void SetAppFlowConfig(AppFlowConfigT&& value) { m_appFlowConfigHasBeenSet = true; m_appFlowConfig = std::forward<AppFlowConfigT>(value); }
64 template<typename AppFlowConfigT = AppFlowConfig>
65 MetricSource& WithAppFlowConfig(AppFlowConfigT&& value) { SetAppFlowConfig(std::forward<AppFlowConfigT>(value)); return *this;}
67
69
72 inline const CloudWatchConfig& GetCloudWatchConfig() const { return m_cloudWatchConfig; }
73 inline bool CloudWatchConfigHasBeenSet() const { return m_cloudWatchConfigHasBeenSet; }
74 template<typename CloudWatchConfigT = CloudWatchConfig>
75 void SetCloudWatchConfig(CloudWatchConfigT&& value) { m_cloudWatchConfigHasBeenSet = true; m_cloudWatchConfig = std::forward<CloudWatchConfigT>(value); }
76 template<typename CloudWatchConfigT = CloudWatchConfig>
77 MetricSource& WithCloudWatchConfig(CloudWatchConfigT&& value) { SetCloudWatchConfig(std::forward<CloudWatchConfigT>(value)); return *this;}
79
81
84 inline const RDSSourceConfig& GetRDSSourceConfig() const { return m_rDSSourceConfig; }
85 inline bool RDSSourceConfigHasBeenSet() const { return m_rDSSourceConfigHasBeenSet; }
86 template<typename RDSSourceConfigT = RDSSourceConfig>
87 void SetRDSSourceConfig(RDSSourceConfigT&& value) { m_rDSSourceConfigHasBeenSet = true; m_rDSSourceConfig = std::forward<RDSSourceConfigT>(value); }
88 template<typename RDSSourceConfigT = RDSSourceConfig>
89 MetricSource& WithRDSSourceConfig(RDSSourceConfigT&& value) { SetRDSSourceConfig(std::forward<RDSSourceConfigT>(value)); return *this;}
91
93
96 inline const RedshiftSourceConfig& GetRedshiftSourceConfig() const { return m_redshiftSourceConfig; }
97 inline bool RedshiftSourceConfigHasBeenSet() const { return m_redshiftSourceConfigHasBeenSet; }
98 template<typename RedshiftSourceConfigT = RedshiftSourceConfig>
99 void SetRedshiftSourceConfig(RedshiftSourceConfigT&& value) { m_redshiftSourceConfigHasBeenSet = true; m_redshiftSourceConfig = std::forward<RedshiftSourceConfigT>(value); }
100 template<typename RedshiftSourceConfigT = RedshiftSourceConfig>
101 MetricSource& WithRedshiftSourceConfig(RedshiftSourceConfigT&& value) { SetRedshiftSourceConfig(std::forward<RedshiftSourceConfigT>(value)); return *this;}
103
105
108 inline const AthenaSourceConfig& GetAthenaSourceConfig() const { return m_athenaSourceConfig; }
109 inline bool AthenaSourceConfigHasBeenSet() const { return m_athenaSourceConfigHasBeenSet; }
110 template<typename AthenaSourceConfigT = AthenaSourceConfig>
111 void SetAthenaSourceConfig(AthenaSourceConfigT&& value) { m_athenaSourceConfigHasBeenSet = true; m_athenaSourceConfig = std::forward<AthenaSourceConfigT>(value); }
112 template<typename AthenaSourceConfigT = AthenaSourceConfig>
113 MetricSource& WithAthenaSourceConfig(AthenaSourceConfigT&& value) { SetAthenaSourceConfig(std::forward<AthenaSourceConfigT>(value)); return *this;}
115 private:
116
117 S3SourceConfig m_s3SourceConfig;
118 bool m_s3SourceConfigHasBeenSet = false;
119
120 AppFlowConfig m_appFlowConfig;
121 bool m_appFlowConfigHasBeenSet = false;
122
123 CloudWatchConfig m_cloudWatchConfig;
124 bool m_cloudWatchConfigHasBeenSet = false;
125
126 RDSSourceConfig m_rDSSourceConfig;
127 bool m_rDSSourceConfigHasBeenSet = false;
128
129 RedshiftSourceConfig m_redshiftSourceConfig;
130 bool m_redshiftSourceConfigHasBeenSet = false;
131
132 AthenaSourceConfig m_athenaSourceConfig;
133 bool m_athenaSourceConfigHasBeenSet = false;
134 };
135
136} // namespace Model
137} // namespace LookoutMetrics
138} // namespace Aws
MetricSource & WithCloudWatchConfig(CloudWatchConfigT &&value)
MetricSource & WithAppFlowConfig(AppFlowConfigT &&value)
void SetAthenaSourceConfig(AthenaSourceConfigT &&value)
AWS_LOOKOUTMETRICS_API MetricSource()=default
AWS_LOOKOUTMETRICS_API MetricSource & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetRedshiftSourceConfig(RedshiftSourceConfigT &&value)
const CloudWatchConfig & GetCloudWatchConfig() const
AWS_LOOKOUTMETRICS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetAppFlowConfig(AppFlowConfigT &&value)
MetricSource & WithS3SourceConfig(S3SourceConfigT &&value)
const AppFlowConfig & GetAppFlowConfig() const
void SetS3SourceConfig(S3SourceConfigT &&value)
MetricSource & WithRedshiftSourceConfig(RedshiftSourceConfigT &&value)
MetricSource & WithAthenaSourceConfig(AthenaSourceConfigT &&value)
const RDSSourceConfig & GetRDSSourceConfig() const
void SetCloudWatchConfig(CloudWatchConfigT &&value)
const RedshiftSourceConfig & GetRedshiftSourceConfig() const
const S3SourceConfig & GetS3SourceConfig() const
const AthenaSourceConfig & GetAthenaSourceConfig() const
AWS_LOOKOUTMETRICS_API MetricSource(Aws::Utils::Json::JsonView jsonValue)
MetricSource & WithRDSSourceConfig(RDSSourceConfigT &&value)
void SetRDSSourceConfig(RDSSourceConfigT &&value)
Aws::Utils::Json::JsonValue JsonValue