AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
MetricPolicy.h
1
6#pragma once
7#include <aws/mediastore/MediaStore_EXPORTS.h>
8#include <aws/mediastore/model/ContainerLevelMetrics.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/mediastore/model/MetricPolicyRule.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 MediaStore
24{
25namespace Model
26{
27
41 {
42 public:
43 AWS_MEDIASTORE_API MetricPolicy() = default;
44 AWS_MEDIASTORE_API MetricPolicy(Aws::Utils::Json::JsonView jsonValue);
45 AWS_MEDIASTORE_API MetricPolicy& operator=(Aws::Utils::Json::JsonView jsonValue);
46 AWS_MEDIASTORE_API Aws::Utils::Json::JsonValue Jsonize() const;
47
48
50
53 inline ContainerLevelMetrics GetContainerLevelMetrics() const { return m_containerLevelMetrics; }
54 inline bool ContainerLevelMetricsHasBeenSet() const { return m_containerLevelMetricsHasBeenSet; }
55 inline void SetContainerLevelMetrics(ContainerLevelMetrics value) { m_containerLevelMetricsHasBeenSet = true; m_containerLevelMetrics = value; }
58
60
68 inline const Aws::Vector<MetricPolicyRule>& GetMetricPolicyRules() const { return m_metricPolicyRules; }
69 inline bool MetricPolicyRulesHasBeenSet() const { return m_metricPolicyRulesHasBeenSet; }
70 template<typename MetricPolicyRulesT = Aws::Vector<MetricPolicyRule>>
71 void SetMetricPolicyRules(MetricPolicyRulesT&& value) { m_metricPolicyRulesHasBeenSet = true; m_metricPolicyRules = std::forward<MetricPolicyRulesT>(value); }
72 template<typename MetricPolicyRulesT = Aws::Vector<MetricPolicyRule>>
73 MetricPolicy& WithMetricPolicyRules(MetricPolicyRulesT&& value) { SetMetricPolicyRules(std::forward<MetricPolicyRulesT>(value)); return *this;}
74 template<typename MetricPolicyRulesT = MetricPolicyRule>
75 MetricPolicy& AddMetricPolicyRules(MetricPolicyRulesT&& value) { m_metricPolicyRulesHasBeenSet = true; m_metricPolicyRules.emplace_back(std::forward<MetricPolicyRulesT>(value)); return *this; }
77 private:
78
80 bool m_containerLevelMetricsHasBeenSet = false;
81
82 Aws::Vector<MetricPolicyRule> m_metricPolicyRules;
83 bool m_metricPolicyRulesHasBeenSet = false;
84 };
85
86} // namespace Model
87} // namespace MediaStore
88} // namespace Aws
AWS_MEDIASTORE_API MetricPolicy()=default
AWS_MEDIASTORE_API Aws::Utils::Json::JsonValue Jsonize() const
ContainerLevelMetrics GetContainerLevelMetrics() const
void SetContainerLevelMetrics(ContainerLevelMetrics value)
AWS_MEDIASTORE_API MetricPolicy(Aws::Utils::Json::JsonView jsonValue)
MetricPolicy & WithMetricPolicyRules(MetricPolicyRulesT &&value)
void SetMetricPolicyRules(MetricPolicyRulesT &&value)
const Aws::Vector< MetricPolicyRule > & GetMetricPolicyRules() const
MetricPolicy & AddMetricPolicyRules(MetricPolicyRulesT &&value)
MetricPolicy & WithContainerLevelMetrics(ContainerLevelMetrics value)
AWS_MEDIASTORE_API MetricPolicy & operator=(Aws::Utils::Json::JsonView jsonValue)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue