AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
InternalAccessAnalysisRuleCriteria.h
1
6#pragma once
7#include <aws/accessanalyzer/AccessAnalyzer_EXPORTS.h>
8#include <aws/accessanalyzer/model/ResourceType.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace AccessAnalyzer {
22namespace Model {
23
31 public:
32 AWS_ACCESSANALYZER_API InternalAccessAnalysisRuleCriteria() = default;
35 AWS_ACCESSANALYZER_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
43 inline const Aws::Vector<Aws::String>& GetAccountIds() const { return m_accountIds; }
44 inline bool AccountIdsHasBeenSet() const { return m_accountIdsHasBeenSet; }
45 template <typename AccountIdsT = Aws::Vector<Aws::String>>
46 void SetAccountIds(AccountIdsT&& value) {
47 m_accountIdsHasBeenSet = true;
48 m_accountIds = std::forward<AccountIdsT>(value);
49 }
50 template <typename AccountIdsT = Aws::Vector<Aws::String>>
52 SetAccountIds(std::forward<AccountIdsT>(value));
53 return *this;
54 }
55 template <typename AccountIdsT = Aws::String>
57 m_accountIdsHasBeenSet = true;
58 m_accountIds.emplace_back(std::forward<AccountIdsT>(value));
59 return *this;
60 }
62
64
75 inline const Aws::Vector<ResourceType>& GetResourceTypes() const { return m_resourceTypes; }
76 inline bool ResourceTypesHasBeenSet() const { return m_resourceTypesHasBeenSet; }
77 template <typename ResourceTypesT = Aws::Vector<ResourceType>>
78 void SetResourceTypes(ResourceTypesT&& value) {
79 m_resourceTypesHasBeenSet = true;
80 m_resourceTypes = std::forward<ResourceTypesT>(value);
81 }
82 template <typename ResourceTypesT = Aws::Vector<ResourceType>>
84 SetResourceTypes(std::forward<ResourceTypesT>(value));
85 return *this;
86 }
88 m_resourceTypesHasBeenSet = true;
89 m_resourceTypes.push_back(value);
90 return *this;
91 }
93
95
100 inline const Aws::Vector<Aws::String>& GetResourceArns() const { return m_resourceArns; }
101 inline bool ResourceArnsHasBeenSet() const { return m_resourceArnsHasBeenSet; }
102 template <typename ResourceArnsT = Aws::Vector<Aws::String>>
103 void SetResourceArns(ResourceArnsT&& value) {
104 m_resourceArnsHasBeenSet = true;
105 m_resourceArns = std::forward<ResourceArnsT>(value);
106 }
107 template <typename ResourceArnsT = Aws::Vector<Aws::String>>
109 SetResourceArns(std::forward<ResourceArnsT>(value));
110 return *this;
111 }
112 template <typename ResourceArnsT = Aws::String>
114 m_resourceArnsHasBeenSet = true;
115 m_resourceArns.emplace_back(std::forward<ResourceArnsT>(value));
116 return *this;
117 }
119 private:
120 Aws::Vector<Aws::String> m_accountIds;
121
122 Aws::Vector<ResourceType> m_resourceTypes;
123
124 Aws::Vector<Aws::String> m_resourceArns;
125 bool m_accountIdsHasBeenSet = false;
126 bool m_resourceTypesHasBeenSet = false;
127 bool m_resourceArnsHasBeenSet = false;
128};
129
130} // namespace Model
131} // namespace AccessAnalyzer
132} // namespace Aws
InternalAccessAnalysisRuleCriteria & AddResourceArns(ResourceArnsT &&value)
InternalAccessAnalysisRuleCriteria & AddAccountIds(AccountIdsT &&value)
AWS_ACCESSANALYZER_API InternalAccessAnalysisRuleCriteria & operator=(Aws::Utils::Json::JsonView jsonValue)
InternalAccessAnalysisRuleCriteria & WithResourceTypes(ResourceTypesT &&value)
AWS_ACCESSANALYZER_API Aws::Utils::Json::JsonValue Jsonize() const
InternalAccessAnalysisRuleCriteria & WithAccountIds(AccountIdsT &&value)
InternalAccessAnalysisRuleCriteria & AddResourceTypes(ResourceType value)
AWS_ACCESSANALYZER_API InternalAccessAnalysisRuleCriteria(Aws::Utils::Json::JsonView jsonValue)
InternalAccessAnalysisRuleCriteria & WithResourceArns(ResourceArnsT &&value)
AWS_ACCESSANALYZER_API InternalAccessAnalysisRuleCriteria()=default
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue