7#include <aws/guardduty/GuardDuty_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/guardduty/model/IamInstanceProfile.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/guardduty/model/NetworkInterface.h>
12#include <aws/guardduty/model/ProductCode.h>
13#include <aws/guardduty/model/Tag.h>
52 template<
typename AvailabilityZoneT = Aws::String>
53 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet =
true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
54 template<
typename AvailabilityZoneT = Aws::String>
64 template<
typename IamInstanceProfileT = IamInstanceProfile>
65 void SetIamInstanceProfile(IamInstanceProfileT&& value) { m_iamInstanceProfileHasBeenSet =
true; m_iamInstanceProfile = std::forward<IamInstanceProfileT>(value); }
66 template<
typename IamInstanceProfileT = IamInstanceProfile>
76 template<
typename ImageDescriptionT = Aws::String>
77 void SetImageDescription(ImageDescriptionT&& value) { m_imageDescriptionHasBeenSet =
true; m_imageDescription = std::forward<ImageDescriptionT>(value); }
78 template<
typename ImageDescriptionT = Aws::String>
88 template<
typename ImageIdT = Aws::String>
89 void SetImageId(ImageIdT&& value) { m_imageIdHasBeenSet =
true; m_imageId = std::forward<ImageIdT>(value); }
90 template<
typename ImageIdT = Aws::String>
100 template<
typename InstanceIdT = Aws::String>
101 void SetInstanceId(InstanceIdT&& value) { m_instanceIdHasBeenSet =
true; m_instanceId = std::forward<InstanceIdT>(value); }
102 template<
typename InstanceIdT = Aws::String>
112 template<
typename InstanceStateT = Aws::String>
113 void SetInstanceState(InstanceStateT&& value) { m_instanceStateHasBeenSet =
true; m_instanceState = std::forward<InstanceStateT>(value); }
114 template<
typename InstanceStateT = Aws::String>
124 template<
typename InstanceTypeT = Aws::String>
125 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet =
true; m_instanceType = std::forward<InstanceTypeT>(value); }
126 template<
typename InstanceTypeT = Aws::String>
137 template<
typename OutpostArnT = Aws::String>
138 void SetOutpostArn(OutpostArnT&& value) { m_outpostArnHasBeenSet =
true; m_outpostArn = std::forward<OutpostArnT>(value); }
139 template<
typename OutpostArnT = Aws::String>
149 template<
typename LaunchTimeT = Aws::String>
150 void SetLaunchTime(LaunchTimeT&& value) { m_launchTimeHasBeenSet =
true; m_launchTime = std::forward<LaunchTimeT>(value); }
151 template<
typename LaunchTimeT = Aws::String>
161 template<
typename NetworkInterfacesT = Aws::Vector<NetworkInterface>>
162 void SetNetworkInterfaces(NetworkInterfacesT&& value) { m_networkInterfacesHasBeenSet =
true; m_networkInterfaces = std::forward<NetworkInterfacesT>(value); }
163 template<
typename NetworkInterfacesT = Aws::Vector<NetworkInterface>>
165 template<
typename NetworkInterfacesT = NetworkInterface>
166 InstanceDetails&
AddNetworkInterfaces(NetworkInterfacesT&& value) { m_networkInterfacesHasBeenSet =
true; m_networkInterfaces.emplace_back(std::forward<NetworkInterfacesT>(value));
return *
this; }
175 template<
typename PlatformT = Aws::String>
176 void SetPlatform(PlatformT&& value) { m_platformHasBeenSet =
true; m_platform = std::forward<PlatformT>(value); }
177 template<
typename PlatformT = Aws::String>
187 template<
typename ProductCodesT = Aws::Vector<ProductCode>>
188 void SetProductCodes(ProductCodesT&& value) { m_productCodesHasBeenSet =
true; m_productCodes = std::forward<ProductCodesT>(value); }
189 template<
typename ProductCodesT = Aws::Vector<ProductCode>>
191 template<
typename ProductCodesT = ProductCode>
192 InstanceDetails&
AddProductCodes(ProductCodesT&& value) { m_productCodesHasBeenSet =
true; m_productCodes.emplace_back(std::forward<ProductCodesT>(value));
return *
this; }
201 template<
typename TagsT = Aws::Vector<Tag>>
202 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
203 template<
typename TagsT = Aws::Vector<Tag>>
205 template<
typename TagsT = Tag>
206 InstanceDetails&
AddTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags.emplace_back(std::forward<TagsT>(value));
return *
this; }
211 bool m_availabilityZoneHasBeenSet =
false;
214 bool m_iamInstanceProfileHasBeenSet =
false;
217 bool m_imageDescriptionHasBeenSet =
false;
220 bool m_imageIdHasBeenSet =
false;
223 bool m_instanceIdHasBeenSet =
false;
226 bool m_instanceStateHasBeenSet =
false;
229 bool m_instanceTypeHasBeenSet =
false;
232 bool m_outpostArnHasBeenSet =
false;
235 bool m_launchTimeHasBeenSet =
false;
238 bool m_networkInterfacesHasBeenSet =
false;
241 bool m_platformHasBeenSet =
false;
244 bool m_productCodesHasBeenSet =
false;
247 bool m_tagsHasBeenSet =
false;
InstanceDetails & WithOutpostArn(OutpostArnT &&value)
bool OutpostArnHasBeenSet() const
InstanceDetails & AddProductCodes(ProductCodesT &&value)
AWS_GUARDDUTY_API InstanceDetails(Aws::Utils::Json::JsonView jsonValue)
bool ImageIdHasBeenSet() const
InstanceDetails & WithPlatform(PlatformT &&value)
bool ImageDescriptionHasBeenSet() const
AWS_GUARDDUTY_API Aws::Utils::Json::JsonValue Jsonize() const
bool LaunchTimeHasBeenSet() const
void SetIamInstanceProfile(IamInstanceProfileT &&value)
InstanceDetails & WithInstanceType(InstanceTypeT &&value)
const Aws::String & GetInstanceType() const
InstanceDetails & AddNetworkInterfaces(NetworkInterfacesT &&value)
InstanceDetails & WithIamInstanceProfile(IamInstanceProfileT &&value)
InstanceDetails & WithNetworkInterfaces(NetworkInterfacesT &&value)
const Aws::Vector< NetworkInterface > & GetNetworkInterfaces() const
bool ProductCodesHasBeenSet() const
const Aws::String & GetOutpostArn() const
InstanceDetails & WithLaunchTime(LaunchTimeT &&value)
const Aws::Vector< Tag > & GetTags() const
bool NetworkInterfacesHasBeenSet() const
bool TagsHasBeenSet() const
bool InstanceTypeHasBeenSet() const
InstanceDetails & WithProductCodes(ProductCodesT &&value)
void SetImageDescription(ImageDescriptionT &&value)
InstanceDetails & WithTags(TagsT &&value)
void SetInstanceState(InstanceStateT &&value)
const Aws::String & GetInstanceState() const
void SetInstanceId(InstanceIdT &&value)
bool AvailabilityZoneHasBeenSet() const
AWS_GUARDDUTY_API InstanceDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetOutpostArn(OutpostArnT &&value)
void SetInstanceType(InstanceTypeT &&value)
void SetProductCodes(ProductCodesT &&value)
InstanceDetails & AddTags(TagsT &&value)
AWS_GUARDDUTY_API InstanceDetails()=default
const Aws::String & GetInstanceId() const
const Aws::Vector< ProductCode > & GetProductCodes() const
InstanceDetails & WithInstanceId(InstanceIdT &&value)
InstanceDetails & WithImageId(ImageIdT &&value)
bool InstanceStateHasBeenSet() const
const Aws::String & GetLaunchTime() const
void SetAvailabilityZone(AvailabilityZoneT &&value)
const Aws::String & GetImageDescription() const
InstanceDetails & WithInstanceState(InstanceStateT &&value)
InstanceDetails & WithImageDescription(ImageDescriptionT &&value)
const Aws::String & GetAvailabilityZone() const
const Aws::String & GetPlatform() const
InstanceDetails & WithAvailabilityZone(AvailabilityZoneT &&value)
void SetImageId(ImageIdT &&value)
void SetLaunchTime(LaunchTimeT &&value)
void SetNetworkInterfaces(NetworkInterfacesT &&value)
bool PlatformHasBeenSet() const
void SetTags(TagsT &&value)
bool IamInstanceProfileHasBeenSet() const
const IamInstanceProfile & GetIamInstanceProfile() const
bool InstanceIdHasBeenSet() const
void SetPlatform(PlatformT &&value)
const Aws::String & GetImageId() 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