AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
LicenseAssetGroup.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/license-manager/LicenseManager_EXPORTS.h>
11#include <aws/license-manager/model/LicenseAssetGroupConfiguration.h>
12#include <aws/license-manager/model/LicenseAssetGroupProperty.h>
13#include <aws/license-manager/model/LicenseAssetGroupStatus.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace LicenseManager {
25namespace Model {
26
33 public:
34 AWS_LICENSEMANAGER_API LicenseAssetGroup() = default;
35 AWS_LICENSEMANAGER_API LicenseAssetGroup(Aws::Utils::Json::JsonView jsonValue);
36 AWS_LICENSEMANAGER_API LicenseAssetGroup& operator=(Aws::Utils::Json::JsonView jsonValue);
37 AWS_LICENSEMANAGER_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
43 inline const Aws::String& GetName() const { return m_name; }
44 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
45 template <typename NameT = Aws::String>
46 void SetName(NameT&& value) {
47 m_nameHasBeenSet = true;
48 m_name = std::forward<NameT>(value);
49 }
50 template <typename NameT = Aws::String>
51 LicenseAssetGroup& WithName(NameT&& value) {
52 SetName(std::forward<NameT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::String& GetDescription() const { return m_description; }
62 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
63 template <typename DescriptionT = Aws::String>
64 void SetDescription(DescriptionT&& value) {
65 m_descriptionHasBeenSet = true;
66 m_description = std::forward<DescriptionT>(value);
67 }
68 template <typename DescriptionT = Aws::String>
69 LicenseAssetGroup& WithDescription(DescriptionT&& value) {
70 SetDescription(std::forward<DescriptionT>(value));
71 return *this;
72 }
74
76
80 return m_licenseAssetGroupConfigurations;
81 }
82 inline bool LicenseAssetGroupConfigurationsHasBeenSet() const { return m_licenseAssetGroupConfigurationsHasBeenSet; }
83 template <typename LicenseAssetGroupConfigurationsT = Aws::Vector<LicenseAssetGroupConfiguration>>
84 void SetLicenseAssetGroupConfigurations(LicenseAssetGroupConfigurationsT&& value) {
85 m_licenseAssetGroupConfigurationsHasBeenSet = true;
86 m_licenseAssetGroupConfigurations = std::forward<LicenseAssetGroupConfigurationsT>(value);
87 }
88 template <typename LicenseAssetGroupConfigurationsT = Aws::Vector<LicenseAssetGroupConfiguration>>
89 LicenseAssetGroup& WithLicenseAssetGroupConfigurations(LicenseAssetGroupConfigurationsT&& value) {
90 SetLicenseAssetGroupConfigurations(std::forward<LicenseAssetGroupConfigurationsT>(value));
91 return *this;
92 }
93 template <typename LicenseAssetGroupConfigurationsT = LicenseAssetGroupConfiguration>
94 LicenseAssetGroup& AddLicenseAssetGroupConfigurations(LicenseAssetGroupConfigurationsT&& value) {
95 m_licenseAssetGroupConfigurationsHasBeenSet = true;
96 m_licenseAssetGroupConfigurations.emplace_back(std::forward<LicenseAssetGroupConfigurationsT>(value));
97 return *this;
98 }
100
102
105 inline const Aws::Vector<Aws::String>& GetAssociatedLicenseAssetRulesetARNs() const { return m_associatedLicenseAssetRulesetARNs; }
106 inline bool AssociatedLicenseAssetRulesetARNsHasBeenSet() const { return m_associatedLicenseAssetRulesetARNsHasBeenSet; }
107 template <typename AssociatedLicenseAssetRulesetARNsT = Aws::Vector<Aws::String>>
108 void SetAssociatedLicenseAssetRulesetARNs(AssociatedLicenseAssetRulesetARNsT&& value) {
109 m_associatedLicenseAssetRulesetARNsHasBeenSet = true;
110 m_associatedLicenseAssetRulesetARNs = std::forward<AssociatedLicenseAssetRulesetARNsT>(value);
111 }
112 template <typename AssociatedLicenseAssetRulesetARNsT = Aws::Vector<Aws::String>>
113 LicenseAssetGroup& WithAssociatedLicenseAssetRulesetARNs(AssociatedLicenseAssetRulesetARNsT&& value) {
114 SetAssociatedLicenseAssetRulesetARNs(std::forward<AssociatedLicenseAssetRulesetARNsT>(value));
115 return *this;
116 }
117 template <typename AssociatedLicenseAssetRulesetARNsT = Aws::String>
118 LicenseAssetGroup& AddAssociatedLicenseAssetRulesetARNs(AssociatedLicenseAssetRulesetARNsT&& value) {
119 m_associatedLicenseAssetRulesetARNsHasBeenSet = true;
120 m_associatedLicenseAssetRulesetARNs.emplace_back(std::forward<AssociatedLicenseAssetRulesetARNsT>(value));
121 return *this;
122 }
124
126
129 inline const Aws::Vector<LicenseAssetGroupProperty>& GetProperties() const { return m_properties; }
130 inline bool PropertiesHasBeenSet() const { return m_propertiesHasBeenSet; }
131 template <typename PropertiesT = Aws::Vector<LicenseAssetGroupProperty>>
132 void SetProperties(PropertiesT&& value) {
133 m_propertiesHasBeenSet = true;
134 m_properties = std::forward<PropertiesT>(value);
135 }
136 template <typename PropertiesT = Aws::Vector<LicenseAssetGroupProperty>>
137 LicenseAssetGroup& WithProperties(PropertiesT&& value) {
138 SetProperties(std::forward<PropertiesT>(value));
139 return *this;
140 }
141 template <typename PropertiesT = LicenseAssetGroupProperty>
142 LicenseAssetGroup& AddProperties(PropertiesT&& value) {
143 m_propertiesHasBeenSet = true;
144 m_properties.emplace_back(std::forward<PropertiesT>(value));
145 return *this;
146 }
148
150
153 inline const Aws::String& GetLicenseAssetGroupArn() const { return m_licenseAssetGroupArn; }
154 inline bool LicenseAssetGroupArnHasBeenSet() const { return m_licenseAssetGroupArnHasBeenSet; }
155 template <typename LicenseAssetGroupArnT = Aws::String>
156 void SetLicenseAssetGroupArn(LicenseAssetGroupArnT&& value) {
157 m_licenseAssetGroupArnHasBeenSet = true;
158 m_licenseAssetGroupArn = std::forward<LicenseAssetGroupArnT>(value);
159 }
160 template <typename LicenseAssetGroupArnT = Aws::String>
161 LicenseAssetGroup& WithLicenseAssetGroupArn(LicenseAssetGroupArnT&& value) {
162 SetLicenseAssetGroupArn(std::forward<LicenseAssetGroupArnT>(value));
163 return *this;
164 }
166
168
171 inline LicenseAssetGroupStatus GetStatus() const { return m_status; }
172 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
174 m_statusHasBeenSet = true;
175 m_status = value;
176 }
178 SetStatus(value);
179 return *this;
180 }
182
184
187 inline const Aws::String& GetStatusMessage() const { return m_statusMessage; }
188 inline bool StatusMessageHasBeenSet() const { return m_statusMessageHasBeenSet; }
189 template <typename StatusMessageT = Aws::String>
190 void SetStatusMessage(StatusMessageT&& value) {
191 m_statusMessageHasBeenSet = true;
192 m_statusMessage = std::forward<StatusMessageT>(value);
193 }
194 template <typename StatusMessageT = Aws::String>
195 LicenseAssetGroup& WithStatusMessage(StatusMessageT&& value) {
196 SetStatusMessage(std::forward<StatusMessageT>(value));
197 return *this;
198 }
200
202
205 inline const Aws::Utils::DateTime& GetLatestUsageAnalysisTime() const { return m_latestUsageAnalysisTime; }
206 inline bool LatestUsageAnalysisTimeHasBeenSet() const { return m_latestUsageAnalysisTimeHasBeenSet; }
207 template <typename LatestUsageAnalysisTimeT = Aws::Utils::DateTime>
208 void SetLatestUsageAnalysisTime(LatestUsageAnalysisTimeT&& value) {
209 m_latestUsageAnalysisTimeHasBeenSet = true;
210 m_latestUsageAnalysisTime = std::forward<LatestUsageAnalysisTimeT>(value);
211 }
212 template <typename LatestUsageAnalysisTimeT = Aws::Utils::DateTime>
213 LicenseAssetGroup& WithLatestUsageAnalysisTime(LatestUsageAnalysisTimeT&& value) {
214 SetLatestUsageAnalysisTime(std::forward<LatestUsageAnalysisTimeT>(value));
215 return *this;
216 }
218
220
223 inline const Aws::Utils::DateTime& GetLatestResourceDiscoveryTime() const { return m_latestResourceDiscoveryTime; }
224 inline bool LatestResourceDiscoveryTimeHasBeenSet() const { return m_latestResourceDiscoveryTimeHasBeenSet; }
225 template <typename LatestResourceDiscoveryTimeT = Aws::Utils::DateTime>
226 void SetLatestResourceDiscoveryTime(LatestResourceDiscoveryTimeT&& value) {
227 m_latestResourceDiscoveryTimeHasBeenSet = true;
228 m_latestResourceDiscoveryTime = std::forward<LatestResourceDiscoveryTimeT>(value);
229 }
230 template <typename LatestResourceDiscoveryTimeT = Aws::Utils::DateTime>
231 LicenseAssetGroup& WithLatestResourceDiscoveryTime(LatestResourceDiscoveryTimeT&& value) {
232 SetLatestResourceDiscoveryTime(std::forward<LatestResourceDiscoveryTimeT>(value));
233 return *this;
234 }
236 private:
237 Aws::String m_name;
238
239 Aws::String m_description;
240
241 Aws::Vector<LicenseAssetGroupConfiguration> m_licenseAssetGroupConfigurations;
242
243 Aws::Vector<Aws::String> m_associatedLicenseAssetRulesetARNs;
244
246
247 Aws::String m_licenseAssetGroupArn;
248
250
251 Aws::String m_statusMessage;
252
253 Aws::Utils::DateTime m_latestUsageAnalysisTime{};
254
255 Aws::Utils::DateTime m_latestResourceDiscoveryTime{};
256 bool m_nameHasBeenSet = false;
257 bool m_descriptionHasBeenSet = false;
258 bool m_licenseAssetGroupConfigurationsHasBeenSet = false;
259 bool m_associatedLicenseAssetRulesetARNsHasBeenSet = false;
260 bool m_propertiesHasBeenSet = false;
261 bool m_licenseAssetGroupArnHasBeenSet = false;
262 bool m_statusHasBeenSet = false;
263 bool m_statusMessageHasBeenSet = false;
264 bool m_latestUsageAnalysisTimeHasBeenSet = false;
265 bool m_latestResourceDiscoveryTimeHasBeenSet = false;
266};
267
268} // namespace Model
269} // namespace LicenseManager
270} // namespace Aws
const Aws::String & GetLicenseAssetGroupArn() const
LicenseAssetGroup & WithStatus(LicenseAssetGroupStatus value)
void SetLicenseAssetGroupConfigurations(LicenseAssetGroupConfigurationsT &&value)
LicenseAssetGroup & WithAssociatedLicenseAssetRulesetARNs(AssociatedLicenseAssetRulesetARNsT &&value)
LicenseAssetGroup & WithLatestUsageAnalysisTime(LatestUsageAnalysisTimeT &&value)
const Aws::Utils::DateTime & GetLatestResourceDiscoveryTime() const
LicenseAssetGroup & WithDescription(DescriptionT &&value)
LicenseAssetGroup & WithStatusMessage(StatusMessageT &&value)
void SetAssociatedLicenseAssetRulesetARNs(AssociatedLicenseAssetRulesetARNsT &&value)
AWS_LICENSEMANAGER_API LicenseAssetGroup()=default
LicenseAssetGroup & WithLicenseAssetGroupArn(LicenseAssetGroupArnT &&value)
LicenseAssetGroup & AddAssociatedLicenseAssetRulesetARNs(AssociatedLicenseAssetRulesetARNsT &&value)
const Aws::Vector< LicenseAssetGroupConfiguration > & GetLicenseAssetGroupConfigurations() const
void SetLatestResourceDiscoveryTime(LatestResourceDiscoveryTimeT &&value)
LicenseAssetGroup & WithName(NameT &&value)
void SetLicenseAssetGroupArn(LicenseAssetGroupArnT &&value)
LicenseAssetGroup & AddProperties(PropertiesT &&value)
const Aws::Vector< LicenseAssetGroupProperty > & GetProperties() const
LicenseAssetGroup & AddLicenseAssetGroupConfigurations(LicenseAssetGroupConfigurationsT &&value)
void SetLatestUsageAnalysisTime(LatestUsageAnalysisTimeT &&value)
const Aws::Utils::DateTime & GetLatestUsageAnalysisTime() const
LicenseAssetGroup & WithLatestResourceDiscoveryTime(LatestResourceDiscoveryTimeT &&value)
LicenseAssetGroup & WithProperties(PropertiesT &&value)
AWS_LICENSEMANAGER_API LicenseAssetGroup & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_LICENSEMANAGER_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< Aws::String > & GetAssociatedLicenseAssetRulesetARNs() const
AWS_LICENSEMANAGER_API LicenseAssetGroup(Aws::Utils::Json::JsonView jsonValue)
void SetStatus(LicenseAssetGroupStatus value)
LicenseAssetGroup & WithLicenseAssetGroupConfigurations(LicenseAssetGroupConfigurationsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue