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/dms/DatabaseMigrationService_EXPORTS.h>
21namespace DatabaseMigrationService {
44 template <
typename InstanceProfileArnT = Aws::String>
46 m_instanceProfileArnHasBeenSet =
true;
47 m_instanceProfileArn = std::forward<InstanceProfileArnT>(value);
49 template <
typename InstanceProfileArnT = Aws::String>
62 template <
typename AvailabilityZoneT = Aws::String>
64 m_availabilityZoneHasBeenSet =
true;
65 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
67 template <
typename AvailabilityZoneT = Aws::String>
83 template <
typename KmsKeyArnT = Aws::String>
85 m_kmsKeyArnHasBeenSet =
true;
86 m_kmsKeyArn = std::forward<KmsKeyArnT>(value);
88 template <
typename KmsKeyArnT = Aws::String>
105 m_publiclyAccessibleHasBeenSet =
true;
106 m_publiclyAccessible = value;
125 template <
typename NetworkTypeT = Aws::String>
127 m_networkTypeHasBeenSet =
true;
128 m_networkType = std::forward<NetworkTypeT>(value);
130 template <
typename NetworkTypeT = Aws::String>
143 template <
typename InstanceProfileNameT = Aws::String>
145 m_instanceProfileNameHasBeenSet =
true;
146 m_instanceProfileName = std::forward<InstanceProfileNameT>(value);
148 template <
typename InstanceProfileNameT = Aws::String>
164 template <
typename DescriptionT = Aws::String>
166 m_descriptionHasBeenSet =
true;
167 m_description = std::forward<DescriptionT>(value);
169 template <
typename DescriptionT = Aws::String>
182 template <
typename InstanceProfileCreationTimeT = Aws::Utils::DateTime>
184 m_instanceProfileCreationTimeHasBeenSet =
true;
185 m_instanceProfileCreationTime = std::forward<InstanceProfileCreationTimeT>(value);
187 template <
typename InstanceProfileCreationTimeT = Aws::Utils::DateTime>
201 template <
typename SubnetGroupIdentifierT = Aws::String>
203 m_subnetGroupIdentifierHasBeenSet =
true;
204 m_subnetGroupIdentifier = std::forward<SubnetGroupIdentifierT>(value);
206 template <
typename SubnetGroupIdentifierT = Aws::String>
220 template <
typename VpcSecurityGroupsT = Aws::Vector<Aws::String>>
222 m_vpcSecurityGroupsHasBeenSet =
true;
223 m_vpcSecurityGroups = std::forward<VpcSecurityGroupsT>(value);
225 template <
typename VpcSecurityGroupsT = Aws::Vector<Aws::String>>
230 template <
typename VpcSecurityGroupsT = Aws::String>
232 m_vpcSecurityGroupsHasBeenSet =
true;
233 m_vpcSecurityGroups.emplace_back(std::forward<VpcSecurityGroupsT>(value));
244 bool m_publiclyAccessible{
false};
257 bool m_instanceProfileArnHasBeenSet =
false;
258 bool m_availabilityZoneHasBeenSet =
false;
259 bool m_kmsKeyArnHasBeenSet =
false;
260 bool m_publiclyAccessibleHasBeenSet =
false;
261 bool m_networkTypeHasBeenSet =
false;
262 bool m_instanceProfileNameHasBeenSet =
false;
263 bool m_descriptionHasBeenSet =
false;
264 bool m_instanceProfileCreationTimeHasBeenSet =
false;
265 bool m_subnetGroupIdentifierHasBeenSet =
false;
266 bool m_vpcSecurityGroupsHasBeenSet =
false;
const Aws::String & GetInstanceProfileName() const
InstanceProfile & WithNetworkType(NetworkTypeT &&value)
bool PubliclyAccessibleHasBeenSet() const
InstanceProfile & WithVpcSecurityGroups(VpcSecurityGroupsT &&value)
bool InstanceProfileNameHasBeenSet() const
void SetInstanceProfileCreationTime(InstanceProfileCreationTimeT &&value)
bool InstanceProfileCreationTimeHasBeenSet() const
bool AvailabilityZoneHasBeenSet() const
InstanceProfile & WithInstanceProfileName(InstanceProfileNameT &&value)
bool SubnetGroupIdentifierHasBeenSet() const
void SetNetworkType(NetworkTypeT &&value)
InstanceProfile & WithKmsKeyArn(KmsKeyArnT &&value)
void SetVpcSecurityGroups(VpcSecurityGroupsT &&value)
const Aws::String & GetNetworkType() const
void SetSubnetGroupIdentifier(SubnetGroupIdentifierT &&value)
AWS_DATABASEMIGRATIONSERVICE_API InstanceProfile(Aws::Utils::Json::JsonView jsonValue)
InstanceProfile & AddVpcSecurityGroups(VpcSecurityGroupsT &&value)
bool InstanceProfileArnHasBeenSet() const
InstanceProfile & WithInstanceProfileArn(InstanceProfileArnT &&value)
void SetInstanceProfileName(InstanceProfileNameT &&value)
AWS_DATABASEMIGRATIONSERVICE_API InstanceProfile()=default
InstanceProfile & WithDescription(DescriptionT &&value)
const Aws::String & GetSubnetGroupIdentifier() const
AWS_DATABASEMIGRATIONSERVICE_API InstanceProfile & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetAvailabilityZone() const
AWS_DATABASEMIGRATIONSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const
void SetAvailabilityZone(AvailabilityZoneT &&value)
const Aws::Utils::DateTime & GetInstanceProfileCreationTime() const
const Aws::Vector< Aws::String > & GetVpcSecurityGroups() const
InstanceProfile & WithInstanceProfileCreationTime(InstanceProfileCreationTimeT &&value)
const Aws::String & GetKmsKeyArn() const
const Aws::String & GetInstanceProfileArn() const
void SetDescription(DescriptionT &&value)
void SetKmsKeyArn(KmsKeyArnT &&value)
bool KmsKeyArnHasBeenSet() const
void SetPubliclyAccessible(bool value)
InstanceProfile & WithSubnetGroupIdentifier(SubnetGroupIdentifierT &&value)
void SetInstanceProfileArn(InstanceProfileArnT &&value)
bool VpcSecurityGroupsHasBeenSet() const
bool DescriptionHasBeenSet() const
bool NetworkTypeHasBeenSet() const
const Aws::String & GetDescription() const
InstanceProfile & WithAvailabilityZone(AvailabilityZoneT &&value)
InstanceProfile & WithPubliclyAccessible(bool value)
bool GetPubliclyAccessible() 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