AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
InlineArchiveRule.h
1
6#pragma once
7#include <aws/accessanalyzer/AccessAnalyzer_EXPORTS.h>
8#include <aws/accessanalyzer/model/Criterion.h>
9#include <aws/core/utils/memory/stl/AWSMap.h>
10#include <aws/core/utils/memory/stl/AWSString.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 InlineArchiveRule() = default;
33 AWS_ACCESSANALYZER_API InlineArchiveRule(Aws::Utils::Json::JsonView jsonValue);
34 AWS_ACCESSANALYZER_API InlineArchiveRule& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_ACCESSANALYZER_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline const Aws::String& GetRuleName() const { return m_ruleName; }
42 inline bool RuleNameHasBeenSet() const { return m_ruleNameHasBeenSet; }
43 template <typename RuleNameT = Aws::String>
44 void SetRuleName(RuleNameT&& value) {
45 m_ruleNameHasBeenSet = true;
46 m_ruleName = std::forward<RuleNameT>(value);
47 }
48 template <typename RuleNameT = Aws::String>
49 InlineArchiveRule& WithRuleName(RuleNameT&& value) {
50 SetRuleName(std::forward<RuleNameT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::Map<Aws::String, Criterion>& GetFilter() const { return m_filter; }
60 inline bool FilterHasBeenSet() const { return m_filterHasBeenSet; }
61 template <typename FilterT = Aws::Map<Aws::String, Criterion>>
62 void SetFilter(FilterT&& value) {
63 m_filterHasBeenSet = true;
64 m_filter = std::forward<FilterT>(value);
65 }
66 template <typename FilterT = Aws::Map<Aws::String, Criterion>>
67 InlineArchiveRule& WithFilter(FilterT&& value) {
68 SetFilter(std::forward<FilterT>(value));
69 return *this;
70 }
71 template <typename FilterKeyT = Aws::String, typename FilterValueT = Criterion>
72 InlineArchiveRule& AddFilter(FilterKeyT&& key, FilterValueT&& value) {
73 m_filterHasBeenSet = true;
74 m_filter.emplace(std::forward<FilterKeyT>(key), std::forward<FilterValueT>(value));
75 return *this;
76 }
78 private:
79 Aws::String m_ruleName;
80
82 bool m_ruleNameHasBeenSet = false;
83 bool m_filterHasBeenSet = false;
84};
85
86} // namespace Model
87} // namespace AccessAnalyzer
88} // namespace Aws
InlineArchiveRule & WithFilter(FilterT &&value)
InlineArchiveRule & WithRuleName(RuleNameT &&value)
AWS_ACCESSANALYZER_API InlineArchiveRule(Aws::Utils::Json::JsonView jsonValue)
InlineArchiveRule & AddFilter(FilterKeyT &&key, FilterValueT &&value)
const Aws::Map< Aws::String, Criterion > & GetFilter() const
AWS_ACCESSANALYZER_API InlineArchiveRule()=default
AWS_ACCESSANALYZER_API InlineArchiveRule & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_ACCESSANALYZER_API Aws::Utils::Json::JsonValue Jsonize() const
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue