AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
InstanceInfo.h
1
6#pragma once
7#include <aws/codedeploy/CodeDeploy_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/codedeploy/model/Tag.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace CodeDeploy
25{
26namespace Model
27{
28
35 {
36 public:
37 AWS_CODEDEPLOY_API InstanceInfo() = default;
38 AWS_CODEDEPLOY_API InstanceInfo(Aws::Utils::Json::JsonView jsonValue);
39 AWS_CODEDEPLOY_API InstanceInfo& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_CODEDEPLOY_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
47 inline const Aws::String& GetInstanceName() const { return m_instanceName; }
48 inline bool InstanceNameHasBeenSet() const { return m_instanceNameHasBeenSet; }
49 template<typename InstanceNameT = Aws::String>
50 void SetInstanceName(InstanceNameT&& value) { m_instanceNameHasBeenSet = true; m_instanceName = std::forward<InstanceNameT>(value); }
51 template<typename InstanceNameT = Aws::String>
52 InstanceInfo& WithInstanceName(InstanceNameT&& value) { SetInstanceName(std::forward<InstanceNameT>(value)); return *this;}
54
56
59 inline const Aws::String& GetIamSessionArn() const { return m_iamSessionArn; }
60 inline bool IamSessionArnHasBeenSet() const { return m_iamSessionArnHasBeenSet; }
61 template<typename IamSessionArnT = Aws::String>
62 void SetIamSessionArn(IamSessionArnT&& value) { m_iamSessionArnHasBeenSet = true; m_iamSessionArn = std::forward<IamSessionArnT>(value); }
63 template<typename IamSessionArnT = Aws::String>
64 InstanceInfo& WithIamSessionArn(IamSessionArnT&& value) { SetIamSessionArn(std::forward<IamSessionArnT>(value)); return *this;}
66
68
71 inline const Aws::String& GetIamUserArn() const { return m_iamUserArn; }
72 inline bool IamUserArnHasBeenSet() const { return m_iamUserArnHasBeenSet; }
73 template<typename IamUserArnT = Aws::String>
74 void SetIamUserArn(IamUserArnT&& value) { m_iamUserArnHasBeenSet = true; m_iamUserArn = std::forward<IamUserArnT>(value); }
75 template<typename IamUserArnT = Aws::String>
76 InstanceInfo& WithIamUserArn(IamUserArnT&& value) { SetIamUserArn(std::forward<IamUserArnT>(value)); return *this;}
78
80
83 inline const Aws::String& GetInstanceArn() const { return m_instanceArn; }
84 inline bool InstanceArnHasBeenSet() const { return m_instanceArnHasBeenSet; }
85 template<typename InstanceArnT = Aws::String>
86 void SetInstanceArn(InstanceArnT&& value) { m_instanceArnHasBeenSet = true; m_instanceArn = std::forward<InstanceArnT>(value); }
87 template<typename InstanceArnT = Aws::String>
88 InstanceInfo& WithInstanceArn(InstanceArnT&& value) { SetInstanceArn(std::forward<InstanceArnT>(value)); return *this;}
90
92
95 inline const Aws::Utils::DateTime& GetRegisterTime() const { return m_registerTime; }
96 inline bool RegisterTimeHasBeenSet() const { return m_registerTimeHasBeenSet; }
97 template<typename RegisterTimeT = Aws::Utils::DateTime>
98 void SetRegisterTime(RegisterTimeT&& value) { m_registerTimeHasBeenSet = true; m_registerTime = std::forward<RegisterTimeT>(value); }
99 template<typename RegisterTimeT = Aws::Utils::DateTime>
100 InstanceInfo& WithRegisterTime(RegisterTimeT&& value) { SetRegisterTime(std::forward<RegisterTimeT>(value)); return *this;}
102
104
108 inline const Aws::Utils::DateTime& GetDeregisterTime() const { return m_deregisterTime; }
109 inline bool DeregisterTimeHasBeenSet() const { return m_deregisterTimeHasBeenSet; }
110 template<typename DeregisterTimeT = Aws::Utils::DateTime>
111 void SetDeregisterTime(DeregisterTimeT&& value) { m_deregisterTimeHasBeenSet = true; m_deregisterTime = std::forward<DeregisterTimeT>(value); }
112 template<typename DeregisterTimeT = Aws::Utils::DateTime>
113 InstanceInfo& WithDeregisterTime(DeregisterTimeT&& value) { SetDeregisterTime(std::forward<DeregisterTimeT>(value)); return *this;}
115
117
120 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
121 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
122 template<typename TagsT = Aws::Vector<Tag>>
123 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
124 template<typename TagsT = Aws::Vector<Tag>>
125 InstanceInfo& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
126 template<typename TagsT = Tag>
127 InstanceInfo& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
129 private:
130
131 Aws::String m_instanceName;
132 bool m_instanceNameHasBeenSet = false;
133
134 Aws::String m_iamSessionArn;
135 bool m_iamSessionArnHasBeenSet = false;
136
137 Aws::String m_iamUserArn;
138 bool m_iamUserArnHasBeenSet = false;
139
140 Aws::String m_instanceArn;
141 bool m_instanceArnHasBeenSet = false;
142
143 Aws::Utils::DateTime m_registerTime{};
144 bool m_registerTimeHasBeenSet = false;
145
146 Aws::Utils::DateTime m_deregisterTime{};
147 bool m_deregisterTimeHasBeenSet = false;
148
149 Aws::Vector<Tag> m_tags;
150 bool m_tagsHasBeenSet = false;
151 };
152
153} // namespace Model
154} // namespace CodeDeploy
155} // namespace Aws
AWS_CODEDEPLOY_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_CODEDEPLOY_API InstanceInfo & operator=(Aws::Utils::Json::JsonView jsonValue)
InstanceInfo & WithDeregisterTime(DeregisterTimeT &&value)
const Aws::String & GetIamUserArn() const
AWS_CODEDEPLOY_API InstanceInfo(Aws::Utils::Json::JsonView jsonValue)
InstanceInfo & WithIamSessionArn(IamSessionArnT &&value)
void SetIamUserArn(IamUserArnT &&value)
const Aws::String & GetIamSessionArn() const
InstanceInfo & AddTags(TagsT &&value)
const Aws::Utils::DateTime & GetDeregisterTime() const
const Aws::Utils::DateTime & GetRegisterTime() const
const Aws::String & GetInstanceArn() const
const Aws::Vector< Tag > & GetTags() const
void SetIamSessionArn(IamSessionArnT &&value)
InstanceInfo & WithInstanceName(InstanceNameT &&value)
InstanceInfo & WithIamUserArn(IamUserArnT &&value)
InstanceInfo & WithInstanceArn(InstanceArnT &&value)
void SetInstanceName(InstanceNameT &&value)
InstanceInfo & WithTags(TagsT &&value)
const Aws::String & GetInstanceName() const
void SetRegisterTime(RegisterTimeT &&value)
void SetInstanceArn(InstanceArnT &&value)
InstanceInfo & WithRegisterTime(RegisterTimeT &&value)
void SetDeregisterTime(DeregisterTimeT &&value)
AWS_CODEDEPLOY_API InstanceInfo()=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