AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
PolicyDefinition.h
1
6#pragma once
7#include <aws/verifiedpermissions/VerifiedPermissions_EXPORTS.h>
8#include <aws/verifiedpermissions/model/StaticPolicyDefinition.h>
9#include <aws/verifiedpermissions/model/TemplateLinkedPolicyDefinition.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 VerifiedPermissions
23{
24namespace Model
25{
26
39 {
40 public:
41 AWS_VERIFIEDPERMISSIONS_API PolicyDefinition() = default;
42 AWS_VERIFIEDPERMISSIONS_API PolicyDefinition(Aws::Utils::Json::JsonView jsonValue);
43 AWS_VERIFIEDPERMISSIONS_API PolicyDefinition& operator=(Aws::Utils::Json::JsonView jsonValue);
44 AWS_VERIFIEDPERMISSIONS_API Aws::Utils::Json::JsonValue Jsonize() const;
45
46
48
52 inline const StaticPolicyDefinition& GetStatic() const { return m_static; }
53 inline bool StaticHasBeenSet() const { return m_staticHasBeenSet; }
54 template<typename StaticT = StaticPolicyDefinition>
55 void SetStatic(StaticT&& value) { m_staticHasBeenSet = true; m_static = std::forward<StaticT>(value); }
56 template<typename StaticT = StaticPolicyDefinition>
57 PolicyDefinition& WithStatic(StaticT&& value) { SetStatic(std::forward<StaticT>(value)); return *this;}
59
61
69 inline const TemplateLinkedPolicyDefinition& GetTemplateLinked() const { return m_templateLinked; }
70 inline bool TemplateLinkedHasBeenSet() const { return m_templateLinkedHasBeenSet; }
71 template<typename TemplateLinkedT = TemplateLinkedPolicyDefinition>
72 void SetTemplateLinked(TemplateLinkedT&& value) { m_templateLinkedHasBeenSet = true; m_templateLinked = std::forward<TemplateLinkedT>(value); }
73 template<typename TemplateLinkedT = TemplateLinkedPolicyDefinition>
74 PolicyDefinition& WithTemplateLinked(TemplateLinkedT&& value) { SetTemplateLinked(std::forward<TemplateLinkedT>(value)); return *this;}
76 private:
77
79 bool m_staticHasBeenSet = false;
80
81 TemplateLinkedPolicyDefinition m_templateLinked;
82 bool m_templateLinkedHasBeenSet = false;
83 };
84
85} // namespace Model
86} // namespace VerifiedPermissions
87} // namespace Aws
const StaticPolicyDefinition & GetStatic() const
AWS_VERIFIEDPERMISSIONS_API PolicyDefinition(Aws::Utils::Json::JsonView jsonValue)
AWS_VERIFIEDPERMISSIONS_API PolicyDefinition()=default
AWS_VERIFIEDPERMISSIONS_API Aws::Utils::Json::JsonValue Jsonize() const
const TemplateLinkedPolicyDefinition & GetTemplateLinked() const
PolicyDefinition & WithTemplateLinked(TemplateLinkedT &&value)
PolicyDefinition & WithStatic(StaticT &&value)
AWS_VERIFIEDPERMISSIONS_API PolicyDefinition & operator=(Aws::Utils::Json::JsonView jsonValue)
Aws::Utils::Json::JsonValue JsonValue