AWS SDK for C++

AWS SDK for C++ Version 1.11.754

Loading...
Searching...
No Matches
PolicyDefinitionItem.h
1
6#pragma once
7#include <aws/verifiedpermissions/VerifiedPermissions_EXPORTS.h>
8#include <aws/verifiedpermissions/model/StaticPolicyDefinitionItem.h>
9#include <aws/verifiedpermissions/model/TemplateLinkedPolicyDefinitionItem.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace VerifiedPermissions {
21namespace Model {
22
37 public:
38 AWS_VERIFIEDPERMISSIONS_API PolicyDefinitionItem() = default;
39 AWS_VERIFIEDPERMISSIONS_API PolicyDefinitionItem(Aws::Utils::Json::JsonView jsonValue);
40 AWS_VERIFIEDPERMISSIONS_API PolicyDefinitionItem& operator=(Aws::Utils::Json::JsonView jsonValue);
41 AWS_VERIFIEDPERMISSIONS_API Aws::Utils::Json::JsonValue Jsonize() const;
42
44
48 inline const StaticPolicyDefinitionItem& GetStatic() const { return m_static; }
49 inline bool StaticHasBeenSet() const { return m_staticHasBeenSet; }
50 template <typename StaticT = StaticPolicyDefinitionItem>
51 void SetStatic(StaticT&& value) {
52 m_staticHasBeenSet = true;
53 m_static = std::forward<StaticT>(value);
54 }
55 template <typename StaticT = StaticPolicyDefinitionItem>
56 PolicyDefinitionItem& WithStatic(StaticT&& value) {
57 SetStatic(std::forward<StaticT>(value));
58 return *this;
59 }
61
63
67 inline const TemplateLinkedPolicyDefinitionItem& GetTemplateLinked() const { return m_templateLinked; }
68 inline bool TemplateLinkedHasBeenSet() const { return m_templateLinkedHasBeenSet; }
69 template <typename TemplateLinkedT = TemplateLinkedPolicyDefinitionItem>
70 void SetTemplateLinked(TemplateLinkedT&& value) {
71 m_templateLinkedHasBeenSet = true;
72 m_templateLinked = std::forward<TemplateLinkedT>(value);
73 }
74 template <typename TemplateLinkedT = TemplateLinkedPolicyDefinitionItem>
75 PolicyDefinitionItem& WithTemplateLinked(TemplateLinkedT&& value) {
76 SetTemplateLinked(std::forward<TemplateLinkedT>(value));
77 return *this;
78 }
80 private:
82
84 bool m_staticHasBeenSet = false;
85 bool m_templateLinkedHasBeenSet = false;
86};
87
88} // namespace Model
89} // namespace VerifiedPermissions
90} // namespace Aws
const StaticPolicyDefinitionItem & GetStatic() const
AWS_VERIFIEDPERMISSIONS_API PolicyDefinitionItem()=default
PolicyDefinitionItem & WithStatic(StaticT &&value)
AWS_VERIFIEDPERMISSIONS_API Aws::Utils::Json::JsonValue Jsonize() const
PolicyDefinitionItem & WithTemplateLinked(TemplateLinkedT &&value)
AWS_VERIFIEDPERMISSIONS_API PolicyDefinitionItem(Aws::Utils::Json::JsonView jsonValue)
AWS_VERIFIEDPERMISSIONS_API PolicyDefinitionItem & operator=(Aws::Utils::Json::JsonView jsonValue)
const TemplateLinkedPolicyDefinitionItem & GetTemplateLinked() const
Aws::Utils::Json::JsonValue JsonValue