AWS SDK for C++

AWS SDK for C++ Version 1.11.903

Loading...
Searching...
No Matches
ThreatModel.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/securityagent/SecurityAgent_EXPORTS.h>
11#include <aws/securityagent/model/Assets.h>
12#include <aws/securityagent/model/CloudWatchLog.h>
13#include <aws/securityagent/model/DocumentInfo.h>
14#include <aws/securityagent/model/ReportDestination.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace SecurityAgent {
26namespace Model {
27
36 public:
37 AWS_SECURITYAGENT_API ThreatModel() = default;
38 AWS_SECURITYAGENT_API ThreatModel(Aws::Utils::Json::JsonView jsonValue);
39 AWS_SECURITYAGENT_API ThreatModel& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_SECURITYAGENT_API Aws::Utils::Json::JsonValue Jsonize() const;
41
43
46 inline const Aws::String& GetThreatModelId() const { return m_threatModelId; }
47 inline bool ThreatModelIdHasBeenSet() const { return m_threatModelIdHasBeenSet; }
48 template <typename ThreatModelIdT = Aws::String>
49 void SetThreatModelId(ThreatModelIdT&& value) {
50 m_threatModelIdHasBeenSet = true;
51 m_threatModelId = std::forward<ThreatModelIdT>(value);
52 }
53 template <typename ThreatModelIdT = Aws::String>
54 ThreatModel& WithThreatModelId(ThreatModelIdT&& value) {
55 SetThreatModelId(std::forward<ThreatModelIdT>(value));
56 return *this;
57 }
59
61
64 inline const Aws::String& GetAgentSpaceId() const { return m_agentSpaceId; }
65 inline bool AgentSpaceIdHasBeenSet() const { return m_agentSpaceIdHasBeenSet; }
66 template <typename AgentSpaceIdT = Aws::String>
67 void SetAgentSpaceId(AgentSpaceIdT&& value) {
68 m_agentSpaceIdHasBeenSet = true;
69 m_agentSpaceId = std::forward<AgentSpaceIdT>(value);
70 }
71 template <typename AgentSpaceIdT = Aws::String>
72 ThreatModel& WithAgentSpaceId(AgentSpaceIdT&& value) {
73 SetAgentSpaceId(std::forward<AgentSpaceIdT>(value));
74 return *this;
75 }
77
79
82 inline const Aws::String& GetTitle() const { return m_title; }
83 inline bool TitleHasBeenSet() const { return m_titleHasBeenSet; }
84 template <typename TitleT = Aws::String>
85 void SetTitle(TitleT&& value) {
86 m_titleHasBeenSet = true;
87 m_title = std::forward<TitleT>(value);
88 }
89 template <typename TitleT = Aws::String>
90 ThreatModel& WithTitle(TitleT&& value) {
91 SetTitle(std::forward<TitleT>(value));
92 return *this;
93 }
95
97
100 inline const Aws::String& GetDescription() const { return m_description; }
101 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
102 template <typename DescriptionT = Aws::String>
103 void SetDescription(DescriptionT&& value) {
104 m_descriptionHasBeenSet = true;
105 m_description = std::forward<DescriptionT>(value);
106 }
107 template <typename DescriptionT = Aws::String>
108 ThreatModel& WithDescription(DescriptionT&& value) {
109 SetDescription(std::forward<DescriptionT>(value));
110 return *this;
111 }
113
115
118 inline const Assets& GetAssets() const { return m_assets; }
119 inline bool AssetsHasBeenSet() const { return m_assetsHasBeenSet; }
120 template <typename AssetsT = Assets>
121 void SetAssets(AssetsT&& value) {
122 m_assetsHasBeenSet = true;
123 m_assets = std::forward<AssetsT>(value);
124 }
125 template <typename AssetsT = Assets>
126 ThreatModel& WithAssets(AssetsT&& value) {
127 SetAssets(std::forward<AssetsT>(value));
128 return *this;
129 }
131
133
136 inline const Aws::Vector<DocumentInfo>& GetScopeDocs() const { return m_scopeDocs; }
137 inline bool ScopeDocsHasBeenSet() const { return m_scopeDocsHasBeenSet; }
138 template <typename ScopeDocsT = Aws::Vector<DocumentInfo>>
139 void SetScopeDocs(ScopeDocsT&& value) {
140 m_scopeDocsHasBeenSet = true;
141 m_scopeDocs = std::forward<ScopeDocsT>(value);
142 }
143 template <typename ScopeDocsT = Aws::Vector<DocumentInfo>>
144 ThreatModel& WithScopeDocs(ScopeDocsT&& value) {
145 SetScopeDocs(std::forward<ScopeDocsT>(value));
146 return *this;
147 }
148 template <typename ScopeDocsT = DocumentInfo>
149 ThreatModel& AddScopeDocs(ScopeDocsT&& value) {
150 m_scopeDocsHasBeenSet = true;
151 m_scopeDocs.emplace_back(std::forward<ScopeDocsT>(value));
152 return *this;
153 }
155
157
160 inline const Aws::String& GetServiceRole() const { return m_serviceRole; }
161 inline bool ServiceRoleHasBeenSet() const { return m_serviceRoleHasBeenSet; }
162 template <typename ServiceRoleT = Aws::String>
163 void SetServiceRole(ServiceRoleT&& value) {
164 m_serviceRoleHasBeenSet = true;
165 m_serviceRole = std::forward<ServiceRoleT>(value);
166 }
167 template <typename ServiceRoleT = Aws::String>
168 ThreatModel& WithServiceRole(ServiceRoleT&& value) {
169 SetServiceRole(std::forward<ServiceRoleT>(value));
170 return *this;
171 }
173
175
178 inline const CloudWatchLog& GetLogConfig() const { return m_logConfig; }
179 inline bool LogConfigHasBeenSet() const { return m_logConfigHasBeenSet; }
180 template <typename LogConfigT = CloudWatchLog>
181 void SetLogConfig(LogConfigT&& value) {
182 m_logConfigHasBeenSet = true;
183 m_logConfig = std::forward<LogConfigT>(value);
184 }
185 template <typename LogConfigT = CloudWatchLog>
186 ThreatModel& WithLogConfig(LogConfigT&& value) {
187 SetLogConfig(std::forward<LogConfigT>(value));
188 return *this;
189 }
191
193
197 inline const ReportDestination& GetReportDestination() const { return m_reportDestination; }
198 inline bool ReportDestinationHasBeenSet() const { return m_reportDestinationHasBeenSet; }
199 template <typename ReportDestinationT = ReportDestination>
200 void SetReportDestination(ReportDestinationT&& value) {
201 m_reportDestinationHasBeenSet = true;
202 m_reportDestination = std::forward<ReportDestinationT>(value);
203 }
204 template <typename ReportDestinationT = ReportDestination>
205 ThreatModel& WithReportDestination(ReportDestinationT&& value) {
206 SetReportDestination(std::forward<ReportDestinationT>(value));
207 return *this;
208 }
210
212
215 inline const Aws::Utils::DateTime& GetCreatedAt() const { return m_createdAt; }
216 inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; }
217 template <typename CreatedAtT = Aws::Utils::DateTime>
218 void SetCreatedAt(CreatedAtT&& value) {
219 m_createdAtHasBeenSet = true;
220 m_createdAt = std::forward<CreatedAtT>(value);
221 }
222 template <typename CreatedAtT = Aws::Utils::DateTime>
223 ThreatModel& WithCreatedAt(CreatedAtT&& value) {
224 SetCreatedAt(std::forward<CreatedAtT>(value));
225 return *this;
226 }
228
230
233 inline const Aws::Utils::DateTime& GetUpdatedAt() const { return m_updatedAt; }
234 inline bool UpdatedAtHasBeenSet() const { return m_updatedAtHasBeenSet; }
235 template <typename UpdatedAtT = Aws::Utils::DateTime>
236 void SetUpdatedAt(UpdatedAtT&& value) {
237 m_updatedAtHasBeenSet = true;
238 m_updatedAt = std::forward<UpdatedAtT>(value);
239 }
240 template <typename UpdatedAtT = Aws::Utils::DateTime>
241 ThreatModel& WithUpdatedAt(UpdatedAtT&& value) {
242 SetUpdatedAt(std::forward<UpdatedAtT>(value));
243 return *this;
244 }
246 private:
247 Aws::String m_threatModelId;
248
249 Aws::String m_agentSpaceId;
250
251 Aws::String m_title;
252
253 Aws::String m_description;
254
255 Assets m_assets;
256
257 Aws::Vector<DocumentInfo> m_scopeDocs;
258
259 Aws::String m_serviceRole;
260
261 CloudWatchLog m_logConfig;
262
263 ReportDestination m_reportDestination;
264
265 Aws::Utils::DateTime m_createdAt{};
266
267 Aws::Utils::DateTime m_updatedAt{};
268 bool m_threatModelIdHasBeenSet = false;
269 bool m_agentSpaceIdHasBeenSet = false;
270 bool m_titleHasBeenSet = false;
271 bool m_descriptionHasBeenSet = false;
272 bool m_assetsHasBeenSet = false;
273 bool m_scopeDocsHasBeenSet = false;
274 bool m_serviceRoleHasBeenSet = false;
275 bool m_logConfigHasBeenSet = false;
276 bool m_reportDestinationHasBeenSet = false;
277 bool m_createdAtHasBeenSet = false;
278 bool m_updatedAtHasBeenSet = false;
279};
280
281} // namespace Model
282} // namespace SecurityAgent
283} // namespace Aws
const Aws::String & GetThreatModelId() const
Definition ThreatModel.h:46
ThreatModel & WithAssets(AssetsT &&value)
ThreatModel & AddScopeDocs(ScopeDocsT &&value)
const Aws::Vector< DocumentInfo > & GetScopeDocs() const
ThreatModel & WithAgentSpaceId(AgentSpaceIdT &&value)
Definition ThreatModel.h:72
void SetThreatModelId(ThreatModelIdT &&value)
Definition ThreatModel.h:49
ThreatModel & WithThreatModelId(ThreatModelIdT &&value)
Definition ThreatModel.h:54
ThreatModel & WithReportDestination(ReportDestinationT &&value)
ThreatModel & WithServiceRole(ServiceRoleT &&value)
AWS_SECURITYAGENT_API ThreatModel()=default
void SetServiceRole(ServiceRoleT &&value)
void SetAgentSpaceId(AgentSpaceIdT &&value)
Definition ThreatModel.h:67
ThreatModel & WithUpdatedAt(UpdatedAtT &&value)
AWS_SECURITYAGENT_API ThreatModel(Aws::Utils::Json::JsonView jsonValue)
void SetReportDestination(ReportDestinationT &&value)
const Aws::Utils::DateTime & GetUpdatedAt() const
const Aws::Utils::DateTime & GetCreatedAt() const
ThreatModel & WithDescription(DescriptionT &&value)
const Aws::String & GetDescription() const
ThreatModel & WithCreatedAt(CreatedAtT &&value)
void SetScopeDocs(ScopeDocsT &&value)
void SetLogConfig(LogConfigT &&value)
void SetDescription(DescriptionT &&value)
void SetUpdatedAt(UpdatedAtT &&value)
const CloudWatchLog & GetLogConfig() const
void SetCreatedAt(CreatedAtT &&value)
ThreatModel & WithTitle(TitleT &&value)
Definition ThreatModel.h:90
const ReportDestination & GetReportDestination() const
const Aws::String & GetTitle() const
Definition ThreatModel.h:82
AWS_SECURITYAGENT_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetAgentSpaceId() const
Definition ThreatModel.h:64
ThreatModel & WithScopeDocs(ScopeDocsT &&value)
const Aws::String & GetServiceRole() const
ThreatModel & WithLogConfig(LogConfigT &&value)
AWS_SECURITYAGENT_API ThreatModel & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue