AWS SDK for C++

AWS SDK for C++ Version 1.11.762

Loading...
Searching...
No Matches
ResourcePermission.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/quicksight/QuickSight_EXPORTS.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace QuickSight {
21namespace Model {
22
29 public:
30 AWS_QUICKSIGHT_API ResourcePermission() = default;
31 AWS_QUICKSIGHT_API ResourcePermission(Aws::Utils::Json::JsonView jsonValue);
33 AWS_QUICKSIGHT_API Aws::Utils::Json::JsonValue Jsonize() const;
34
36
48 inline const Aws::String& GetPrincipal() const { return m_principal; }
49 inline bool PrincipalHasBeenSet() const { return m_principalHasBeenSet; }
50 template <typename PrincipalT = Aws::String>
51 void SetPrincipal(PrincipalT&& value) {
52 m_principalHasBeenSet = true;
53 m_principal = std::forward<PrincipalT>(value);
54 }
55 template <typename PrincipalT = Aws::String>
56 ResourcePermission& WithPrincipal(PrincipalT&& value) {
57 SetPrincipal(std::forward<PrincipalT>(value));
58 return *this;
59 }
61
63
66 inline const Aws::Vector<Aws::String>& GetActions() const { return m_actions; }
67 inline bool ActionsHasBeenSet() const { return m_actionsHasBeenSet; }
68 template <typename ActionsT = Aws::Vector<Aws::String>>
69 void SetActions(ActionsT&& value) {
70 m_actionsHasBeenSet = true;
71 m_actions = std::forward<ActionsT>(value);
72 }
73 template <typename ActionsT = Aws::Vector<Aws::String>>
74 ResourcePermission& WithActions(ActionsT&& value) {
75 SetActions(std::forward<ActionsT>(value));
76 return *this;
77 }
78 template <typename ActionsT = Aws::String>
79 ResourcePermission& AddActions(ActionsT&& value) {
80 m_actionsHasBeenSet = true;
81 m_actions.emplace_back(std::forward<ActionsT>(value));
82 return *this;
83 }
85 private:
86 Aws::String m_principal;
87
89 bool m_principalHasBeenSet = false;
90 bool m_actionsHasBeenSet = false;
91};
92
93} // namespace Model
94} // namespace QuickSight
95} // namespace Aws
AWS_QUICKSIGHT_API Aws::Utils::Json::JsonValue Jsonize() const
ResourcePermission & AddActions(ActionsT &&value)
AWS_QUICKSIGHT_API ResourcePermission & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::String > & GetActions() const
ResourcePermission & WithPrincipal(PrincipalT &&value)
AWS_QUICKSIGHT_API ResourcePermission(Aws::Utils::Json::JsonView jsonValue)
ResourcePermission & WithActions(ActionsT &&value)
AWS_QUICKSIGHT_API ResourcePermission()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue