AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Policy.h
1
6#pragma once
7#include <aws/mpa/MPA_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/mpa/model/PolicyType.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 MPA
23{
24namespace Model
25{
26
38 class Policy
39 {
40 public:
41 AWS_MPA_API Policy() = default;
42 AWS_MPA_API Policy(Aws::Utils::Json::JsonView jsonValue);
45
46
48
51 inline const Aws::String& GetArn() const { return m_arn; }
52 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
53 template<typename ArnT = Aws::String>
54 void SetArn(ArnT&& value) { m_arnHasBeenSet = true; m_arn = std::forward<ArnT>(value); }
55 template<typename ArnT = Aws::String>
56 Policy& WithArn(ArnT&& value) { SetArn(std::forward<ArnT>(value)); return *this;}
58
60
63 inline int GetDefaultVersion() const { return m_defaultVersion; }
64 inline bool DefaultVersionHasBeenSet() const { return m_defaultVersionHasBeenSet; }
65 inline void SetDefaultVersion(int value) { m_defaultVersionHasBeenSet = true; m_defaultVersion = value; }
66 inline Policy& WithDefaultVersion(int value) { SetDefaultVersion(value); return *this;}
68
70
73 inline PolicyType GetPolicyType() const { return m_policyType; }
74 inline bool PolicyTypeHasBeenSet() const { return m_policyTypeHasBeenSet; }
75 inline void SetPolicyType(PolicyType value) { m_policyTypeHasBeenSet = true; m_policyType = value; }
76 inline Policy& WithPolicyType(PolicyType value) { SetPolicyType(value); return *this;}
78
80
83 inline const Aws::String& GetName() const { return m_name; }
84 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
85 template<typename NameT = Aws::String>
86 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
87 template<typename NameT = Aws::String>
88 Policy& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
90 private:
91
92 Aws::String m_arn;
93 bool m_arnHasBeenSet = false;
94
95 int m_defaultVersion{0};
96 bool m_defaultVersionHasBeenSet = false;
97
98 PolicyType m_policyType{PolicyType::NOT_SET};
99 bool m_policyTypeHasBeenSet = false;
100
101 Aws::String m_name;
102 bool m_nameHasBeenSet = false;
103 };
104
105} // namespace Model
106} // namespace MPA
107} // namespace Aws
Policy & WithName(NameT &&value)
Definition Policy.h:88
Policy & WithArn(ArnT &&value)
Definition Policy.h:56
AWS_MPA_API Policy(Aws::Utils::Json::JsonView jsonValue)
PolicyType GetPolicyType() const
Definition Policy.h:73
void SetPolicyType(PolicyType value)
Definition Policy.h:75
void SetArn(ArnT &&value)
Definition Policy.h:54
Policy & WithPolicyType(PolicyType value)
Definition Policy.h:76
bool DefaultVersionHasBeenSet() const
Definition Policy.h:64
void SetName(NameT &&value)
Definition Policy.h:86
AWS_MPA_API Policy()=default
bool NameHasBeenSet() const
Definition Policy.h:84
const Aws::String & GetArn() const
Definition Policy.h:51
Policy & WithDefaultVersion(int value)
Definition Policy.h:66
AWS_MPA_API Aws::Utils::Json::JsonValue Jsonize() const
bool PolicyTypeHasBeenSet() const
Definition Policy.h:74
void SetDefaultVersion(int value)
Definition Policy.h:65
int GetDefaultVersion() const
Definition Policy.h:63
bool ArnHasBeenSet() const
Definition Policy.h:52
const Aws::String & GetName() const
Definition Policy.h:83
AWS_MPA_API Policy & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue