AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
GrantPermissionsRequest.h
1
6#pragma once
7#include <aws/lakeformation/LakeFormation_EXPORTS.h>
8#include <aws/lakeformation/LakeFormationRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/lakeformation/model/DataLakePrincipal.h>
11#include <aws/lakeformation/model/Resource.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/lakeformation/model/Permission.h>
14#include <utility>
15
16namespace Aws
17{
18namespace LakeFormation
19{
20namespace Model
21{
22
26 {
27 public:
28 AWS_LAKEFORMATION_API GrantPermissionsRequest();
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "GrantPermissions"; }
35
36 AWS_LAKEFORMATION_API Aws::String SerializePayload() const override;
37
38
40
46 inline const Aws::String& GetCatalogId() const{ return m_catalogId; }
47 inline bool CatalogIdHasBeenSet() const { return m_catalogIdHasBeenSet; }
48 inline void SetCatalogId(const Aws::String& value) { m_catalogIdHasBeenSet = true; m_catalogId = value; }
49 inline void SetCatalogId(Aws::String&& value) { m_catalogIdHasBeenSet = true; m_catalogId = std::move(value); }
50 inline void SetCatalogId(const char* value) { m_catalogIdHasBeenSet = true; m_catalogId.assign(value); }
51 inline GrantPermissionsRequest& WithCatalogId(const Aws::String& value) { SetCatalogId(value); return *this;}
52 inline GrantPermissionsRequest& WithCatalogId(Aws::String&& value) { SetCatalogId(std::move(value)); return *this;}
53 inline GrantPermissionsRequest& WithCatalogId(const char* value) { SetCatalogId(value); return *this;}
55
57
64 inline const DataLakePrincipal& GetPrincipal() const{ return m_principal; }
65 inline bool PrincipalHasBeenSet() const { return m_principalHasBeenSet; }
66 inline void SetPrincipal(const DataLakePrincipal& value) { m_principalHasBeenSet = true; m_principal = value; }
67 inline void SetPrincipal(DataLakePrincipal&& value) { m_principalHasBeenSet = true; m_principal = std::move(value); }
68 inline GrantPermissionsRequest& WithPrincipal(const DataLakePrincipal& value) { SetPrincipal(value); return *this;}
69 inline GrantPermissionsRequest& WithPrincipal(DataLakePrincipal&& value) { SetPrincipal(std::move(value)); return *this;}
71
73
77 inline const Resource& GetResource() const{ return m_resource; }
78 inline bool ResourceHasBeenSet() const { return m_resourceHasBeenSet; }
79 inline void SetResource(const Resource& value) { m_resourceHasBeenSet = true; m_resource = value; }
80 inline void SetResource(Resource&& value) { m_resourceHasBeenSet = true; m_resource = std::move(value); }
81 inline GrantPermissionsRequest& WithResource(const Resource& value) { SetResource(value); return *this;}
82 inline GrantPermissionsRequest& WithResource(Resource&& value) { SetResource(std::move(value)); return *this;}
84
86
93 inline const Aws::Vector<Permission>& GetPermissions() const{ return m_permissions; }
94 inline bool PermissionsHasBeenSet() const { return m_permissionsHasBeenSet; }
95 inline void SetPermissions(const Aws::Vector<Permission>& value) { m_permissionsHasBeenSet = true; m_permissions = value; }
96 inline void SetPermissions(Aws::Vector<Permission>&& value) { m_permissionsHasBeenSet = true; m_permissions = std::move(value); }
98 inline GrantPermissionsRequest& WithPermissions(Aws::Vector<Permission>&& value) { SetPermissions(std::move(value)); return *this;}
99 inline GrantPermissionsRequest& AddPermissions(const Permission& value) { m_permissionsHasBeenSet = true; m_permissions.push_back(value); return *this; }
100 inline GrantPermissionsRequest& AddPermissions(Permission&& value) { m_permissionsHasBeenSet = true; m_permissions.push_back(std::move(value)); return *this; }
102
104
109 inline const Aws::Vector<Permission>& GetPermissionsWithGrantOption() const{ return m_permissionsWithGrantOption; }
110 inline bool PermissionsWithGrantOptionHasBeenSet() const { return m_permissionsWithGrantOptionHasBeenSet; }
111 inline void SetPermissionsWithGrantOption(const Aws::Vector<Permission>& value) { m_permissionsWithGrantOptionHasBeenSet = true; m_permissionsWithGrantOption = value; }
112 inline void SetPermissionsWithGrantOption(Aws::Vector<Permission>&& value) { m_permissionsWithGrantOptionHasBeenSet = true; m_permissionsWithGrantOption = std::move(value); }
115 inline GrantPermissionsRequest& AddPermissionsWithGrantOption(const Permission& value) { m_permissionsWithGrantOptionHasBeenSet = true; m_permissionsWithGrantOption.push_back(value); return *this; }
116 inline GrantPermissionsRequest& AddPermissionsWithGrantOption(Permission&& value) { m_permissionsWithGrantOptionHasBeenSet = true; m_permissionsWithGrantOption.push_back(std::move(value)); return *this; }
118 private:
119
120 Aws::String m_catalogId;
121 bool m_catalogIdHasBeenSet = false;
122
123 DataLakePrincipal m_principal;
124 bool m_principalHasBeenSet = false;
125
126 Resource m_resource;
127 bool m_resourceHasBeenSet = false;
128
129 Aws::Vector<Permission> m_permissions;
130 bool m_permissionsHasBeenSet = false;
131
132 Aws::Vector<Permission> m_permissionsWithGrantOption;
133 bool m_permissionsWithGrantOptionHasBeenSet = false;
134 };
135
136} // namespace Model
137} // namespace LakeFormation
138} // namespace Aws
GrantPermissionsRequest & WithCatalogId(const char *value)
GrantPermissionsRequest & WithPermissions(const Aws::Vector< Permission > &value)
void SetPermissionsWithGrantOption(const Aws::Vector< Permission > &value)
GrantPermissionsRequest & AddPermissionsWithGrantOption(Permission &&value)
GrantPermissionsRequest & WithPermissions(Aws::Vector< Permission > &&value)
AWS_LAKEFORMATION_API Aws::String SerializePayload() const override
GrantPermissionsRequest & AddPermissionsWithGrantOption(const Permission &value)
const Aws::Vector< Permission > & GetPermissionsWithGrantOption() const
void SetPermissions(const Aws::Vector< Permission > &value)
GrantPermissionsRequest & WithCatalogId(const Aws::String &value)
void SetPermissionsWithGrantOption(Aws::Vector< Permission > &&value)
const Aws::Vector< Permission > & GetPermissions() const
GrantPermissionsRequest & WithResource(Resource &&value)
GrantPermissionsRequest & WithPermissionsWithGrantOption(const Aws::Vector< Permission > &value)
GrantPermissionsRequest & WithPrincipal(const DataLakePrincipal &value)
GrantPermissionsRequest & WithPermissionsWithGrantOption(Aws::Vector< Permission > &&value)
virtual const char * GetServiceRequestName() const override
GrantPermissionsRequest & WithPrincipal(DataLakePrincipal &&value)
GrantPermissionsRequest & AddPermissions(Permission &&value)
GrantPermissionsRequest & WithResource(const Resource &value)
GrantPermissionsRequest & WithCatalogId(Aws::String &&value)
void SetPermissions(Aws::Vector< Permission > &&value)
GrantPermissionsRequest & AddPermissions(const Permission &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector