AWS SDK for C++

AWS SDK for C++ Version 1.11.854

Loading...
Searching...
No Matches
BandwidthRateLimitInterval.h
1
6#pragma once
7#include <aws/backup-gateway/BackupGateway_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/crt/cbor/Cbor.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Cbor {
16class CborValue;
17} // namespace Cbor
18} // namespace Utils
19namespace BackupGateway {
20namespace Model {
21
32 public:
33 AWS_BACKUPGATEWAY_API BandwidthRateLimitInterval() = default;
34 AWS_BACKUPGATEWAY_API BandwidthRateLimitInterval(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
35 AWS_BACKUPGATEWAY_API BandwidthRateLimitInterval& operator=(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
36 AWS_BACKUPGATEWAY_API void CborEncode(Aws::Crt::Cbor::CborEncoder& encoder) const;
37
39
44 inline long long GetAverageUploadRateLimitInBitsPerSec() const { return m_averageUploadRateLimitInBitsPerSec; }
45 inline bool AverageUploadRateLimitInBitsPerSecHasBeenSet() const { return m_averageUploadRateLimitInBitsPerSecHasBeenSet; }
46 inline void SetAverageUploadRateLimitInBitsPerSec(long long value) {
47 m_averageUploadRateLimitInBitsPerSecHasBeenSet = true;
48 m_averageUploadRateLimitInBitsPerSec = value;
49 }
52 return *this;
53 }
55
57
60 inline int64_t GetStartHourOfDay() const { return m_startHourOfDay; }
61 inline bool StartHourOfDayHasBeenSet() const { return m_startHourOfDayHasBeenSet; }
62 inline void SetStartHourOfDay(int64_t value) {
63 m_startHourOfDayHasBeenSet = true;
64 m_startHourOfDay = value;
65 }
67 SetStartHourOfDay(value);
68 return *this;
69 }
71
73
76 inline int64_t GetEndHourOfDay() const { return m_endHourOfDay; }
77 inline bool EndHourOfDayHasBeenSet() const { return m_endHourOfDayHasBeenSet; }
78 inline void SetEndHourOfDay(int64_t value) {
79 m_endHourOfDayHasBeenSet = true;
80 m_endHourOfDay = value;
81 }
83 SetEndHourOfDay(value);
84 return *this;
85 }
87
89
94 inline int64_t GetStartMinuteOfHour() const { return m_startMinuteOfHour; }
95 inline bool StartMinuteOfHourHasBeenSet() const { return m_startMinuteOfHourHasBeenSet; }
96 inline void SetStartMinuteOfHour(int64_t value) {
97 m_startMinuteOfHourHasBeenSet = true;
98 m_startMinuteOfHour = value;
99 }
102 return *this;
103 }
105
107
113 inline int64_t GetEndMinuteOfHour() const { return m_endMinuteOfHour; }
114 inline bool EndMinuteOfHourHasBeenSet() const { return m_endMinuteOfHourHasBeenSet; }
115 inline void SetEndMinuteOfHour(int64_t value) {
116 m_endMinuteOfHourHasBeenSet = true;
117 m_endMinuteOfHour = value;
118 }
120 SetEndMinuteOfHour(value);
121 return *this;
122 }
124
126
131 inline const Aws::Vector<int64_t>& GetDaysOfWeek() const { return m_daysOfWeek; }
132 inline bool DaysOfWeekHasBeenSet() const { return m_daysOfWeekHasBeenSet; }
133 template <typename DaysOfWeekT = Aws::Vector<int64_t>>
134 void SetDaysOfWeek(DaysOfWeekT&& value) {
135 m_daysOfWeekHasBeenSet = true;
136 m_daysOfWeek = std::forward<DaysOfWeekT>(value);
137 }
138 template <typename DaysOfWeekT = Aws::Vector<int64_t>>
140 SetDaysOfWeek(std::forward<DaysOfWeekT>(value));
141 return *this;
142 }
144 m_daysOfWeekHasBeenSet = true;
145 m_daysOfWeek.push_back(value);
146 return *this;
147 }
149 private:
150 long long m_averageUploadRateLimitInBitsPerSec{0};
151
152 int64_t m_startHourOfDay{0};
153
154 int64_t m_endHourOfDay{0};
155
156 int64_t m_startMinuteOfHour{0};
157
158 int64_t m_endMinuteOfHour{0};
159
160 Aws::Vector<int64_t> m_daysOfWeek;
161 bool m_averageUploadRateLimitInBitsPerSecHasBeenSet = false;
162 bool m_startHourOfDayHasBeenSet = false;
163 bool m_endHourOfDayHasBeenSet = false;
164 bool m_startMinuteOfHourHasBeenSet = false;
165 bool m_endMinuteOfHourHasBeenSet = false;
166 bool m_daysOfWeekHasBeenSet = false;
167};
168
169} // namespace Model
170} // namespace BackupGateway
171} // namespace Aws
BandwidthRateLimitInterval & WithStartMinuteOfHour(int64_t value)
AWS_BACKUPGATEWAY_API void CborEncode(Aws::Crt::Cbor::CborEncoder &encoder) const
BandwidthRateLimitInterval & WithDaysOfWeek(DaysOfWeekT &&value)
AWS_BACKUPGATEWAY_API BandwidthRateLimitInterval(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
BandwidthRateLimitInterval & AddDaysOfWeek(int64_t value)
BandwidthRateLimitInterval & WithStartHourOfDay(int64_t value)
BandwidthRateLimitInterval & WithAverageUploadRateLimitInBitsPerSec(long long value)
BandwidthRateLimitInterval & WithEndMinuteOfHour(int64_t value)
AWS_BACKUPGATEWAY_API BandwidthRateLimitInterval()=default
AWS_BACKUPGATEWAY_API BandwidthRateLimitInterval & operator=(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
BandwidthRateLimitInterval & WithEndHourOfDay(int64_t value)
std::vector< T, Aws::Allocator< T > > Vector