AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
PrincipalResourcePermissions.h
1
6#pragma once
7#include <aws/lakeformation/LakeFormation_EXPORTS.h>
8#include <aws/lakeformation/model/DataLakePrincipal.h>
9#include <aws/lakeformation/model/Resource.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/lakeformation/model/DetailsMap.h>
12#include <aws/core/utils/DateTime.h>
13#include <aws/core/utils/memory/stl/AWSString.h>
14#include <aws/lakeformation/model/Permission.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Json
22{
23 class JsonValue;
24 class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace LakeFormation
28{
29namespace Model
30{
31
39 {
40 public:
41 AWS_LAKEFORMATION_API PrincipalResourcePermissions();
44 AWS_LAKEFORMATION_API Aws::Utils::Json::JsonValue Jsonize() const;
45
46
48
51 inline const DataLakePrincipal& GetPrincipal() const{ return m_principal; }
52 inline bool PrincipalHasBeenSet() const { return m_principalHasBeenSet; }
53 inline void SetPrincipal(const DataLakePrincipal& value) { m_principalHasBeenSet = true; m_principal = value; }
54 inline void SetPrincipal(DataLakePrincipal&& value) { m_principalHasBeenSet = true; m_principal = std::move(value); }
55 inline PrincipalResourcePermissions& WithPrincipal(const DataLakePrincipal& value) { SetPrincipal(value); return *this;}
56 inline PrincipalResourcePermissions& WithPrincipal(DataLakePrincipal&& value) { SetPrincipal(std::move(value)); return *this;}
58
60
63 inline const Resource& GetResource() const{ return m_resource; }
64 inline bool ResourceHasBeenSet() const { return m_resourceHasBeenSet; }
65 inline void SetResource(const Resource& value) { m_resourceHasBeenSet = true; m_resource = value; }
66 inline void SetResource(Resource&& value) { m_resourceHasBeenSet = true; m_resource = std::move(value); }
67 inline PrincipalResourcePermissions& WithResource(const Resource& value) { SetResource(value); return *this;}
68 inline PrincipalResourcePermissions& WithResource(Resource&& value) { SetResource(std::move(value)); return *this;}
70
72
75 inline const Aws::Vector<Permission>& GetPermissions() const{ return m_permissions; }
76 inline bool PermissionsHasBeenSet() const { return m_permissionsHasBeenSet; }
77 inline void SetPermissions(const Aws::Vector<Permission>& value) { m_permissionsHasBeenSet = true; m_permissions = value; }
78 inline void SetPermissions(Aws::Vector<Permission>&& value) { m_permissionsHasBeenSet = true; m_permissions = std::move(value); }
80 inline PrincipalResourcePermissions& WithPermissions(Aws::Vector<Permission>&& value) { SetPermissions(std::move(value)); return *this;}
81 inline PrincipalResourcePermissions& AddPermissions(const Permission& value) { m_permissionsHasBeenSet = true; m_permissions.push_back(value); return *this; }
82 inline PrincipalResourcePermissions& AddPermissions(Permission&& value) { m_permissionsHasBeenSet = true; m_permissions.push_back(std::move(value)); return *this; }
84
86
90 inline const Aws::Vector<Permission>& GetPermissionsWithGrantOption() const{ return m_permissionsWithGrantOption; }
91 inline bool PermissionsWithGrantOptionHasBeenSet() const { return m_permissionsWithGrantOptionHasBeenSet; }
92 inline void SetPermissionsWithGrantOption(const Aws::Vector<Permission>& value) { m_permissionsWithGrantOptionHasBeenSet = true; m_permissionsWithGrantOption = value; }
93 inline void SetPermissionsWithGrantOption(Aws::Vector<Permission>&& value) { m_permissionsWithGrantOptionHasBeenSet = true; m_permissionsWithGrantOption = std::move(value); }
96 inline PrincipalResourcePermissions& AddPermissionsWithGrantOption(const Permission& value) { m_permissionsWithGrantOptionHasBeenSet = true; m_permissionsWithGrantOption.push_back(value); return *this; }
97 inline PrincipalResourcePermissions& AddPermissionsWithGrantOption(Permission&& value) { m_permissionsWithGrantOptionHasBeenSet = true; m_permissionsWithGrantOption.push_back(std::move(value)); return *this; }
99
101
106 inline const DetailsMap& GetAdditionalDetails() const{ return m_additionalDetails; }
107 inline bool AdditionalDetailsHasBeenSet() const { return m_additionalDetailsHasBeenSet; }
108 inline void SetAdditionalDetails(const DetailsMap& value) { m_additionalDetailsHasBeenSet = true; m_additionalDetails = value; }
109 inline void SetAdditionalDetails(DetailsMap&& value) { m_additionalDetailsHasBeenSet = true; m_additionalDetails = std::move(value); }
111 inline PrincipalResourcePermissions& WithAdditionalDetails(DetailsMap&& value) { SetAdditionalDetails(std::move(value)); return *this;}
113
115
118 inline const Aws::Utils::DateTime& GetLastUpdated() const{ return m_lastUpdated; }
119 inline bool LastUpdatedHasBeenSet() const { return m_lastUpdatedHasBeenSet; }
120 inline void SetLastUpdated(const Aws::Utils::DateTime& value) { m_lastUpdatedHasBeenSet = true; m_lastUpdated = value; }
121 inline void SetLastUpdated(Aws::Utils::DateTime&& value) { m_lastUpdatedHasBeenSet = true; m_lastUpdated = std::move(value); }
123 inline PrincipalResourcePermissions& WithLastUpdated(Aws::Utils::DateTime&& value) { SetLastUpdated(std::move(value)); return *this;}
125
127
130 inline const Aws::String& GetLastUpdatedBy() const{ return m_lastUpdatedBy; }
131 inline bool LastUpdatedByHasBeenSet() const { return m_lastUpdatedByHasBeenSet; }
132 inline void SetLastUpdatedBy(const Aws::String& value) { m_lastUpdatedByHasBeenSet = true; m_lastUpdatedBy = value; }
133 inline void SetLastUpdatedBy(Aws::String&& value) { m_lastUpdatedByHasBeenSet = true; m_lastUpdatedBy = std::move(value); }
134 inline void SetLastUpdatedBy(const char* value) { m_lastUpdatedByHasBeenSet = true; m_lastUpdatedBy.assign(value); }
135 inline PrincipalResourcePermissions& WithLastUpdatedBy(const Aws::String& value) { SetLastUpdatedBy(value); return *this;}
136 inline PrincipalResourcePermissions& WithLastUpdatedBy(Aws::String&& value) { SetLastUpdatedBy(std::move(value)); return *this;}
137 inline PrincipalResourcePermissions& WithLastUpdatedBy(const char* value) { SetLastUpdatedBy(value); return *this;}
139 private:
140
141 DataLakePrincipal m_principal;
142 bool m_principalHasBeenSet = false;
143
144 Resource m_resource;
145 bool m_resourceHasBeenSet = false;
146
147 Aws::Vector<Permission> m_permissions;
148 bool m_permissionsHasBeenSet = false;
149
150 Aws::Vector<Permission> m_permissionsWithGrantOption;
151 bool m_permissionsWithGrantOptionHasBeenSet = false;
152
153 DetailsMap m_additionalDetails;
154 bool m_additionalDetailsHasBeenSet = false;
155
156 Aws::Utils::DateTime m_lastUpdated;
157 bool m_lastUpdatedHasBeenSet = false;
158
159 Aws::String m_lastUpdatedBy;
160 bool m_lastUpdatedByHasBeenSet = false;
161 };
162
163} // namespace Model
164} // namespace LakeFormation
165} // namespace Aws
PrincipalResourcePermissions & WithResource(Resource &&value)
PrincipalResourcePermissions & WithPermissionsWithGrantOption(Aws::Vector< Permission > &&value)
void SetPermissionsWithGrantOption(Aws::Vector< Permission > &&value)
PrincipalResourcePermissions & AddPermissions(const Permission &value)
const Aws::Vector< Permission > & GetPermissionsWithGrantOption() const
PrincipalResourcePermissions & WithLastUpdatedBy(const Aws::String &value)
AWS_LAKEFORMATION_API Aws::Utils::Json::JsonValue Jsonize() const
PrincipalResourcePermissions & WithAdditionalDetails(DetailsMap &&value)
AWS_LAKEFORMATION_API PrincipalResourcePermissions(Aws::Utils::Json::JsonView jsonValue)
PrincipalResourcePermissions & WithAdditionalDetails(const DetailsMap &value)
PrincipalResourcePermissions & WithPermissions(Aws::Vector< Permission > &&value)
void SetPermissionsWithGrantOption(const Aws::Vector< Permission > &value)
void SetPermissions(const Aws::Vector< Permission > &value)
PrincipalResourcePermissions & WithPermissions(const Aws::Vector< Permission > &value)
AWS_LAKEFORMATION_API PrincipalResourcePermissions & operator=(Aws::Utils::Json::JsonView jsonValue)
PrincipalResourcePermissions & WithPrincipal(const DataLakePrincipal &value)
PrincipalResourcePermissions & WithLastUpdatedBy(Aws::String &&value)
PrincipalResourcePermissions & WithLastUpdatedBy(const char *value)
PrincipalResourcePermissions & AddPermissionsWithGrantOption(Permission &&value)
PrincipalResourcePermissions & AddPermissions(Permission &&value)
PrincipalResourcePermissions & WithPermissionsWithGrantOption(const Aws::Vector< Permission > &value)
PrincipalResourcePermissions & AddPermissionsWithGrantOption(const Permission &value)
PrincipalResourcePermissions & WithPrincipal(DataLakePrincipal &&value)
PrincipalResourcePermissions & WithResource(const Resource &value)
PrincipalResourcePermissions & WithLastUpdated(Aws::Utils::DateTime &&value)
PrincipalResourcePermissions & WithLastUpdated(const Aws::Utils::DateTime &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue