AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
AttackDetail.h
1
6#pragma once
7#include <aws/shield/Shield_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/core/utils/DateTime.h>
11#include <aws/shield/model/SubResourceSummary.h>
12#include <aws/shield/model/SummarizedCounter.h>
13#include <aws/shield/model/AttackProperty.h>
14#include <aws/shield/model/Mitigation.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Json
22{
23 class JsonValue;
24 class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace Shield
28{
29namespace Model
30{
31
38 {
39 public:
40 AWS_SHIELD_API AttackDetail() = default;
41 AWS_SHIELD_API AttackDetail(Aws::Utils::Json::JsonView jsonValue);
43 AWS_SHIELD_API Aws::Utils::Json::JsonValue Jsonize() const;
44
45
47
50 inline const Aws::String& GetAttackId() const { return m_attackId; }
51 inline bool AttackIdHasBeenSet() const { return m_attackIdHasBeenSet; }
52 template<typename AttackIdT = Aws::String>
53 void SetAttackId(AttackIdT&& value) { m_attackIdHasBeenSet = true; m_attackId = std::forward<AttackIdT>(value); }
54 template<typename AttackIdT = Aws::String>
55 AttackDetail& WithAttackId(AttackIdT&& value) { SetAttackId(std::forward<AttackIdT>(value)); return *this;}
57
59
62 inline const Aws::String& GetResourceArn() const { return m_resourceArn; }
63 inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; }
64 template<typename ResourceArnT = Aws::String>
65 void SetResourceArn(ResourceArnT&& value) { m_resourceArnHasBeenSet = true; m_resourceArn = std::forward<ResourceArnT>(value); }
66 template<typename ResourceArnT = Aws::String>
67 AttackDetail& WithResourceArn(ResourceArnT&& value) { SetResourceArn(std::forward<ResourceArnT>(value)); return *this;}
69
71
75 inline const Aws::Vector<SubResourceSummary>& GetSubResources() const { return m_subResources; }
76 inline bool SubResourcesHasBeenSet() const { return m_subResourcesHasBeenSet; }
77 template<typename SubResourcesT = Aws::Vector<SubResourceSummary>>
78 void SetSubResources(SubResourcesT&& value) { m_subResourcesHasBeenSet = true; m_subResources = std::forward<SubResourcesT>(value); }
79 template<typename SubResourcesT = Aws::Vector<SubResourceSummary>>
80 AttackDetail& WithSubResources(SubResourcesT&& value) { SetSubResources(std::forward<SubResourcesT>(value)); return *this;}
81 template<typename SubResourcesT = SubResourceSummary>
82 AttackDetail& AddSubResources(SubResourcesT&& value) { m_subResourcesHasBeenSet = true; m_subResources.emplace_back(std::forward<SubResourcesT>(value)); return *this; }
84
86
89 inline const Aws::Utils::DateTime& GetStartTime() const { return m_startTime; }
90 inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; }
91 template<typename StartTimeT = Aws::Utils::DateTime>
92 void SetStartTime(StartTimeT&& value) { m_startTimeHasBeenSet = true; m_startTime = std::forward<StartTimeT>(value); }
93 template<typename StartTimeT = Aws::Utils::DateTime>
94 AttackDetail& WithStartTime(StartTimeT&& value) { SetStartTime(std::forward<StartTimeT>(value)); return *this;}
96
98
101 inline const Aws::Utils::DateTime& GetEndTime() const { return m_endTime; }
102 inline bool EndTimeHasBeenSet() const { return m_endTimeHasBeenSet; }
103 template<typename EndTimeT = Aws::Utils::DateTime>
104 void SetEndTime(EndTimeT&& value) { m_endTimeHasBeenSet = true; m_endTime = std::forward<EndTimeT>(value); }
105 template<typename EndTimeT = Aws::Utils::DateTime>
106 AttackDetail& WithEndTime(EndTimeT&& value) { SetEndTime(std::forward<EndTimeT>(value)); return *this;}
108
110
113 inline const Aws::Vector<SummarizedCounter>& GetAttackCounters() const { return m_attackCounters; }
114 inline bool AttackCountersHasBeenSet() const { return m_attackCountersHasBeenSet; }
115 template<typename AttackCountersT = Aws::Vector<SummarizedCounter>>
116 void SetAttackCounters(AttackCountersT&& value) { m_attackCountersHasBeenSet = true; m_attackCounters = std::forward<AttackCountersT>(value); }
117 template<typename AttackCountersT = Aws::Vector<SummarizedCounter>>
118 AttackDetail& WithAttackCounters(AttackCountersT&& value) { SetAttackCounters(std::forward<AttackCountersT>(value)); return *this;}
119 template<typename AttackCountersT = SummarizedCounter>
120 AttackDetail& AddAttackCounters(AttackCountersT&& value) { m_attackCountersHasBeenSet = true; m_attackCounters.emplace_back(std::forward<AttackCountersT>(value)); return *this; }
122
124
131 inline const Aws::Vector<AttackProperty>& GetAttackProperties() const { return m_attackProperties; }
132 inline bool AttackPropertiesHasBeenSet() const { return m_attackPropertiesHasBeenSet; }
133 template<typename AttackPropertiesT = Aws::Vector<AttackProperty>>
134 void SetAttackProperties(AttackPropertiesT&& value) { m_attackPropertiesHasBeenSet = true; m_attackProperties = std::forward<AttackPropertiesT>(value); }
135 template<typename AttackPropertiesT = Aws::Vector<AttackProperty>>
136 AttackDetail& WithAttackProperties(AttackPropertiesT&& value) { SetAttackProperties(std::forward<AttackPropertiesT>(value)); return *this;}
137 template<typename AttackPropertiesT = AttackProperty>
138 AttackDetail& AddAttackProperties(AttackPropertiesT&& value) { m_attackPropertiesHasBeenSet = true; m_attackProperties.emplace_back(std::forward<AttackPropertiesT>(value)); return *this; }
140
142
145 inline const Aws::Vector<Mitigation>& GetMitigations() const { return m_mitigations; }
146 inline bool MitigationsHasBeenSet() const { return m_mitigationsHasBeenSet; }
147 template<typename MitigationsT = Aws::Vector<Mitigation>>
148 void SetMitigations(MitigationsT&& value) { m_mitigationsHasBeenSet = true; m_mitigations = std::forward<MitigationsT>(value); }
149 template<typename MitigationsT = Aws::Vector<Mitigation>>
150 AttackDetail& WithMitigations(MitigationsT&& value) { SetMitigations(std::forward<MitigationsT>(value)); return *this;}
151 template<typename MitigationsT = Mitigation>
152 AttackDetail& AddMitigations(MitigationsT&& value) { m_mitigationsHasBeenSet = true; m_mitigations.emplace_back(std::forward<MitigationsT>(value)); return *this; }
154 private:
155
156 Aws::String m_attackId;
157 bool m_attackIdHasBeenSet = false;
158
159 Aws::String m_resourceArn;
160 bool m_resourceArnHasBeenSet = false;
161
162 Aws::Vector<SubResourceSummary> m_subResources;
163 bool m_subResourcesHasBeenSet = false;
164
165 Aws::Utils::DateTime m_startTime{};
166 bool m_startTimeHasBeenSet = false;
167
168 Aws::Utils::DateTime m_endTime{};
169 bool m_endTimeHasBeenSet = false;
170
171 Aws::Vector<SummarizedCounter> m_attackCounters;
172 bool m_attackCountersHasBeenSet = false;
173
174 Aws::Vector<AttackProperty> m_attackProperties;
175 bool m_attackPropertiesHasBeenSet = false;
176
177 Aws::Vector<Mitigation> m_mitigations;
178 bool m_mitigationsHasBeenSet = false;
179 };
180
181} // namespace Model
182} // namespace Shield
183} // namespace Aws
void SetResourceArn(ResourceArnT &&value)
void SetAttackCounters(AttackCountersT &&value)
AttackDetail & WithAttackCounters(AttackCountersT &&value)
const Aws::String & GetAttackId() const
AttackDetail & WithSubResources(SubResourcesT &&value)
AttackDetail & AddAttackCounters(AttackCountersT &&value)
void SetEndTime(EndTimeT &&value)
AWS_SHIELD_API AttackDetail(Aws::Utils::Json::JsonView jsonValue)
void SetAttackProperties(AttackPropertiesT &&value)
const Aws::Utils::DateTime & GetStartTime() const
AttackDetail & WithAttackId(AttackIdT &&value)
void SetSubResources(SubResourcesT &&value)
void SetStartTime(StartTimeT &&value)
const Aws::Vector< SummarizedCounter > & GetAttackCounters() const
AWS_SHIELD_API AttackDetail()=default
const Aws::Vector< Mitigation > & GetMitigations() const
AttackDetail & WithResourceArn(ResourceArnT &&value)
AttackDetail & WithAttackProperties(AttackPropertiesT &&value)
AWS_SHIELD_API Aws::Utils::Json::JsonValue Jsonize() const
void SetMitigations(MitigationsT &&value)
const Aws::String & GetResourceArn() const
AttackDetail & WithEndTime(EndTimeT &&value)
AWS_SHIELD_API AttackDetail & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Utils::DateTime & GetEndTime() const
AttackDetail & AddMitigations(MitigationsT &&value)
AttackDetail & WithStartTime(StartTimeT &&value)
void SetAttackId(AttackIdT &&value)
const Aws::Vector< SubResourceSummary > & GetSubResources() const
const Aws::Vector< AttackProperty > & GetAttackProperties() const
AttackDetail & AddSubResources(SubResourcesT &&value)
AttackDetail & AddAttackProperties(AttackPropertiesT &&value)
AttackDetail & WithMitigations(MitigationsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue