AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
InstanceProfile.h
1
6#pragma once
7#include <aws/dms/DatabaseMigrationService_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 <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace DatabaseMigrationService
24{
25namespace Model
26{
27
35 {
36 public:
37 AWS_DATABASEMIGRATIONSERVICE_API InstanceProfile() = default;
38 AWS_DATABASEMIGRATIONSERVICE_API InstanceProfile(Aws::Utils::Json::JsonView jsonValue);
39 AWS_DATABASEMIGRATIONSERVICE_API InstanceProfile& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_DATABASEMIGRATIONSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
48 inline const Aws::String& GetInstanceProfileArn() const { return m_instanceProfileArn; }
49 inline bool InstanceProfileArnHasBeenSet() const { return m_instanceProfileArnHasBeenSet; }
50 template<typename InstanceProfileArnT = Aws::String>
51 void SetInstanceProfileArn(InstanceProfileArnT&& value) { m_instanceProfileArnHasBeenSet = true; m_instanceProfileArn = std::forward<InstanceProfileArnT>(value); }
52 template<typename InstanceProfileArnT = Aws::String>
53 InstanceProfile& WithInstanceProfileArn(InstanceProfileArnT&& value) { SetInstanceProfileArn(std::forward<InstanceProfileArnT>(value)); return *this;}
55
57
60 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
61 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
62 template<typename AvailabilityZoneT = Aws::String>
63 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
64 template<typename AvailabilityZoneT = Aws::String>
65 InstanceProfile& WithAvailabilityZone(AvailabilityZoneT&& value) { SetAvailabilityZone(std::forward<AvailabilityZoneT>(value)); return *this;}
67
69
77 inline const Aws::String& GetKmsKeyArn() const { return m_kmsKeyArn; }
78 inline bool KmsKeyArnHasBeenSet() const { return m_kmsKeyArnHasBeenSet; }
79 template<typename KmsKeyArnT = Aws::String>
80 void SetKmsKeyArn(KmsKeyArnT&& value) { m_kmsKeyArnHasBeenSet = true; m_kmsKeyArn = std::forward<KmsKeyArnT>(value); }
81 template<typename KmsKeyArnT = Aws::String>
82 InstanceProfile& WithKmsKeyArn(KmsKeyArnT&& value) { SetKmsKeyArn(std::forward<KmsKeyArnT>(value)); return *this;}
84
86
92 inline bool GetPubliclyAccessible() const { return m_publiclyAccessible; }
93 inline bool PubliclyAccessibleHasBeenSet() const { return m_publiclyAccessibleHasBeenSet; }
94 inline void SetPubliclyAccessible(bool value) { m_publiclyAccessibleHasBeenSet = true; m_publiclyAccessible = value; }
95 inline InstanceProfile& WithPubliclyAccessible(bool value) { SetPubliclyAccessible(value); return *this;}
97
99
107 inline const Aws::String& GetNetworkType() const { return m_networkType; }
108 inline bool NetworkTypeHasBeenSet() const { return m_networkTypeHasBeenSet; }
109 template<typename NetworkTypeT = Aws::String>
110 void SetNetworkType(NetworkTypeT&& value) { m_networkTypeHasBeenSet = true; m_networkType = std::forward<NetworkTypeT>(value); }
111 template<typename NetworkTypeT = Aws::String>
112 InstanceProfile& WithNetworkType(NetworkTypeT&& value) { SetNetworkType(std::forward<NetworkTypeT>(value)); return *this;}
114
116
119 inline const Aws::String& GetInstanceProfileName() const { return m_instanceProfileName; }
120 inline bool InstanceProfileNameHasBeenSet() const { return m_instanceProfileNameHasBeenSet; }
121 template<typename InstanceProfileNameT = Aws::String>
122 void SetInstanceProfileName(InstanceProfileNameT&& value) { m_instanceProfileNameHasBeenSet = true; m_instanceProfileName = std::forward<InstanceProfileNameT>(value); }
123 template<typename InstanceProfileNameT = Aws::String>
124 InstanceProfile& WithInstanceProfileName(InstanceProfileNameT&& value) { SetInstanceProfileName(std::forward<InstanceProfileNameT>(value)); return *this;}
126
128
134 inline const Aws::String& GetDescription() const { return m_description; }
135 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
136 template<typename DescriptionT = Aws::String>
137 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
138 template<typename DescriptionT = Aws::String>
139 InstanceProfile& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
141
143
146 inline const Aws::Utils::DateTime& GetInstanceProfileCreationTime() const { return m_instanceProfileCreationTime; }
147 inline bool InstanceProfileCreationTimeHasBeenSet() const { return m_instanceProfileCreationTimeHasBeenSet; }
148 template<typename InstanceProfileCreationTimeT = Aws::Utils::DateTime>
149 void SetInstanceProfileCreationTime(InstanceProfileCreationTimeT&& value) { m_instanceProfileCreationTimeHasBeenSet = true; m_instanceProfileCreationTime = std::forward<InstanceProfileCreationTimeT>(value); }
150 template<typename InstanceProfileCreationTimeT = Aws::Utils::DateTime>
151 InstanceProfile& WithInstanceProfileCreationTime(InstanceProfileCreationTimeT&& value) { SetInstanceProfileCreationTime(std::forward<InstanceProfileCreationTimeT>(value)); return *this;}
153
155
159 inline const Aws::String& GetSubnetGroupIdentifier() const { return m_subnetGroupIdentifier; }
160 inline bool SubnetGroupIdentifierHasBeenSet() const { return m_subnetGroupIdentifierHasBeenSet; }
161 template<typename SubnetGroupIdentifierT = Aws::String>
162 void SetSubnetGroupIdentifier(SubnetGroupIdentifierT&& value) { m_subnetGroupIdentifierHasBeenSet = true; m_subnetGroupIdentifier = std::forward<SubnetGroupIdentifierT>(value); }
163 template<typename SubnetGroupIdentifierT = Aws::String>
164 InstanceProfile& WithSubnetGroupIdentifier(SubnetGroupIdentifierT&& value) { SetSubnetGroupIdentifier(std::forward<SubnetGroupIdentifierT>(value)); return *this;}
166
168
172 inline const Aws::Vector<Aws::String>& GetVpcSecurityGroups() const { return m_vpcSecurityGroups; }
173 inline bool VpcSecurityGroupsHasBeenSet() const { return m_vpcSecurityGroupsHasBeenSet; }
174 template<typename VpcSecurityGroupsT = Aws::Vector<Aws::String>>
175 void SetVpcSecurityGroups(VpcSecurityGroupsT&& value) { m_vpcSecurityGroupsHasBeenSet = true; m_vpcSecurityGroups = std::forward<VpcSecurityGroupsT>(value); }
176 template<typename VpcSecurityGroupsT = Aws::Vector<Aws::String>>
177 InstanceProfile& WithVpcSecurityGroups(VpcSecurityGroupsT&& value) { SetVpcSecurityGroups(std::forward<VpcSecurityGroupsT>(value)); return *this;}
178 template<typename VpcSecurityGroupsT = Aws::String>
179 InstanceProfile& AddVpcSecurityGroups(VpcSecurityGroupsT&& value) { m_vpcSecurityGroupsHasBeenSet = true; m_vpcSecurityGroups.emplace_back(std::forward<VpcSecurityGroupsT>(value)); return *this; }
181 private:
182
183 Aws::String m_instanceProfileArn;
184 bool m_instanceProfileArnHasBeenSet = false;
185
186 Aws::String m_availabilityZone;
187 bool m_availabilityZoneHasBeenSet = false;
188
189 Aws::String m_kmsKeyArn;
190 bool m_kmsKeyArnHasBeenSet = false;
191
192 bool m_publiclyAccessible{false};
193 bool m_publiclyAccessibleHasBeenSet = false;
194
195 Aws::String m_networkType;
196 bool m_networkTypeHasBeenSet = false;
197
198 Aws::String m_instanceProfileName;
199 bool m_instanceProfileNameHasBeenSet = false;
200
201 Aws::String m_description;
202 bool m_descriptionHasBeenSet = false;
203
204 Aws::Utils::DateTime m_instanceProfileCreationTime{};
205 bool m_instanceProfileCreationTimeHasBeenSet = false;
206
207 Aws::String m_subnetGroupIdentifier;
208 bool m_subnetGroupIdentifierHasBeenSet = false;
209
210 Aws::Vector<Aws::String> m_vpcSecurityGroups;
211 bool m_vpcSecurityGroupsHasBeenSet = false;
212 };
213
214} // namespace Model
215} // namespace DatabaseMigrationService
216} // namespace Aws
InstanceProfile & WithNetworkType(NetworkTypeT &&value)
InstanceProfile & WithVpcSecurityGroups(VpcSecurityGroupsT &&value)
void SetInstanceProfileCreationTime(InstanceProfileCreationTimeT &&value)
InstanceProfile & WithInstanceProfileName(InstanceProfileNameT &&value)
InstanceProfile & WithKmsKeyArn(KmsKeyArnT &&value)
void SetVpcSecurityGroups(VpcSecurityGroupsT &&value)
void SetSubnetGroupIdentifier(SubnetGroupIdentifierT &&value)
AWS_DATABASEMIGRATIONSERVICE_API InstanceProfile(Aws::Utils::Json::JsonView jsonValue)
InstanceProfile & AddVpcSecurityGroups(VpcSecurityGroupsT &&value)
InstanceProfile & WithInstanceProfileArn(InstanceProfileArnT &&value)
void SetInstanceProfileName(InstanceProfileNameT &&value)
AWS_DATABASEMIGRATIONSERVICE_API InstanceProfile()=default
InstanceProfile & WithDescription(DescriptionT &&value)
AWS_DATABASEMIGRATIONSERVICE_API InstanceProfile & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_DATABASEMIGRATIONSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Utils::DateTime & GetInstanceProfileCreationTime() const
const Aws::Vector< Aws::String > & GetVpcSecurityGroups() const
InstanceProfile & WithInstanceProfileCreationTime(InstanceProfileCreationTimeT &&value)
InstanceProfile & WithSubnetGroupIdentifier(SubnetGroupIdentifierT &&value)
void SetInstanceProfileArn(InstanceProfileArnT &&value)
InstanceProfile & WithAvailabilityZone(AvailabilityZoneT &&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