1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/ec2/EC2_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSStreamFwd.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/core/utils/memory/stl/AWSVector.h> 11 #include <aws/ec2/model/DnsNameState.h> 12 #include <aws/ec2/model/ServiceTypeDetail.h> 13 #include <aws/ec2/model/PrivateDnsDetails.h> 14 #include <aws/ec2/model/Tag.h> 15 #include <utility> 16 17 namespace Aws 18 { 19 namespace Utils 20 { 21 namespace Xml 22 { 23 class XmlNode; 24 } // namespace Xml 25 } // namespace Utils 26 namespace EC2 27 { 28 namespace Model 29 { 30 31 /** 32 * <p>Describes a VPC endpoint service.</p><p><h3>See Also:</h3> <a 33 * href="http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ServiceDetail">AWS 34 * API Reference</a></p> 35 */ 36 class AWS_EC2_API ServiceDetail 37 { 38 public: 39 ServiceDetail(); 40 ServiceDetail(const Aws::Utils::Xml::XmlNode& xmlNode); 41 ServiceDetail& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); 42 43 void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; 44 void OutputToStream(Aws::OStream& oStream, const char* location) const; 45 46 47 /** 48 * <p>The Amazon Resource Name (ARN) of the service.</p> 49 */ GetServiceName()50 inline const Aws::String& GetServiceName() const{ return m_serviceName; } 51 52 /** 53 * <p>The Amazon Resource Name (ARN) of the service.</p> 54 */ ServiceNameHasBeenSet()55 inline bool ServiceNameHasBeenSet() const { return m_serviceNameHasBeenSet; } 56 57 /** 58 * <p>The Amazon Resource Name (ARN) of the service.</p> 59 */ SetServiceName(const Aws::String & value)60 inline void SetServiceName(const Aws::String& value) { m_serviceNameHasBeenSet = true; m_serviceName = value; } 61 62 /** 63 * <p>The Amazon Resource Name (ARN) of the service.</p> 64 */ SetServiceName(Aws::String && value)65 inline void SetServiceName(Aws::String&& value) { m_serviceNameHasBeenSet = true; m_serviceName = std::move(value); } 66 67 /** 68 * <p>The Amazon Resource Name (ARN) of the service.</p> 69 */ SetServiceName(const char * value)70 inline void SetServiceName(const char* value) { m_serviceNameHasBeenSet = true; m_serviceName.assign(value); } 71 72 /** 73 * <p>The Amazon Resource Name (ARN) of the service.</p> 74 */ WithServiceName(const Aws::String & value)75 inline ServiceDetail& WithServiceName(const Aws::String& value) { SetServiceName(value); return *this;} 76 77 /** 78 * <p>The Amazon Resource Name (ARN) of the service.</p> 79 */ WithServiceName(Aws::String && value)80 inline ServiceDetail& WithServiceName(Aws::String&& value) { SetServiceName(std::move(value)); return *this;} 81 82 /** 83 * <p>The Amazon Resource Name (ARN) of the service.</p> 84 */ WithServiceName(const char * value)85 inline ServiceDetail& WithServiceName(const char* value) { SetServiceName(value); return *this;} 86 87 88 /** 89 * <p>The ID of the endpoint service.</p> 90 */ GetServiceId()91 inline const Aws::String& GetServiceId() const{ return m_serviceId; } 92 93 /** 94 * <p>The ID of the endpoint service.</p> 95 */ ServiceIdHasBeenSet()96 inline bool ServiceIdHasBeenSet() const { return m_serviceIdHasBeenSet; } 97 98 /** 99 * <p>The ID of the endpoint service.</p> 100 */ SetServiceId(const Aws::String & value)101 inline void SetServiceId(const Aws::String& value) { m_serviceIdHasBeenSet = true; m_serviceId = value; } 102 103 /** 104 * <p>The ID of the endpoint service.</p> 105 */ SetServiceId(Aws::String && value)106 inline void SetServiceId(Aws::String&& value) { m_serviceIdHasBeenSet = true; m_serviceId = std::move(value); } 107 108 /** 109 * <p>The ID of the endpoint service.</p> 110 */ SetServiceId(const char * value)111 inline void SetServiceId(const char* value) { m_serviceIdHasBeenSet = true; m_serviceId.assign(value); } 112 113 /** 114 * <p>The ID of the endpoint service.</p> 115 */ WithServiceId(const Aws::String & value)116 inline ServiceDetail& WithServiceId(const Aws::String& value) { SetServiceId(value); return *this;} 117 118 /** 119 * <p>The ID of the endpoint service.</p> 120 */ WithServiceId(Aws::String && value)121 inline ServiceDetail& WithServiceId(Aws::String&& value) { SetServiceId(std::move(value)); return *this;} 122 123 /** 124 * <p>The ID of the endpoint service.</p> 125 */ WithServiceId(const char * value)126 inline ServiceDetail& WithServiceId(const char* value) { SetServiceId(value); return *this;} 127 128 129 /** 130 * <p>The type of service.</p> 131 */ GetServiceType()132 inline const Aws::Vector<ServiceTypeDetail>& GetServiceType() const{ return m_serviceType; } 133 134 /** 135 * <p>The type of service.</p> 136 */ ServiceTypeHasBeenSet()137 inline bool ServiceTypeHasBeenSet() const { return m_serviceTypeHasBeenSet; } 138 139 /** 140 * <p>The type of service.</p> 141 */ SetServiceType(const Aws::Vector<ServiceTypeDetail> & value)142 inline void SetServiceType(const Aws::Vector<ServiceTypeDetail>& value) { m_serviceTypeHasBeenSet = true; m_serviceType = value; } 143 144 /** 145 * <p>The type of service.</p> 146 */ SetServiceType(Aws::Vector<ServiceTypeDetail> && value)147 inline void SetServiceType(Aws::Vector<ServiceTypeDetail>&& value) { m_serviceTypeHasBeenSet = true; m_serviceType = std::move(value); } 148 149 /** 150 * <p>The type of service.</p> 151 */ WithServiceType(const Aws::Vector<ServiceTypeDetail> & value)152 inline ServiceDetail& WithServiceType(const Aws::Vector<ServiceTypeDetail>& value) { SetServiceType(value); return *this;} 153 154 /** 155 * <p>The type of service.</p> 156 */ WithServiceType(Aws::Vector<ServiceTypeDetail> && value)157 inline ServiceDetail& WithServiceType(Aws::Vector<ServiceTypeDetail>&& value) { SetServiceType(std::move(value)); return *this;} 158 159 /** 160 * <p>The type of service.</p> 161 */ AddServiceType(const ServiceTypeDetail & value)162 inline ServiceDetail& AddServiceType(const ServiceTypeDetail& value) { m_serviceTypeHasBeenSet = true; m_serviceType.push_back(value); return *this; } 163 164 /** 165 * <p>The type of service.</p> 166 */ AddServiceType(ServiceTypeDetail && value)167 inline ServiceDetail& AddServiceType(ServiceTypeDetail&& value) { m_serviceTypeHasBeenSet = true; m_serviceType.push_back(std::move(value)); return *this; } 168 169 170 /** 171 * <p>The Availability Zones in which the service is available.</p> 172 */ GetAvailabilityZones()173 inline const Aws::Vector<Aws::String>& GetAvailabilityZones() const{ return m_availabilityZones; } 174 175 /** 176 * <p>The Availability Zones in which the service is available.</p> 177 */ AvailabilityZonesHasBeenSet()178 inline bool AvailabilityZonesHasBeenSet() const { return m_availabilityZonesHasBeenSet; } 179 180 /** 181 * <p>The Availability Zones in which the service is available.</p> 182 */ SetAvailabilityZones(const Aws::Vector<Aws::String> & value)183 inline void SetAvailabilityZones(const Aws::Vector<Aws::String>& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = value; } 184 185 /** 186 * <p>The Availability Zones in which the service is available.</p> 187 */ SetAvailabilityZones(Aws::Vector<Aws::String> && value)188 inline void SetAvailabilityZones(Aws::Vector<Aws::String>&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = std::move(value); } 189 190 /** 191 * <p>The Availability Zones in which the service is available.</p> 192 */ WithAvailabilityZones(const Aws::Vector<Aws::String> & value)193 inline ServiceDetail& WithAvailabilityZones(const Aws::Vector<Aws::String>& value) { SetAvailabilityZones(value); return *this;} 194 195 /** 196 * <p>The Availability Zones in which the service is available.</p> 197 */ WithAvailabilityZones(Aws::Vector<Aws::String> && value)198 inline ServiceDetail& WithAvailabilityZones(Aws::Vector<Aws::String>&& value) { SetAvailabilityZones(std::move(value)); return *this;} 199 200 /** 201 * <p>The Availability Zones in which the service is available.</p> 202 */ AddAvailabilityZones(const Aws::String & value)203 inline ServiceDetail& AddAvailabilityZones(const Aws::String& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; } 204 205 /** 206 * <p>The Availability Zones in which the service is available.</p> 207 */ AddAvailabilityZones(Aws::String && value)208 inline ServiceDetail& AddAvailabilityZones(Aws::String&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(std::move(value)); return *this; } 209 210 /** 211 * <p>The Availability Zones in which the service is available.</p> 212 */ AddAvailabilityZones(const char * value)213 inline ServiceDetail& AddAvailabilityZones(const char* value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; } 214 215 216 /** 217 * <p>The Amazon Web Services account ID of the service owner.</p> 218 */ GetOwner()219 inline const Aws::String& GetOwner() const{ return m_owner; } 220 221 /** 222 * <p>The Amazon Web Services account ID of the service owner.</p> 223 */ OwnerHasBeenSet()224 inline bool OwnerHasBeenSet() const { return m_ownerHasBeenSet; } 225 226 /** 227 * <p>The Amazon Web Services account ID of the service owner.</p> 228 */ SetOwner(const Aws::String & value)229 inline void SetOwner(const Aws::String& value) { m_ownerHasBeenSet = true; m_owner = value; } 230 231 /** 232 * <p>The Amazon Web Services account ID of the service owner.</p> 233 */ SetOwner(Aws::String && value)234 inline void SetOwner(Aws::String&& value) { m_ownerHasBeenSet = true; m_owner = std::move(value); } 235 236 /** 237 * <p>The Amazon Web Services account ID of the service owner.</p> 238 */ SetOwner(const char * value)239 inline void SetOwner(const char* value) { m_ownerHasBeenSet = true; m_owner.assign(value); } 240 241 /** 242 * <p>The Amazon Web Services account ID of the service owner.</p> 243 */ WithOwner(const Aws::String & value)244 inline ServiceDetail& WithOwner(const Aws::String& value) { SetOwner(value); return *this;} 245 246 /** 247 * <p>The Amazon Web Services account ID of the service owner.</p> 248 */ WithOwner(Aws::String && value)249 inline ServiceDetail& WithOwner(Aws::String&& value) { SetOwner(std::move(value)); return *this;} 250 251 /** 252 * <p>The Amazon Web Services account ID of the service owner.</p> 253 */ WithOwner(const char * value)254 inline ServiceDetail& WithOwner(const char* value) { SetOwner(value); return *this;} 255 256 257 /** 258 * <p>The DNS names for the service.</p> 259 */ GetBaseEndpointDnsNames()260 inline const Aws::Vector<Aws::String>& GetBaseEndpointDnsNames() const{ return m_baseEndpointDnsNames; } 261 262 /** 263 * <p>The DNS names for the service.</p> 264 */ BaseEndpointDnsNamesHasBeenSet()265 inline bool BaseEndpointDnsNamesHasBeenSet() const { return m_baseEndpointDnsNamesHasBeenSet; } 266 267 /** 268 * <p>The DNS names for the service.</p> 269 */ SetBaseEndpointDnsNames(const Aws::Vector<Aws::String> & value)270 inline void SetBaseEndpointDnsNames(const Aws::Vector<Aws::String>& value) { m_baseEndpointDnsNamesHasBeenSet = true; m_baseEndpointDnsNames = value; } 271 272 /** 273 * <p>The DNS names for the service.</p> 274 */ SetBaseEndpointDnsNames(Aws::Vector<Aws::String> && value)275 inline void SetBaseEndpointDnsNames(Aws::Vector<Aws::String>&& value) { m_baseEndpointDnsNamesHasBeenSet = true; m_baseEndpointDnsNames = std::move(value); } 276 277 /** 278 * <p>The DNS names for the service.</p> 279 */ WithBaseEndpointDnsNames(const Aws::Vector<Aws::String> & value)280 inline ServiceDetail& WithBaseEndpointDnsNames(const Aws::Vector<Aws::String>& value) { SetBaseEndpointDnsNames(value); return *this;} 281 282 /** 283 * <p>The DNS names for the service.</p> 284 */ WithBaseEndpointDnsNames(Aws::Vector<Aws::String> && value)285 inline ServiceDetail& WithBaseEndpointDnsNames(Aws::Vector<Aws::String>&& value) { SetBaseEndpointDnsNames(std::move(value)); return *this;} 286 287 /** 288 * <p>The DNS names for the service.</p> 289 */ AddBaseEndpointDnsNames(const Aws::String & value)290 inline ServiceDetail& AddBaseEndpointDnsNames(const Aws::String& value) { m_baseEndpointDnsNamesHasBeenSet = true; m_baseEndpointDnsNames.push_back(value); return *this; } 291 292 /** 293 * <p>The DNS names for the service.</p> 294 */ AddBaseEndpointDnsNames(Aws::String && value)295 inline ServiceDetail& AddBaseEndpointDnsNames(Aws::String&& value) { m_baseEndpointDnsNamesHasBeenSet = true; m_baseEndpointDnsNames.push_back(std::move(value)); return *this; } 296 297 /** 298 * <p>The DNS names for the service.</p> 299 */ AddBaseEndpointDnsNames(const char * value)300 inline ServiceDetail& AddBaseEndpointDnsNames(const char* value) { m_baseEndpointDnsNamesHasBeenSet = true; m_baseEndpointDnsNames.push_back(value); return *this; } 301 302 303 /** 304 * <p>The private DNS name for the service.</p> 305 */ GetPrivateDnsName()306 inline const Aws::String& GetPrivateDnsName() const{ return m_privateDnsName; } 307 308 /** 309 * <p>The private DNS name for the service.</p> 310 */ PrivateDnsNameHasBeenSet()311 inline bool PrivateDnsNameHasBeenSet() const { return m_privateDnsNameHasBeenSet; } 312 313 /** 314 * <p>The private DNS name for the service.</p> 315 */ SetPrivateDnsName(const Aws::String & value)316 inline void SetPrivateDnsName(const Aws::String& value) { m_privateDnsNameHasBeenSet = true; m_privateDnsName = value; } 317 318 /** 319 * <p>The private DNS name for the service.</p> 320 */ SetPrivateDnsName(Aws::String && value)321 inline void SetPrivateDnsName(Aws::String&& value) { m_privateDnsNameHasBeenSet = true; m_privateDnsName = std::move(value); } 322 323 /** 324 * <p>The private DNS name for the service.</p> 325 */ SetPrivateDnsName(const char * value)326 inline void SetPrivateDnsName(const char* value) { m_privateDnsNameHasBeenSet = true; m_privateDnsName.assign(value); } 327 328 /** 329 * <p>The private DNS name for the service.</p> 330 */ WithPrivateDnsName(const Aws::String & value)331 inline ServiceDetail& WithPrivateDnsName(const Aws::String& value) { SetPrivateDnsName(value); return *this;} 332 333 /** 334 * <p>The private DNS name for the service.</p> 335 */ WithPrivateDnsName(Aws::String && value)336 inline ServiceDetail& WithPrivateDnsName(Aws::String&& value) { SetPrivateDnsName(std::move(value)); return *this;} 337 338 /** 339 * <p>The private DNS name for the service.</p> 340 */ WithPrivateDnsName(const char * value)341 inline ServiceDetail& WithPrivateDnsName(const char* value) { SetPrivateDnsName(value); return *this;} 342 343 344 /** 345 * <p>The private DNS names assigned to the VPC endpoint service. </p> 346 */ GetPrivateDnsNames()347 inline const Aws::Vector<PrivateDnsDetails>& GetPrivateDnsNames() const{ return m_privateDnsNames; } 348 349 /** 350 * <p>The private DNS names assigned to the VPC endpoint service. </p> 351 */ PrivateDnsNamesHasBeenSet()352 inline bool PrivateDnsNamesHasBeenSet() const { return m_privateDnsNamesHasBeenSet; } 353 354 /** 355 * <p>The private DNS names assigned to the VPC endpoint service. </p> 356 */ SetPrivateDnsNames(const Aws::Vector<PrivateDnsDetails> & value)357 inline void SetPrivateDnsNames(const Aws::Vector<PrivateDnsDetails>& value) { m_privateDnsNamesHasBeenSet = true; m_privateDnsNames = value; } 358 359 /** 360 * <p>The private DNS names assigned to the VPC endpoint service. </p> 361 */ SetPrivateDnsNames(Aws::Vector<PrivateDnsDetails> && value)362 inline void SetPrivateDnsNames(Aws::Vector<PrivateDnsDetails>&& value) { m_privateDnsNamesHasBeenSet = true; m_privateDnsNames = std::move(value); } 363 364 /** 365 * <p>The private DNS names assigned to the VPC endpoint service. </p> 366 */ WithPrivateDnsNames(const Aws::Vector<PrivateDnsDetails> & value)367 inline ServiceDetail& WithPrivateDnsNames(const Aws::Vector<PrivateDnsDetails>& value) { SetPrivateDnsNames(value); return *this;} 368 369 /** 370 * <p>The private DNS names assigned to the VPC endpoint service. </p> 371 */ WithPrivateDnsNames(Aws::Vector<PrivateDnsDetails> && value)372 inline ServiceDetail& WithPrivateDnsNames(Aws::Vector<PrivateDnsDetails>&& value) { SetPrivateDnsNames(std::move(value)); return *this;} 373 374 /** 375 * <p>The private DNS names assigned to the VPC endpoint service. </p> 376 */ AddPrivateDnsNames(const PrivateDnsDetails & value)377 inline ServiceDetail& AddPrivateDnsNames(const PrivateDnsDetails& value) { m_privateDnsNamesHasBeenSet = true; m_privateDnsNames.push_back(value); return *this; } 378 379 /** 380 * <p>The private DNS names assigned to the VPC endpoint service. </p> 381 */ AddPrivateDnsNames(PrivateDnsDetails && value)382 inline ServiceDetail& AddPrivateDnsNames(PrivateDnsDetails&& value) { m_privateDnsNamesHasBeenSet = true; m_privateDnsNames.push_back(std::move(value)); return *this; } 383 384 385 /** 386 * <p>Indicates whether the service supports endpoint policies.</p> 387 */ GetVpcEndpointPolicySupported()388 inline bool GetVpcEndpointPolicySupported() const{ return m_vpcEndpointPolicySupported; } 389 390 /** 391 * <p>Indicates whether the service supports endpoint policies.</p> 392 */ VpcEndpointPolicySupportedHasBeenSet()393 inline bool VpcEndpointPolicySupportedHasBeenSet() const { return m_vpcEndpointPolicySupportedHasBeenSet; } 394 395 /** 396 * <p>Indicates whether the service supports endpoint policies.</p> 397 */ SetVpcEndpointPolicySupported(bool value)398 inline void SetVpcEndpointPolicySupported(bool value) { m_vpcEndpointPolicySupportedHasBeenSet = true; m_vpcEndpointPolicySupported = value; } 399 400 /** 401 * <p>Indicates whether the service supports endpoint policies.</p> 402 */ WithVpcEndpointPolicySupported(bool value)403 inline ServiceDetail& WithVpcEndpointPolicySupported(bool value) { SetVpcEndpointPolicySupported(value); return *this;} 404 405 406 /** 407 * <p>Indicates whether VPC endpoint connection requests to the service must be 408 * accepted by the service owner.</p> 409 */ GetAcceptanceRequired()410 inline bool GetAcceptanceRequired() const{ return m_acceptanceRequired; } 411 412 /** 413 * <p>Indicates whether VPC endpoint connection requests to the service must be 414 * accepted by the service owner.</p> 415 */ AcceptanceRequiredHasBeenSet()416 inline bool AcceptanceRequiredHasBeenSet() const { return m_acceptanceRequiredHasBeenSet; } 417 418 /** 419 * <p>Indicates whether VPC endpoint connection requests to the service must be 420 * accepted by the service owner.</p> 421 */ SetAcceptanceRequired(bool value)422 inline void SetAcceptanceRequired(bool value) { m_acceptanceRequiredHasBeenSet = true; m_acceptanceRequired = value; } 423 424 /** 425 * <p>Indicates whether VPC endpoint connection requests to the service must be 426 * accepted by the service owner.</p> 427 */ WithAcceptanceRequired(bool value)428 inline ServiceDetail& WithAcceptanceRequired(bool value) { SetAcceptanceRequired(value); return *this;} 429 430 431 /** 432 * <p>Indicates whether the service manages its VPC endpoints. Management of the 433 * service VPC endpoints using the VPC endpoint API is restricted.</p> 434 */ GetManagesVpcEndpoints()435 inline bool GetManagesVpcEndpoints() const{ return m_managesVpcEndpoints; } 436 437 /** 438 * <p>Indicates whether the service manages its VPC endpoints. Management of the 439 * service VPC endpoints using the VPC endpoint API is restricted.</p> 440 */ ManagesVpcEndpointsHasBeenSet()441 inline bool ManagesVpcEndpointsHasBeenSet() const { return m_managesVpcEndpointsHasBeenSet; } 442 443 /** 444 * <p>Indicates whether the service manages its VPC endpoints. Management of the 445 * service VPC endpoints using the VPC endpoint API is restricted.</p> 446 */ SetManagesVpcEndpoints(bool value)447 inline void SetManagesVpcEndpoints(bool value) { m_managesVpcEndpointsHasBeenSet = true; m_managesVpcEndpoints = value; } 448 449 /** 450 * <p>Indicates whether the service manages its VPC endpoints. Management of the 451 * service VPC endpoints using the VPC endpoint API is restricted.</p> 452 */ WithManagesVpcEndpoints(bool value)453 inline ServiceDetail& WithManagesVpcEndpoints(bool value) { SetManagesVpcEndpoints(value); return *this;} 454 455 456 /** 457 * <p>Any tags assigned to the service.</p> 458 */ GetTags()459 inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; } 460 461 /** 462 * <p>Any tags assigned to the service.</p> 463 */ TagsHasBeenSet()464 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } 465 466 /** 467 * <p>Any tags assigned to the service.</p> 468 */ SetTags(const Aws::Vector<Tag> & value)469 inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; } 470 471 /** 472 * <p>Any tags assigned to the service.</p> 473 */ SetTags(Aws::Vector<Tag> && value)474 inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } 475 476 /** 477 * <p>Any tags assigned to the service.</p> 478 */ WithTags(const Aws::Vector<Tag> & value)479 inline ServiceDetail& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;} 480 481 /** 482 * <p>Any tags assigned to the service.</p> 483 */ WithTags(Aws::Vector<Tag> && value)484 inline ServiceDetail& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;} 485 486 /** 487 * <p>Any tags assigned to the service.</p> 488 */ AddTags(const Tag & value)489 inline ServiceDetail& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } 490 491 /** 492 * <p>Any tags assigned to the service.</p> 493 */ AddTags(Tag && value)494 inline ServiceDetail& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } 495 496 497 /** 498 * <p>The verification state of the VPC endpoint service.</p> <p>Consumers of the 499 * endpoint service cannot use the private name when the state is not 500 * <code>verified</code>.</p> 501 */ GetPrivateDnsNameVerificationState()502 inline const DnsNameState& GetPrivateDnsNameVerificationState() const{ return m_privateDnsNameVerificationState; } 503 504 /** 505 * <p>The verification state of the VPC endpoint service.</p> <p>Consumers of the 506 * endpoint service cannot use the private name when the state is not 507 * <code>verified</code>.</p> 508 */ PrivateDnsNameVerificationStateHasBeenSet()509 inline bool PrivateDnsNameVerificationStateHasBeenSet() const { return m_privateDnsNameVerificationStateHasBeenSet; } 510 511 /** 512 * <p>The verification state of the VPC endpoint service.</p> <p>Consumers of the 513 * endpoint service cannot use the private name when the state is not 514 * <code>verified</code>.</p> 515 */ SetPrivateDnsNameVerificationState(const DnsNameState & value)516 inline void SetPrivateDnsNameVerificationState(const DnsNameState& value) { m_privateDnsNameVerificationStateHasBeenSet = true; m_privateDnsNameVerificationState = value; } 517 518 /** 519 * <p>The verification state of the VPC endpoint service.</p> <p>Consumers of the 520 * endpoint service cannot use the private name when the state is not 521 * <code>verified</code>.</p> 522 */ SetPrivateDnsNameVerificationState(DnsNameState && value)523 inline void SetPrivateDnsNameVerificationState(DnsNameState&& value) { m_privateDnsNameVerificationStateHasBeenSet = true; m_privateDnsNameVerificationState = std::move(value); } 524 525 /** 526 * <p>The verification state of the VPC endpoint service.</p> <p>Consumers of the 527 * endpoint service cannot use the private name when the state is not 528 * <code>verified</code>.</p> 529 */ WithPrivateDnsNameVerificationState(const DnsNameState & value)530 inline ServiceDetail& WithPrivateDnsNameVerificationState(const DnsNameState& value) { SetPrivateDnsNameVerificationState(value); return *this;} 531 532 /** 533 * <p>The verification state of the VPC endpoint service.</p> <p>Consumers of the 534 * endpoint service cannot use the private name when the state is not 535 * <code>verified</code>.</p> 536 */ WithPrivateDnsNameVerificationState(DnsNameState && value)537 inline ServiceDetail& WithPrivateDnsNameVerificationState(DnsNameState&& value) { SetPrivateDnsNameVerificationState(std::move(value)); return *this;} 538 539 private: 540 541 Aws::String m_serviceName; 542 bool m_serviceNameHasBeenSet; 543 544 Aws::String m_serviceId; 545 bool m_serviceIdHasBeenSet; 546 547 Aws::Vector<ServiceTypeDetail> m_serviceType; 548 bool m_serviceTypeHasBeenSet; 549 550 Aws::Vector<Aws::String> m_availabilityZones; 551 bool m_availabilityZonesHasBeenSet; 552 553 Aws::String m_owner; 554 bool m_ownerHasBeenSet; 555 556 Aws::Vector<Aws::String> m_baseEndpointDnsNames; 557 bool m_baseEndpointDnsNamesHasBeenSet; 558 559 Aws::String m_privateDnsName; 560 bool m_privateDnsNameHasBeenSet; 561 562 Aws::Vector<PrivateDnsDetails> m_privateDnsNames; 563 bool m_privateDnsNamesHasBeenSet; 564 565 bool m_vpcEndpointPolicySupported; 566 bool m_vpcEndpointPolicySupportedHasBeenSet; 567 568 bool m_acceptanceRequired; 569 bool m_acceptanceRequiredHasBeenSet; 570 571 bool m_managesVpcEndpoints; 572 bool m_managesVpcEndpointsHasBeenSet; 573 574 Aws::Vector<Tag> m_tags; 575 bool m_tagsHasBeenSet; 576 577 DnsNameState m_privateDnsNameVerificationState; 578 bool m_privateDnsNameVerificationStateHasBeenSet; 579 }; 580 581 } // namespace Model 582 } // namespace EC2 583 } // namespace Aws 584