AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Permission.h
1
6#pragma once
7#include <aws/signer/Signer_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <utility>
10
11namespace Aws
12{
13namespace Utils
14{
15namespace Json
16{
17 class JsonValue;
18 class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace signer
22{
23namespace Model
24{
25
33 {
34 public:
35 AWS_SIGNER_API Permission() = default;
36 AWS_SIGNER_API Permission(Aws::Utils::Json::JsonView jsonValue);
38 AWS_SIGNER_API Aws::Utils::Json::JsonValue Jsonize() const;
39
40
42
45 inline const Aws::String& GetAction() const { return m_action; }
46 inline bool ActionHasBeenSet() const { return m_actionHasBeenSet; }
47 template<typename ActionT = Aws::String>
48 void SetAction(ActionT&& value) { m_actionHasBeenSet = true; m_action = std::forward<ActionT>(value); }
49 template<typename ActionT = Aws::String>
50 Permission& WithAction(ActionT&& value) { SetAction(std::forward<ActionT>(value)); return *this;}
52
54
57 inline const Aws::String& GetPrincipal() const { return m_principal; }
58 inline bool PrincipalHasBeenSet() const { return m_principalHasBeenSet; }
59 template<typename PrincipalT = Aws::String>
60 void SetPrincipal(PrincipalT&& value) { m_principalHasBeenSet = true; m_principal = std::forward<PrincipalT>(value); }
61 template<typename PrincipalT = Aws::String>
62 Permission& WithPrincipal(PrincipalT&& value) { SetPrincipal(std::forward<PrincipalT>(value)); return *this;}
64
66
69 inline const Aws::String& GetStatementId() const { return m_statementId; }
70 inline bool StatementIdHasBeenSet() const { return m_statementIdHasBeenSet; }
71 template<typename StatementIdT = Aws::String>
72 void SetStatementId(StatementIdT&& value) { m_statementIdHasBeenSet = true; m_statementId = std::forward<StatementIdT>(value); }
73 template<typename StatementIdT = Aws::String>
74 Permission& WithStatementId(StatementIdT&& value) { SetStatementId(std::forward<StatementIdT>(value)); return *this;}
76
78
81 inline const Aws::String& GetProfileVersion() const { return m_profileVersion; }
82 inline bool ProfileVersionHasBeenSet() const { return m_profileVersionHasBeenSet; }
83 template<typename ProfileVersionT = Aws::String>
84 void SetProfileVersion(ProfileVersionT&& value) { m_profileVersionHasBeenSet = true; m_profileVersion = std::forward<ProfileVersionT>(value); }
85 template<typename ProfileVersionT = Aws::String>
86 Permission& WithProfileVersion(ProfileVersionT&& value) { SetProfileVersion(std::forward<ProfileVersionT>(value)); return *this;}
88 private:
89
90 Aws::String m_action;
91 bool m_actionHasBeenSet = false;
92
93 Aws::String m_principal;
94 bool m_principalHasBeenSet = false;
95
96 Aws::String m_statementId;
97 bool m_statementIdHasBeenSet = false;
98
99 Aws::String m_profileVersion;
100 bool m_profileVersionHasBeenSet = false;
101 };
102
103} // namespace Model
104} // namespace signer
105} // namespace Aws
void SetStatementId(StatementIdT &&value)
Definition Permission.h:72
AWS_SIGNER_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetAction() const
Definition Permission.h:45
const Aws::String & GetPrincipal() const
Definition Permission.h:57
Permission & WithPrincipal(PrincipalT &&value)
Definition Permission.h:62
Permission & WithStatementId(StatementIdT &&value)
Definition Permission.h:74
const Aws::String & GetStatementId() const
Definition Permission.h:69
AWS_SIGNER_API Permission()=default
void SetProfileVersion(ProfileVersionT &&value)
Definition Permission.h:84
void SetAction(ActionT &&value)
Definition Permission.h:48
const Aws::String & GetProfileVersion() const
Definition Permission.h:81
Permission & WithAction(ActionT &&value)
Definition Permission.h:50
bool ProfileVersionHasBeenSet() const
Definition Permission.h:82
AWS_SIGNER_API Permission & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetPrincipal(PrincipalT &&value)
Definition Permission.h:60
Permission & WithProfileVersion(ProfileVersionT &&value)
Definition Permission.h:86
AWS_SIGNER_API Permission(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue