/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.securityhub.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Contains details about the service configuration for a VPC endpoint service. *
* * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AwsEc2VpcEndpointServiceDetails implements Serializable, Cloneable, StructuredPojo { /** ** Whether requests from other Amazon Web Services accounts to create an endpoint to the service must first be * accepted. *
*/ private Boolean acceptanceRequired; /** ** The Availability Zones where the service is available. *
*/ private java.util.List* The DNS names for the service. *
*/ private java.util.List* Whether the service manages its VPC endpoints. *
*/ private Boolean managesVpcEndpoints; /** ** The ARNs of the Gateway Load Balancers for the service. *
*/ private java.util.List* The ARNs of the Network Load Balancers for the service. *
*/ private java.util.List* The private DNS name for the service. *
*/ private String privateDnsName; /** ** The identifier of the service. *
*/ private String serviceId; /** ** The name of the service. *
*/ private String serviceName; /** ** The current state of the service. Valid values are as follows: *
*
* Available
*
* Deleted
*
* Deleting
*
* Failed
*
* Pending
*
* The types for the service. *
*/ private java.util.List* Whether requests from other Amazon Web Services accounts to create an endpoint to the service must first be * accepted. *
* * @param acceptanceRequired * Whether requests from other Amazon Web Services accounts to create an endpoint to the service must first * be accepted. */ public void setAcceptanceRequired(Boolean acceptanceRequired) { this.acceptanceRequired = acceptanceRequired; } /** ** Whether requests from other Amazon Web Services accounts to create an endpoint to the service must first be * accepted. *
* * @return Whether requests from other Amazon Web Services accounts to create an endpoint to the service must first * be accepted. */ public Boolean getAcceptanceRequired() { return this.acceptanceRequired; } /** ** Whether requests from other Amazon Web Services accounts to create an endpoint to the service must first be * accepted. *
* * @param acceptanceRequired * Whether requests from other Amazon Web Services accounts to create an endpoint to the service must first * be accepted. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsEc2VpcEndpointServiceDetails withAcceptanceRequired(Boolean acceptanceRequired) { setAcceptanceRequired(acceptanceRequired); return this; } /** ** Whether requests from other Amazon Web Services accounts to create an endpoint to the service must first be * accepted. *
* * @return Whether requests from other Amazon Web Services accounts to create an endpoint to the service must first * be accepted. */ public Boolean isAcceptanceRequired() { return this.acceptanceRequired; } /** ** The Availability Zones where the service is available. *
* * @return The Availability Zones where the service is available. */ public java.util.List* The Availability Zones where the service is available. *
* * @param availabilityZones * The Availability Zones where the service is available. */ public void setAvailabilityZones(java.util.Collection* The Availability Zones where the service is available. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setAvailabilityZones(java.util.Collection)} or {@link #withAvailabilityZones(java.util.Collection)} if * you want to override the existing values. *
* * @param availabilityZones * The Availability Zones where the service is available. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsEc2VpcEndpointServiceDetails withAvailabilityZones(String... availabilityZones) { if (this.availabilityZones == null) { setAvailabilityZones(new java.util.ArrayList* The Availability Zones where the service is available. *
* * @param availabilityZones * The Availability Zones where the service is available. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsEc2VpcEndpointServiceDetails withAvailabilityZones(java.util.Collection* The DNS names for the service. *
* * @return The DNS names for the service. */ public java.util.List* The DNS names for the service. *
* * @param baseEndpointDnsNames * The DNS names for the service. */ public void setBaseEndpointDnsNames(java.util.Collection* The DNS names for the service. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setBaseEndpointDnsNames(java.util.Collection)} or {@link #withBaseEndpointDnsNames(java.util.Collection)} * if you want to override the existing values. *
* * @param baseEndpointDnsNames * The DNS names for the service. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsEc2VpcEndpointServiceDetails withBaseEndpointDnsNames(String... baseEndpointDnsNames) { if (this.baseEndpointDnsNames == null) { setBaseEndpointDnsNames(new java.util.ArrayList* The DNS names for the service. *
* * @param baseEndpointDnsNames * The DNS names for the service. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsEc2VpcEndpointServiceDetails withBaseEndpointDnsNames(java.util.Collection* Whether the service manages its VPC endpoints. *
* * @param managesVpcEndpoints * Whether the service manages its VPC endpoints. */ public void setManagesVpcEndpoints(Boolean managesVpcEndpoints) { this.managesVpcEndpoints = managesVpcEndpoints; } /** ** Whether the service manages its VPC endpoints. *
* * @return Whether the service manages its VPC endpoints. */ public Boolean getManagesVpcEndpoints() { return this.managesVpcEndpoints; } /** ** Whether the service manages its VPC endpoints. *
* * @param managesVpcEndpoints * Whether the service manages its VPC endpoints. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsEc2VpcEndpointServiceDetails withManagesVpcEndpoints(Boolean managesVpcEndpoints) { setManagesVpcEndpoints(managesVpcEndpoints); return this; } /** ** Whether the service manages its VPC endpoints. *
* * @return Whether the service manages its VPC endpoints. */ public Boolean isManagesVpcEndpoints() { return this.managesVpcEndpoints; } /** ** The ARNs of the Gateway Load Balancers for the service. *
* * @return The ARNs of the Gateway Load Balancers for the service. */ public java.util.List* The ARNs of the Gateway Load Balancers for the service. *
* * @param gatewayLoadBalancerArns * The ARNs of the Gateway Load Balancers for the service. */ public void setGatewayLoadBalancerArns(java.util.Collection* The ARNs of the Gateway Load Balancers for the service. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setGatewayLoadBalancerArns(java.util.Collection)} or * {@link #withGatewayLoadBalancerArns(java.util.Collection)} if you want to override the existing values. *
* * @param gatewayLoadBalancerArns * The ARNs of the Gateway Load Balancers for the service. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsEc2VpcEndpointServiceDetails withGatewayLoadBalancerArns(String... gatewayLoadBalancerArns) { if (this.gatewayLoadBalancerArns == null) { setGatewayLoadBalancerArns(new java.util.ArrayList* The ARNs of the Gateway Load Balancers for the service. *
* * @param gatewayLoadBalancerArns * The ARNs of the Gateway Load Balancers for the service. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsEc2VpcEndpointServiceDetails withGatewayLoadBalancerArns(java.util.Collection* The ARNs of the Network Load Balancers for the service. *
* * @return The ARNs of the Network Load Balancers for the service. */ public java.util.List* The ARNs of the Network Load Balancers for the service. *
* * @param networkLoadBalancerArns * The ARNs of the Network Load Balancers for the service. */ public void setNetworkLoadBalancerArns(java.util.Collection* The ARNs of the Network Load Balancers for the service. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setNetworkLoadBalancerArns(java.util.Collection)} or * {@link #withNetworkLoadBalancerArns(java.util.Collection)} if you want to override the existing values. *
* * @param networkLoadBalancerArns * The ARNs of the Network Load Balancers for the service. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsEc2VpcEndpointServiceDetails withNetworkLoadBalancerArns(String... networkLoadBalancerArns) { if (this.networkLoadBalancerArns == null) { setNetworkLoadBalancerArns(new java.util.ArrayList* The ARNs of the Network Load Balancers for the service. *
* * @param networkLoadBalancerArns * The ARNs of the Network Load Balancers for the service. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsEc2VpcEndpointServiceDetails withNetworkLoadBalancerArns(java.util.Collection* The private DNS name for the service. *
* * @param privateDnsName * The private DNS name for the service. */ public void setPrivateDnsName(String privateDnsName) { this.privateDnsName = privateDnsName; } /** ** The private DNS name for the service. *
* * @return The private DNS name for the service. */ public String getPrivateDnsName() { return this.privateDnsName; } /** ** The private DNS name for the service. *
* * @param privateDnsName * The private DNS name for the service. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsEc2VpcEndpointServiceDetails withPrivateDnsName(String privateDnsName) { setPrivateDnsName(privateDnsName); return this; } /** ** The identifier of the service. *
* * @param serviceId * The identifier of the service. */ public void setServiceId(String serviceId) { this.serviceId = serviceId; } /** ** The identifier of the service. *
* * @return The identifier of the service. */ public String getServiceId() { return this.serviceId; } /** ** The identifier of the service. *
* * @param serviceId * The identifier of the service. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsEc2VpcEndpointServiceDetails withServiceId(String serviceId) { setServiceId(serviceId); return this; } /** ** The name of the service. *
* * @param serviceName * The name of the service. */ public void setServiceName(String serviceName) { this.serviceName = serviceName; } /** ** The name of the service. *
* * @return The name of the service. */ public String getServiceName() { return this.serviceName; } /** ** The name of the service. *
* * @param serviceName * The name of the service. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsEc2VpcEndpointServiceDetails withServiceName(String serviceName) { setServiceName(serviceName); return this; } /** ** The current state of the service. Valid values are as follows: *
*
* Available
*
* Deleted
*
* Deleting
*
* Failed
*
* Pending
*
* Available
*
* Deleted
*
* Deleting
*
* Failed
*
* Pending
*
* The current state of the service. Valid values are as follows: *
*
* Available
*
* Deleted
*
* Deleting
*
* Failed
*
* Pending
*
* Available
*
* Deleted
*
* Deleting
*
* Failed
*
* Pending
*
* The current state of the service. Valid values are as follows: *
*
* Available
*
* Deleted
*
* Deleting
*
* Failed
*
* Pending
*
* Available
*
* Deleted
*
* Deleting
*
* Failed
*
* Pending
*
* The types for the service. *
* * @return The types for the service. */ public java.util.List* The types for the service. *
* * @param serviceType * The types for the service. */ public void setServiceType(java.util.Collection* The types for the service. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setServiceType(java.util.Collection)} or {@link #withServiceType(java.util.Collection)} if you want to * override the existing values. *
* * @param serviceType * The types for the service. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsEc2VpcEndpointServiceDetails withServiceType(AwsEc2VpcEndpointServiceServiceTypeDetails... serviceType) { if (this.serviceType == null) { setServiceType(new java.util.ArrayList* The types for the service. *
* * @param serviceType * The types for the service. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsEc2VpcEndpointServiceDetails withServiceType(java.util.Collection