AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Principal.h
1
6#pragma once
7#include <aws/ram/RAM_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace RAM
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_RAM_API Principal() = default;
37 AWS_RAM_API Principal(Aws::Utils::Json::JsonView jsonValue);
40
41
43
46 inline const Aws::String& GetId() const { return m_id; }
47 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
48 template<typename IdT = Aws::String>
49 void SetId(IdT&& value) { m_idHasBeenSet = true; m_id = std::forward<IdT>(value); }
50 template<typename IdT = Aws::String>
51 Principal& WithId(IdT&& value) { SetId(std::forward<IdT>(value)); return *this;}
53
55
61 inline const Aws::String& GetResourceShareArn() const { return m_resourceShareArn; }
62 inline bool ResourceShareArnHasBeenSet() const { return m_resourceShareArnHasBeenSet; }
63 template<typename ResourceShareArnT = Aws::String>
64 void SetResourceShareArn(ResourceShareArnT&& value) { m_resourceShareArnHasBeenSet = true; m_resourceShareArn = std::forward<ResourceShareArnT>(value); }
65 template<typename ResourceShareArnT = Aws::String>
66 Principal& WithResourceShareArn(ResourceShareArnT&& value) { SetResourceShareArn(std::forward<ResourceShareArnT>(value)); return *this;}
68
70
74 inline const Aws::Utils::DateTime& GetCreationTime() const { return m_creationTime; }
75 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
76 template<typename CreationTimeT = Aws::Utils::DateTime>
77 void SetCreationTime(CreationTimeT&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::forward<CreationTimeT>(value); }
78 template<typename CreationTimeT = Aws::Utils::DateTime>
79 Principal& WithCreationTime(CreationTimeT&& value) { SetCreationTime(std::forward<CreationTimeT>(value)); return *this;}
81
83
87 inline const Aws::Utils::DateTime& GetLastUpdatedTime() const { return m_lastUpdatedTime; }
88 inline bool LastUpdatedTimeHasBeenSet() const { return m_lastUpdatedTimeHasBeenSet; }
89 template<typename LastUpdatedTimeT = Aws::Utils::DateTime>
90 void SetLastUpdatedTime(LastUpdatedTimeT&& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = std::forward<LastUpdatedTimeT>(value); }
91 template<typename LastUpdatedTimeT = Aws::Utils::DateTime>
92 Principal& WithLastUpdatedTime(LastUpdatedTimeT&& value) { SetLastUpdatedTime(std::forward<LastUpdatedTimeT>(value)); return *this;}
94
96
103 inline bool GetExternal() const { return m_external; }
104 inline bool ExternalHasBeenSet() const { return m_externalHasBeenSet; }
105 inline void SetExternal(bool value) { m_externalHasBeenSet = true; m_external = value; }
106 inline Principal& WithExternal(bool value) { SetExternal(value); return *this;}
108 private:
109
110 Aws::String m_id;
111 bool m_idHasBeenSet = false;
112
113 Aws::String m_resourceShareArn;
114 bool m_resourceShareArnHasBeenSet = false;
115
116 Aws::Utils::DateTime m_creationTime{};
117 bool m_creationTimeHasBeenSet = false;
118
119 Aws::Utils::DateTime m_lastUpdatedTime{};
120 bool m_lastUpdatedTimeHasBeenSet = false;
121
122 bool m_external{false};
123 bool m_externalHasBeenSet = false;
124 };
125
126} // namespace Model
127} // namespace RAM
128} // namespace Aws
bool ExternalHasBeenSet() const
Definition Principal.h:104
AWS_RAM_API Principal()=default
void SetCreationTime(CreationTimeT &&value)
Definition Principal.h:77
void SetExternal(bool value)
Definition Principal.h:105
Principal & WithId(IdT &&value)
Definition Principal.h:51
bool LastUpdatedTimeHasBeenSet() const
Definition Principal.h:88
bool IdHasBeenSet() const
Definition Principal.h:47
const Aws::String & GetResourceShareArn() const
Definition Principal.h:61
void SetLastUpdatedTime(LastUpdatedTimeT &&value)
Definition Principal.h:90
const Aws::String & GetId() const
Definition Principal.h:46
AWS_RAM_API Aws::Utils::Json::JsonValue Jsonize() const
Principal & WithCreationTime(CreationTimeT &&value)
Definition Principal.h:79
AWS_RAM_API Principal & operator=(Aws::Utils::Json::JsonView jsonValue)
bool ResourceShareArnHasBeenSet() const
Definition Principal.h:62
const Aws::Utils::DateTime & GetLastUpdatedTime() const
Definition Principal.h:87
AWS_RAM_API Principal(Aws::Utils::Json::JsonView jsonValue)
bool CreationTimeHasBeenSet() const
Definition Principal.h:75
void SetId(IdT &&value)
Definition Principal.h:49
Principal & WithResourceShareArn(ResourceShareArnT &&value)
Definition Principal.h:66
Principal & WithExternal(bool value)
Definition Principal.h:106
Principal & WithLastUpdatedTime(LastUpdatedTimeT &&value)
Definition Principal.h:92
const Aws::Utils::DateTime & GetCreationTime() const
Definition Principal.h:74
void SetResourceShareArn(ResourceShareArnT &&value)
Definition Principal.h:64
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue