AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
RuleGroupSource.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/securityhub/SecurityHub_EXPORTS.h>
10#include <aws/securityhub/model/RuleGroupSourceListDetails.h>
11#include <aws/securityhub/model/RuleGroupSourceStatefulRulesDetails.h>
12#include <aws/securityhub/model/RuleGroupSourceStatelessRulesAndCustomActionsDetails.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace SecurityHub {
24namespace Model {
25
32 public:
33 AWS_SECURITYHUB_API RuleGroupSource() = default;
34 AWS_SECURITYHUB_API RuleGroupSource(Aws::Utils::Json::JsonView jsonValue);
35 AWS_SECURITYHUB_API RuleGroupSource& operator=(Aws::Utils::Json::JsonView jsonValue);
36 AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
43 inline const RuleGroupSourceListDetails& GetRulesSourceList() const { return m_rulesSourceList; }
44 inline bool RulesSourceListHasBeenSet() const { return m_rulesSourceListHasBeenSet; }
45 template <typename RulesSourceListT = RuleGroupSourceListDetails>
46 void SetRulesSourceList(RulesSourceListT&& value) {
47 m_rulesSourceListHasBeenSet = true;
48 m_rulesSourceList = std::forward<RulesSourceListT>(value);
49 }
50 template <typename RulesSourceListT = RuleGroupSourceListDetails>
51 RuleGroupSource& WithRulesSourceList(RulesSourceListT&& value) {
52 SetRulesSourceList(std::forward<RulesSourceListT>(value));
53 return *this;
54 }
56
58
62 inline const Aws::String& GetRulesString() const { return m_rulesString; }
63 inline bool RulesStringHasBeenSet() const { return m_rulesStringHasBeenSet; }
64 template <typename RulesStringT = Aws::String>
65 void SetRulesString(RulesStringT&& value) {
66 m_rulesStringHasBeenSet = true;
67 m_rulesString = std::forward<RulesStringT>(value);
68 }
69 template <typename RulesStringT = Aws::String>
70 RuleGroupSource& WithRulesString(RulesStringT&& value) {
71 SetRulesString(std::forward<RulesStringT>(value));
72 return *this;
73 }
75
77
80 inline const Aws::Vector<RuleGroupSourceStatefulRulesDetails>& GetStatefulRules() const { return m_statefulRules; }
81 inline bool StatefulRulesHasBeenSet() const { return m_statefulRulesHasBeenSet; }
82 template <typename StatefulRulesT = Aws::Vector<RuleGroupSourceStatefulRulesDetails>>
83 void SetStatefulRules(StatefulRulesT&& value) {
84 m_statefulRulesHasBeenSet = true;
85 m_statefulRules = std::forward<StatefulRulesT>(value);
86 }
87 template <typename StatefulRulesT = Aws::Vector<RuleGroupSourceStatefulRulesDetails>>
88 RuleGroupSource& WithStatefulRules(StatefulRulesT&& value) {
89 SetStatefulRules(std::forward<StatefulRulesT>(value));
90 return *this;
91 }
92 template <typename StatefulRulesT = RuleGroupSourceStatefulRulesDetails>
93 RuleGroupSource& AddStatefulRules(StatefulRulesT&& value) {
94 m_statefulRulesHasBeenSet = true;
95 m_statefulRules.emplace_back(std::forward<StatefulRulesT>(value));
96 return *this;
97 }
99
101
105 return m_statelessRulesAndCustomActions;
106 }
107 inline bool StatelessRulesAndCustomActionsHasBeenSet() const { return m_statelessRulesAndCustomActionsHasBeenSet; }
108 template <typename StatelessRulesAndCustomActionsT = RuleGroupSourceStatelessRulesAndCustomActionsDetails>
109 void SetStatelessRulesAndCustomActions(StatelessRulesAndCustomActionsT&& value) {
110 m_statelessRulesAndCustomActionsHasBeenSet = true;
111 m_statelessRulesAndCustomActions = std::forward<StatelessRulesAndCustomActionsT>(value);
112 }
113 template <typename StatelessRulesAndCustomActionsT = RuleGroupSourceStatelessRulesAndCustomActionsDetails>
114 RuleGroupSource& WithStatelessRulesAndCustomActions(StatelessRulesAndCustomActionsT&& value) {
115 SetStatelessRulesAndCustomActions(std::forward<StatelessRulesAndCustomActionsT>(value));
116 return *this;
117 }
119 private:
120 RuleGroupSourceListDetails m_rulesSourceList;
121
122 Aws::String m_rulesString;
123
125
126 RuleGroupSourceStatelessRulesAndCustomActionsDetails m_statelessRulesAndCustomActions;
127 bool m_rulesSourceListHasBeenSet = false;
128 bool m_rulesStringHasBeenSet = false;
129 bool m_statefulRulesHasBeenSet = false;
130 bool m_statelessRulesAndCustomActionsHasBeenSet = false;
131};
132
133} // namespace Model
134} // namespace SecurityHub
135} // namespace Aws
RuleGroupSource & WithStatefulRules(StatefulRulesT &&value)
const RuleGroupSourceStatelessRulesAndCustomActionsDetails & GetStatelessRulesAndCustomActions() const
void SetRulesString(RulesStringT &&value)
void SetStatelessRulesAndCustomActions(StatelessRulesAndCustomActionsT &&value)
const Aws::String & GetRulesString() const
RuleGroupSource & WithStatelessRulesAndCustomActions(StatelessRulesAndCustomActionsT &&value)
AWS_SECURITYHUB_API RuleGroupSource(Aws::Utils::Json::JsonView jsonValue)
RuleGroupSource & WithRulesString(RulesStringT &&value)
AWS_SECURITYHUB_API RuleGroupSource & operator=(Aws::Utils::Json::JsonView jsonValue)
RuleGroupSource & AddStatefulRules(StatefulRulesT &&value)
const Aws::Vector< RuleGroupSourceStatefulRulesDetails > & GetStatefulRules() const
RuleGroupSource & WithRulesSourceList(RulesSourceListT &&value)
AWS_SECURITYHUB_API RuleGroupSource()=default
void SetRulesSourceList(RulesSourceListT &&value)
void SetStatefulRules(StatefulRulesT &&value)
const RuleGroupSourceListDetails & GetRulesSourceList() const
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue