AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
AttackVolume.h
1
6#pragma once
7#include <aws/shield/Shield_EXPORTS.h>
8#include <aws/shield/model/AttackVolumeStatistics.h>
9
10#include <utility>
11
12namespace Aws {
13namespace Utils {
14namespace Json {
15class JsonValue;
16class JsonView;
17} // namespace Json
18} // namespace Utils
19namespace Shield {
20namespace Model {
21
31 public:
32 AWS_SHIELD_API AttackVolume() = default;
33 AWS_SHIELD_API AttackVolume(Aws::Utils::Json::JsonView jsonValue);
35 AWS_SHIELD_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
42 inline const AttackVolumeStatistics& GetBitsPerSecond() const { return m_bitsPerSecond; }
43 inline bool BitsPerSecondHasBeenSet() const { return m_bitsPerSecondHasBeenSet; }
44 template <typename BitsPerSecondT = AttackVolumeStatistics>
45 void SetBitsPerSecond(BitsPerSecondT&& value) {
46 m_bitsPerSecondHasBeenSet = true;
47 m_bitsPerSecond = std::forward<BitsPerSecondT>(value);
48 }
49 template <typename BitsPerSecondT = AttackVolumeStatistics>
50 AttackVolume& WithBitsPerSecond(BitsPerSecondT&& value) {
51 SetBitsPerSecond(std::forward<BitsPerSecondT>(value));
52 return *this;
53 }
55
57
61 inline const AttackVolumeStatistics& GetPacketsPerSecond() const { return m_packetsPerSecond; }
62 inline bool PacketsPerSecondHasBeenSet() const { return m_packetsPerSecondHasBeenSet; }
63 template <typename PacketsPerSecondT = AttackVolumeStatistics>
64 void SetPacketsPerSecond(PacketsPerSecondT&& value) {
65 m_packetsPerSecondHasBeenSet = true;
66 m_packetsPerSecond = std::forward<PacketsPerSecondT>(value);
67 }
68 template <typename PacketsPerSecondT = AttackVolumeStatistics>
69 AttackVolume& WithPacketsPerSecond(PacketsPerSecondT&& value) {
70 SetPacketsPerSecond(std::forward<PacketsPerSecondT>(value));
71 return *this;
72 }
74
76
81 inline const AttackVolumeStatistics& GetRequestsPerSecond() const { return m_requestsPerSecond; }
82 inline bool RequestsPerSecondHasBeenSet() const { return m_requestsPerSecondHasBeenSet; }
83 template <typename RequestsPerSecondT = AttackVolumeStatistics>
84 void SetRequestsPerSecond(RequestsPerSecondT&& value) {
85 m_requestsPerSecondHasBeenSet = true;
86 m_requestsPerSecond = std::forward<RequestsPerSecondT>(value);
87 }
88 template <typename RequestsPerSecondT = AttackVolumeStatistics>
89 AttackVolume& WithRequestsPerSecond(RequestsPerSecondT&& value) {
90 SetRequestsPerSecond(std::forward<RequestsPerSecondT>(value));
91 return *this;
92 }
94 private:
95 AttackVolumeStatistics m_bitsPerSecond;
96
97 AttackVolumeStatistics m_packetsPerSecond;
98
99 AttackVolumeStatistics m_requestsPerSecond;
100 bool m_bitsPerSecondHasBeenSet = false;
101 bool m_packetsPerSecondHasBeenSet = false;
102 bool m_requestsPerSecondHasBeenSet = false;
103};
104
105} // namespace Model
106} // namespace Shield
107} // namespace Aws
AWS_SHIELD_API AttackVolume(Aws::Utils::Json::JsonView jsonValue)
void SetPacketsPerSecond(PacketsPerSecondT &&value)
AttackVolume & WithBitsPerSecond(BitsPerSecondT &&value)
void SetBitsPerSecond(BitsPerSecondT &&value)
const AttackVolumeStatistics & GetPacketsPerSecond() const
AWS_SHIELD_API AttackVolume & operator=(Aws::Utils::Json::JsonView jsonValue)
AttackVolume & WithRequestsPerSecond(RequestsPerSecondT &&value)
AWS_SHIELD_API AttackVolume()=default
AWS_SHIELD_API Aws::Utils::Json::JsonValue Jsonize() const
const AttackVolumeStatistics & GetBitsPerSecond() const
void SetRequestsPerSecond(RequestsPerSecondT &&value)
AttackVolume & WithPacketsPerSecond(PacketsPerSecondT &&value)
const AttackVolumeStatistics & GetRequestsPerSecond() const
Aws::Utils::Json::JsonValue JsonValue