AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
AddPolicyGrantRequest.h
1
6#pragma once
7#include <aws/datazone/DataZone_EXPORTS.h>
8#include <aws/datazone/DataZoneRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/datazone/model/PolicyGrantDetail.h>
11#include <aws/datazone/model/TargetEntityType.h>
12#include <aws/datazone/model/ManagedPolicyType.h>
13#include <aws/datazone/model/PolicyGrantPrincipal.h>
14#include <utility>
15#include <aws/core/utils/UUID.h>
16
17namespace Aws
18{
19namespace DataZone
20{
21namespace Model
22{
23
27 {
28 public:
29 AWS_DATAZONE_API AddPolicyGrantRequest() = default;
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "AddPolicyGrant"; }
36
37 AWS_DATAZONE_API Aws::String SerializePayload() const override;
38
39
41
45 inline const Aws::String& GetClientToken() const { return m_clientToken; }
46 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
47 template<typename ClientTokenT = Aws::String>
48 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::forward<ClientTokenT>(value); }
49 template<typename ClientTokenT = Aws::String>
50 AddPolicyGrantRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
52
54
57 inline const PolicyGrantDetail& GetDetail() const { return m_detail; }
58 inline bool DetailHasBeenSet() const { return m_detailHasBeenSet; }
59 template<typename DetailT = PolicyGrantDetail>
60 void SetDetail(DetailT&& value) { m_detailHasBeenSet = true; m_detail = std::forward<DetailT>(value); }
61 template<typename DetailT = PolicyGrantDetail>
62 AddPolicyGrantRequest& WithDetail(DetailT&& value) { SetDetail(std::forward<DetailT>(value)); return *this;}
64
66
69 inline const Aws::String& GetDomainIdentifier() const { return m_domainIdentifier; }
70 inline bool DomainIdentifierHasBeenSet() const { return m_domainIdentifierHasBeenSet; }
71 template<typename DomainIdentifierT = Aws::String>
72 void SetDomainIdentifier(DomainIdentifierT&& value) { m_domainIdentifierHasBeenSet = true; m_domainIdentifier = std::forward<DomainIdentifierT>(value); }
73 template<typename DomainIdentifierT = Aws::String>
74 AddPolicyGrantRequest& WithDomainIdentifier(DomainIdentifierT&& value) { SetDomainIdentifier(std::forward<DomainIdentifierT>(value)); return *this;}
76
78
81 inline const Aws::String& GetEntityIdentifier() const { return m_entityIdentifier; }
82 inline bool EntityIdentifierHasBeenSet() const { return m_entityIdentifierHasBeenSet; }
83 template<typename EntityIdentifierT = Aws::String>
84 void SetEntityIdentifier(EntityIdentifierT&& value) { m_entityIdentifierHasBeenSet = true; m_entityIdentifier = std::forward<EntityIdentifierT>(value); }
85 template<typename EntityIdentifierT = Aws::String>
86 AddPolicyGrantRequest& WithEntityIdentifier(EntityIdentifierT&& value) { SetEntityIdentifier(std::forward<EntityIdentifierT>(value)); return *this;}
88
90
93 inline TargetEntityType GetEntityType() const { return m_entityType; }
94 inline bool EntityTypeHasBeenSet() const { return m_entityTypeHasBeenSet; }
95 inline void SetEntityType(TargetEntityType value) { m_entityTypeHasBeenSet = true; m_entityType = value; }
98
100
103 inline ManagedPolicyType GetPolicyType() const { return m_policyType; }
104 inline bool PolicyTypeHasBeenSet() const { return m_policyTypeHasBeenSet; }
105 inline void SetPolicyType(ManagedPolicyType value) { m_policyTypeHasBeenSet = true; m_policyType = value; }
108
110
113 inline const PolicyGrantPrincipal& GetPrincipal() const { return m_principal; }
114 inline bool PrincipalHasBeenSet() const { return m_principalHasBeenSet; }
115 template<typename PrincipalT = PolicyGrantPrincipal>
116 void SetPrincipal(PrincipalT&& value) { m_principalHasBeenSet = true; m_principal = std::forward<PrincipalT>(value); }
117 template<typename PrincipalT = PolicyGrantPrincipal>
118 AddPolicyGrantRequest& WithPrincipal(PrincipalT&& value) { SetPrincipal(std::forward<PrincipalT>(value)); return *this;}
120 private:
121
123 bool m_clientTokenHasBeenSet = true;
124
125 PolicyGrantDetail m_detail;
126 bool m_detailHasBeenSet = false;
127
128 Aws::String m_domainIdentifier;
129 bool m_domainIdentifierHasBeenSet = false;
130
131 Aws::String m_entityIdentifier;
132 bool m_entityIdentifierHasBeenSet = false;
133
135 bool m_entityTypeHasBeenSet = false;
136
138 bool m_policyTypeHasBeenSet = false;
139
140 PolicyGrantPrincipal m_principal;
141 bool m_principalHasBeenSet = false;
142 };
143
144} // namespace Model
145} // namespace DataZone
146} // namespace Aws
AddPolicyGrantRequest & WithEntityType(TargetEntityType value)
void SetDomainIdentifier(DomainIdentifierT &&value)
AWS_DATAZONE_API AddPolicyGrantRequest()=default
AddPolicyGrantRequest & WithDetail(DetailT &&value)
virtual const char * GetServiceRequestName() const override
const PolicyGrantDetail & GetDetail() const
AddPolicyGrantRequest & WithClientToken(ClientTokenT &&value)
const PolicyGrantPrincipal & GetPrincipal() const
AddPolicyGrantRequest & WithDomainIdentifier(DomainIdentifierT &&value)
AddPolicyGrantRequest & WithPolicyType(ManagedPolicyType value)
AddPolicyGrantRequest & WithPrincipal(PrincipalT &&value)
AddPolicyGrantRequest & WithEntityIdentifier(EntityIdentifierT &&value)
AWS_DATAZONE_API Aws::String SerializePayload() const override
void SetEntityIdentifier(EntityIdentifierT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String