AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
PathElement.h
1
6#pragma once
7#include <aws/accessanalyzer/AccessAnalyzer_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/accessanalyzer/model/Substring.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace AccessAnalyzer
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_ACCESSANALYZER_API PathElement() = default;
37 AWS_ACCESSANALYZER_API PathElement(Aws::Utils::Json::JsonView jsonValue);
38 AWS_ACCESSANALYZER_API PathElement& operator=(Aws::Utils::Json::JsonView jsonValue);
39 AWS_ACCESSANALYZER_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
46 inline int GetIndex() const { return m_index; }
47 inline bool IndexHasBeenSet() const { return m_indexHasBeenSet; }
48 inline void SetIndex(int value) { m_indexHasBeenSet = true; m_index = value; }
49 inline PathElement& WithIndex(int value) { SetIndex(value); return *this;}
51
53
56 inline const Aws::String& GetKey() const { return m_key; }
57 inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
58 template<typename KeyT = Aws::String>
59 void SetKey(KeyT&& value) { m_keyHasBeenSet = true; m_key = std::forward<KeyT>(value); }
60 template<typename KeyT = Aws::String>
61 PathElement& WithKey(KeyT&& value) { SetKey(std::forward<KeyT>(value)); return *this;}
63
65
68 inline const Substring& GetSubstring() const { return m_substring; }
69 inline bool SubstringHasBeenSet() const { return m_substringHasBeenSet; }
70 template<typename SubstringT = Substring>
71 void SetSubstring(SubstringT&& value) { m_substringHasBeenSet = true; m_substring = std::forward<SubstringT>(value); }
72 template<typename SubstringT = Substring>
73 PathElement& WithSubstring(SubstringT&& value) { SetSubstring(std::forward<SubstringT>(value)); return *this;}
75
77
80 inline const Aws::String& GetValue() const { return m_value; }
81 inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; }
82 template<typename ValueT = Aws::String>
83 void SetValue(ValueT&& value) { m_valueHasBeenSet = true; m_value = std::forward<ValueT>(value); }
84 template<typename ValueT = Aws::String>
85 PathElement& WithValue(ValueT&& value) { SetValue(std::forward<ValueT>(value)); return *this;}
87 private:
88
89 int m_index{0};
90 bool m_indexHasBeenSet = false;
91
92 Aws::String m_key;
93 bool m_keyHasBeenSet = false;
94
95 Substring m_substring;
96 bool m_substringHasBeenSet = false;
97
98 Aws::String m_value;
99 bool m_valueHasBeenSet = false;
100 };
101
102} // namespace Model
103} // namespace AccessAnalyzer
104} // namespace Aws
const Aws::String & GetKey() const
Definition PathElement.h:56
AWS_ACCESSANALYZER_API PathElement()=default
PathElement & WithSubstring(SubstringT &&value)
Definition PathElement.h:73
void SetSubstring(SubstringT &&value)
Definition PathElement.h:71
AWS_ACCESSANALYZER_API PathElement(Aws::Utils::Json::JsonView jsonValue)
PathElement & WithIndex(int value)
Definition PathElement.h:49
const Substring & GetSubstring() const
Definition PathElement.h:68
PathElement & WithKey(KeyT &&value)
Definition PathElement.h:61
const Aws::String & GetValue() const
Definition PathElement.h:80
PathElement & WithValue(ValueT &&value)
Definition PathElement.h:85
AWS_ACCESSANALYZER_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_ACCESSANALYZER_API PathElement & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue