AWS SDK for C++

AWS SDK for C++ Version 1.11.685

Loading...
Searching...
No Matches
OverallVolume.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/pinpoint-email/PinpointEmail_EXPORTS.h>
9#include <aws/pinpoint-email/model/DomainIspPlacement.h>
10#include <aws/pinpoint-email/model/VolumeStatistics.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace PinpointEmail {
22namespace Model {
23
31 public:
32 AWS_PINPOINTEMAIL_API OverallVolume() = default;
33 AWS_PINPOINTEMAIL_API OverallVolume(Aws::Utils::Json::JsonView jsonValue);
34 AWS_PINPOINTEMAIL_API OverallVolume& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_PINPOINTEMAIL_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
42 inline const VolumeStatistics& GetVolumeStatistics() const { return m_volumeStatistics; }
43 inline bool VolumeStatisticsHasBeenSet() const { return m_volumeStatisticsHasBeenSet; }
44 template <typename VolumeStatisticsT = VolumeStatistics>
45 void SetVolumeStatistics(VolumeStatisticsT&& value) {
46 m_volumeStatisticsHasBeenSet = true;
47 m_volumeStatistics = std::forward<VolumeStatisticsT>(value);
48 }
49 template <typename VolumeStatisticsT = VolumeStatistics>
50 OverallVolume& WithVolumeStatistics(VolumeStatisticsT&& value) {
51 SetVolumeStatistics(std::forward<VolumeStatisticsT>(value));
52 return *this;
53 }
55
57
61 inline double GetReadRatePercent() const { return m_readRatePercent; }
62 inline bool ReadRatePercentHasBeenSet() const { return m_readRatePercentHasBeenSet; }
63 inline void SetReadRatePercent(double value) {
64 m_readRatePercentHasBeenSet = true;
65 m_readRatePercent = value;
66 }
67 inline OverallVolume& WithReadRatePercent(double value) {
68 SetReadRatePercent(value);
69 return *this;
70 }
72
74
78 inline const Aws::Vector<DomainIspPlacement>& GetDomainIspPlacements() const { return m_domainIspPlacements; }
79 inline bool DomainIspPlacementsHasBeenSet() const { return m_domainIspPlacementsHasBeenSet; }
80 template <typename DomainIspPlacementsT = Aws::Vector<DomainIspPlacement>>
81 void SetDomainIspPlacements(DomainIspPlacementsT&& value) {
82 m_domainIspPlacementsHasBeenSet = true;
83 m_domainIspPlacements = std::forward<DomainIspPlacementsT>(value);
84 }
85 template <typename DomainIspPlacementsT = Aws::Vector<DomainIspPlacement>>
86 OverallVolume& WithDomainIspPlacements(DomainIspPlacementsT&& value) {
87 SetDomainIspPlacements(std::forward<DomainIspPlacementsT>(value));
88 return *this;
89 }
90 template <typename DomainIspPlacementsT = DomainIspPlacement>
91 OverallVolume& AddDomainIspPlacements(DomainIspPlacementsT&& value) {
92 m_domainIspPlacementsHasBeenSet = true;
93 m_domainIspPlacements.emplace_back(std::forward<DomainIspPlacementsT>(value));
94 return *this;
95 }
97 private:
98 VolumeStatistics m_volumeStatistics;
99 bool m_volumeStatisticsHasBeenSet = false;
100
101 double m_readRatePercent{0.0};
102 bool m_readRatePercentHasBeenSet = false;
103
104 Aws::Vector<DomainIspPlacement> m_domainIspPlacements;
105 bool m_domainIspPlacementsHasBeenSet = false;
106};
107
108} // namespace Model
109} // namespace PinpointEmail
110} // namespace Aws
AWS_PINPOINTEMAIL_API OverallVolume()=default
OverallVolume & AddDomainIspPlacements(DomainIspPlacementsT &&value)
OverallVolume & WithDomainIspPlacements(DomainIspPlacementsT &&value)
AWS_PINPOINTEMAIL_API Aws::Utils::Json::JsonValue Jsonize() const
OverallVolume & WithVolumeStatistics(VolumeStatisticsT &&value)
AWS_PINPOINTEMAIL_API OverallVolume & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< DomainIspPlacement > & GetDomainIspPlacements() const
void SetVolumeStatistics(VolumeStatisticsT &&value)
const VolumeStatistics & GetVolumeStatistics() const
OverallVolume & WithReadRatePercent(double value)
AWS_PINPOINTEMAIL_API OverallVolume(Aws::Utils::Json::JsonView jsonValue)
void SetDomainIspPlacements(DomainIspPlacementsT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue