AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
InstanceProfile.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/devicefarm/DeviceFarm_EXPORTS.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace DeviceFarm {
21namespace Model {
22
29 public:
30 AWS_DEVICEFARM_API InstanceProfile() = default;
31 AWS_DEVICEFARM_API InstanceProfile(Aws::Utils::Json::JsonView jsonValue);
33 AWS_DEVICEFARM_API Aws::Utils::Json::JsonValue Jsonize() const;
34
36
39 inline const Aws::String& GetArn() const { return m_arn; }
40 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
41 template <typename ArnT = Aws::String>
42 void SetArn(ArnT&& value) {
43 m_arnHasBeenSet = true;
44 m_arn = std::forward<ArnT>(value);
45 }
46 template <typename ArnT = Aws::String>
47 InstanceProfile& WithArn(ArnT&& value) {
48 SetArn(std::forward<ArnT>(value));
49 return *this;
50 }
52
54
58 inline bool GetPackageCleanup() const { return m_packageCleanup; }
59 inline bool PackageCleanupHasBeenSet() const { return m_packageCleanupHasBeenSet; }
60 inline void SetPackageCleanup(bool value) {
61 m_packageCleanupHasBeenSet = true;
62 m_packageCleanup = value;
63 }
64 inline InstanceProfile& WithPackageCleanup(bool value) {
65 SetPackageCleanup(value);
66 return *this;
67 }
69
71
77 inline const Aws::Vector<Aws::String>& GetExcludeAppPackagesFromCleanup() const { return m_excludeAppPackagesFromCleanup; }
78 inline bool ExcludeAppPackagesFromCleanupHasBeenSet() const { return m_excludeAppPackagesFromCleanupHasBeenSet; }
79 template <typename ExcludeAppPackagesFromCleanupT = Aws::Vector<Aws::String>>
80 void SetExcludeAppPackagesFromCleanup(ExcludeAppPackagesFromCleanupT&& value) {
81 m_excludeAppPackagesFromCleanupHasBeenSet = true;
82 m_excludeAppPackagesFromCleanup = std::forward<ExcludeAppPackagesFromCleanupT>(value);
83 }
84 template <typename ExcludeAppPackagesFromCleanupT = Aws::Vector<Aws::String>>
85 InstanceProfile& WithExcludeAppPackagesFromCleanup(ExcludeAppPackagesFromCleanupT&& value) {
86 SetExcludeAppPackagesFromCleanup(std::forward<ExcludeAppPackagesFromCleanupT>(value));
87 return *this;
88 }
89 template <typename ExcludeAppPackagesFromCleanupT = Aws::String>
90 InstanceProfile& AddExcludeAppPackagesFromCleanup(ExcludeAppPackagesFromCleanupT&& value) {
91 m_excludeAppPackagesFromCleanupHasBeenSet = true;
92 m_excludeAppPackagesFromCleanup.emplace_back(std::forward<ExcludeAppPackagesFromCleanupT>(value));
93 return *this;
94 }
96
98
102 inline bool GetRebootAfterUse() const { return m_rebootAfterUse; }
103 inline bool RebootAfterUseHasBeenSet() const { return m_rebootAfterUseHasBeenSet; }
104 inline void SetRebootAfterUse(bool value) {
105 m_rebootAfterUseHasBeenSet = true;
106 m_rebootAfterUse = value;
107 }
109 SetRebootAfterUse(value);
110 return *this;
111 }
113
115
118 inline const Aws::String& GetName() const { return m_name; }
119 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
120 template <typename NameT = Aws::String>
121 void SetName(NameT&& value) {
122 m_nameHasBeenSet = true;
123 m_name = std::forward<NameT>(value);
124 }
125 template <typename NameT = Aws::String>
126 InstanceProfile& WithName(NameT&& value) {
127 SetName(std::forward<NameT>(value));
128 return *this;
129 }
131
133
136 inline const Aws::String& GetDescription() const { return m_description; }
137 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
138 template <typename DescriptionT = Aws::String>
139 void SetDescription(DescriptionT&& value) {
140 m_descriptionHasBeenSet = true;
141 m_description = std::forward<DescriptionT>(value);
142 }
143 template <typename DescriptionT = Aws::String>
144 InstanceProfile& WithDescription(DescriptionT&& value) {
145 SetDescription(std::forward<DescriptionT>(value));
146 return *this;
147 }
149 private:
150 Aws::String m_arn;
151
152 bool m_packageCleanup{false};
153
154 Aws::Vector<Aws::String> m_excludeAppPackagesFromCleanup;
155
156 bool m_rebootAfterUse{false};
157
158 Aws::String m_name;
159
160 Aws::String m_description;
161 bool m_arnHasBeenSet = false;
162 bool m_packageCleanupHasBeenSet = false;
163 bool m_excludeAppPackagesFromCleanupHasBeenSet = false;
164 bool m_rebootAfterUseHasBeenSet = false;
165 bool m_nameHasBeenSet = false;
166 bool m_descriptionHasBeenSet = false;
167};
168
169} // namespace Model
170} // namespace DeviceFarm
171} // namespace Aws
InstanceProfile & WithName(NameT &&value)
void SetExcludeAppPackagesFromCleanup(ExcludeAppPackagesFromCleanupT &&value)
InstanceProfile & WithPackageCleanup(bool value)
AWS_DEVICEFARM_API InstanceProfile & operator=(Aws::Utils::Json::JsonView jsonValue)
InstanceProfile & WithDescription(DescriptionT &&value)
InstanceProfile & WithRebootAfterUse(bool value)
void SetDescription(DescriptionT &&value)
const Aws::Vector< Aws::String > & GetExcludeAppPackagesFromCleanup() const
AWS_DEVICEFARM_API InstanceProfile()=default
InstanceProfile & WithExcludeAppPackagesFromCleanup(ExcludeAppPackagesFromCleanupT &&value)
AWS_DEVICEFARM_API Aws::Utils::Json::JsonValue Jsonize() const
InstanceProfile & WithArn(ArnT &&value)
const Aws::String & GetName() const
const Aws::String & GetDescription() const
AWS_DEVICEFARM_API InstanceProfile(Aws::Utils::Json::JsonView jsonValue)
InstanceProfile & AddExcludeAppPackagesFromCleanup(ExcludeAppPackagesFromCleanupT &&value)
const Aws::String & GetArn() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue