AWS SDK for C++

AWS SDK for C++ Version 1.11.644

Loading...
Searching...
No Matches
SamplingTargetDocument.h
1
6#pragma once
7#include <aws/xray/XRay_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/xray/model/SamplingBoost.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 XRay
24{
25namespace Model
26{
27
38 {
39 public:
40 AWS_XRAY_API SamplingTargetDocument() = default;
44
45
47
50 inline const Aws::String& GetRuleName() const { return m_ruleName; }
51 inline bool RuleNameHasBeenSet() const { return m_ruleNameHasBeenSet; }
52 template<typename RuleNameT = Aws::String>
53 void SetRuleName(RuleNameT&& value) { m_ruleNameHasBeenSet = true; m_ruleName = std::forward<RuleNameT>(value); }
54 template<typename RuleNameT = Aws::String>
55 SamplingTargetDocument& WithRuleName(RuleNameT&& value) { SetRuleName(std::forward<RuleNameT>(value)); return *this;}
57
59
63 inline double GetFixedRate() const { return m_fixedRate; }
64 inline bool FixedRateHasBeenSet() const { return m_fixedRateHasBeenSet; }
65 inline void SetFixedRate(double value) { m_fixedRateHasBeenSet = true; m_fixedRate = value; }
66 inline SamplingTargetDocument& WithFixedRate(double value) { SetFixedRate(value); return *this;}
68
70
73 inline int GetReservoirQuota() const { return m_reservoirQuota; }
74 inline bool ReservoirQuotaHasBeenSet() const { return m_reservoirQuotaHasBeenSet; }
75 inline void SetReservoirQuota(int value) { m_reservoirQuotaHasBeenSet = true; m_reservoirQuota = value; }
76 inline SamplingTargetDocument& WithReservoirQuota(int value) { SetReservoirQuota(value); return *this;}
78
80
83 inline const Aws::Utils::DateTime& GetReservoirQuotaTTL() const { return m_reservoirQuotaTTL; }
84 inline bool ReservoirQuotaTTLHasBeenSet() const { return m_reservoirQuotaTTLHasBeenSet; }
85 template<typename ReservoirQuotaTTLT = Aws::Utils::DateTime>
86 void SetReservoirQuotaTTL(ReservoirQuotaTTLT&& value) { m_reservoirQuotaTTLHasBeenSet = true; m_reservoirQuotaTTL = std::forward<ReservoirQuotaTTLT>(value); }
87 template<typename ReservoirQuotaTTLT = Aws::Utils::DateTime>
88 SamplingTargetDocument& WithReservoirQuotaTTL(ReservoirQuotaTTLT&& value) { SetReservoirQuotaTTL(std::forward<ReservoirQuotaTTLT>(value)); return *this;}
90
92
96 inline int GetInterval() const { return m_interval; }
97 inline bool IntervalHasBeenSet() const { return m_intervalHasBeenSet; }
98 inline void SetInterval(int value) { m_intervalHasBeenSet = true; m_interval = value; }
99 inline SamplingTargetDocument& WithInterval(int value) { SetInterval(value); return *this;}
101
103
106 inline const SamplingBoost& GetSamplingBoost() const { return m_samplingBoost; }
107 inline bool SamplingBoostHasBeenSet() const { return m_samplingBoostHasBeenSet; }
108 template<typename SamplingBoostT = SamplingBoost>
109 void SetSamplingBoost(SamplingBoostT&& value) { m_samplingBoostHasBeenSet = true; m_samplingBoost = std::forward<SamplingBoostT>(value); }
110 template<typename SamplingBoostT = SamplingBoost>
111 SamplingTargetDocument& WithSamplingBoost(SamplingBoostT&& value) { SetSamplingBoost(std::forward<SamplingBoostT>(value)); return *this;}
113 private:
114
115 Aws::String m_ruleName;
116 bool m_ruleNameHasBeenSet = false;
117
118 double m_fixedRate{0.0};
119 bool m_fixedRateHasBeenSet = false;
120
121 int m_reservoirQuota{0};
122 bool m_reservoirQuotaHasBeenSet = false;
123
124 Aws::Utils::DateTime m_reservoirQuotaTTL{};
125 bool m_reservoirQuotaTTLHasBeenSet = false;
126
127 int m_interval{0};
128 bool m_intervalHasBeenSet = false;
129
130 SamplingBoost m_samplingBoost;
131 bool m_samplingBoostHasBeenSet = false;
132 };
133
134} // namespace Model
135} // namespace XRay
136} // namespace Aws
AWS_XRAY_API SamplingTargetDocument & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_XRAY_API SamplingTargetDocument(Aws::Utils::Json::JsonView jsonValue)
SamplingTargetDocument & WithFixedRate(double value)
SamplingTargetDocument & WithReservoirQuota(int value)
const Aws::Utils::DateTime & GetReservoirQuotaTTL() const
AWS_XRAY_API SamplingTargetDocument()=default
SamplingTargetDocument & WithInterval(int value)
AWS_XRAY_API Aws::Utils::Json::JsonValue Jsonize() const
SamplingTargetDocument & WithReservoirQuotaTTL(ReservoirQuotaTTLT &&value)
SamplingTargetDocument & WithSamplingBoost(SamplingBoostT &&value)
void SetReservoirQuotaTTL(ReservoirQuotaTTLT &&value)
SamplingTargetDocument & WithRuleName(RuleNameT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue