All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.ec2.model.CreateVpcEndpointRequest Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon EC2 module holds the client classes that are used for communicating with Amazon EC2 Service

The newest version!
/*
 * Copyright 2019-2024 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.ec2.model;

import java.io.Serializable;
import javax.annotation.Generated;

import com.amazonaws.AmazonWebServiceRequest;
import com.amazonaws.Request;
import com.amazonaws.services.ec2.model.transform.CreateVpcEndpointRequestMarshaller;

/**
 * 
 */
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class CreateVpcEndpointRequest extends AmazonWebServiceRequest implements Serializable, Cloneable, DryRunSupportedRequest {

    /**
     * 

* The type of endpoint. *

*

* Default: Gateway *

*/ private String vpcEndpointType; /** *

* The ID of the VPC. *

*/ private String vpcId; /** *

* The name of the endpoint service. *

*/ private String serviceName; /** *

* (Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the service. The * policy must be in valid JSON format. If this parameter is not specified, we attach a default policy that allows * full access to the service. *

*/ private String policyDocument; /** *

* (Gateway endpoint) The route table IDs. *

*/ private com.amazonaws.internal.SdkInternalList routeTableIds; /** *

* (Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to create endpoint network * interfaces. For a Gateway Load Balancer endpoint, you can specify only one subnet. *

*/ private com.amazonaws.internal.SdkInternalList subnetIds; /** *

* (Interface endpoint) The IDs of the security groups to associate with the endpoint network interfaces. If this * parameter is not specified, we use the default security group for the VPC. *

*/ private com.amazonaws.internal.SdkInternalList securityGroupIds; /** *

* The IP address type for the endpoint. *

*/ private String ipAddressType; /** *

* The DNS options for the endpoint. *

*/ private DnsOptionsSpecification dnsOptions; /** *

* Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more * information, see How to ensure * idempotency. *

*/ private String clientToken; /** *

* (Interface endpoint) Indicates whether to associate a private hosted zone with the specified VPC. The private * hosted zone contains a record set for the default public DNS name for the service for the Region (for example, * kinesis.us-east-1.amazonaws.com), which resolves to the private IP addresses of the endpoint network * interfaces in the VPC. This enables you to make requests to the default public DNS name for the service instead * of the public DNS names that are automatically generated by the VPC endpoint service. *

*

* To use a private hosted zone, you must set the following VPC attributes to true: * enableDnsHostnames and enableDnsSupport. Use ModifyVpcAttribute to set the VPC * attributes. *

*

* Default: true *

*/ private Boolean privateDnsEnabled; /** *

* The tags to associate with the endpoint. *

*/ private com.amazonaws.internal.SdkInternalList tagSpecifications; /** *

* The subnet configurations for the endpoint. *

*/ private com.amazonaws.internal.SdkInternalList subnetConfigurations; /** *

* The type of endpoint. *

*

* Default: Gateway *

* * @param vpcEndpointType * The type of endpoint.

*

* Default: Gateway * @see VpcEndpointType */ public void setVpcEndpointType(String vpcEndpointType) { this.vpcEndpointType = vpcEndpointType; } /** *

* The type of endpoint. *

*

* Default: Gateway *

* * @return The type of endpoint.

*

* Default: Gateway * @see VpcEndpointType */ public String getVpcEndpointType() { return this.vpcEndpointType; } /** *

* The type of endpoint. *

*

* Default: Gateway *

* * @param vpcEndpointType * The type of endpoint.

*

* Default: Gateway * @return Returns a reference to this object so that method calls can be chained together. * @see VpcEndpointType */ public CreateVpcEndpointRequest withVpcEndpointType(String vpcEndpointType) { setVpcEndpointType(vpcEndpointType); return this; } /** *

* The type of endpoint. *

*

* Default: Gateway *

* * @param vpcEndpointType * The type of endpoint.

*

* Default: Gateway * @return Returns a reference to this object so that method calls can be chained together. * @see VpcEndpointType */ public CreateVpcEndpointRequest withVpcEndpointType(VpcEndpointType vpcEndpointType) { this.vpcEndpointType = vpcEndpointType.toString(); return this; } /** *

* The ID of the VPC. *

* * @param vpcId * The ID of the VPC. */ public void setVpcId(String vpcId) { this.vpcId = vpcId; } /** *

* The ID of the VPC. *

* * @return The ID of the VPC. */ public String getVpcId() { return this.vpcId; } /** *

* The ID of the VPC. *

* * @param vpcId * The ID of the VPC. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateVpcEndpointRequest withVpcId(String vpcId) { setVpcId(vpcId); return this; } /** *

* The name of the endpoint service. *

* * @param serviceName * The name of the endpoint service. */ public void setServiceName(String serviceName) { this.serviceName = serviceName; } /** *

* The name of the endpoint service. *

* * @return The name of the endpoint service. */ public String getServiceName() { return this.serviceName; } /** *

* The name of the endpoint service. *

* * @param serviceName * The name of the endpoint service. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateVpcEndpointRequest withServiceName(String serviceName) { setServiceName(serviceName); return this; } /** *

* (Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the service. The * policy must be in valid JSON format. If this parameter is not specified, we attach a default policy that allows * full access to the service. *

* * @param policyDocument * (Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the service. * The policy must be in valid JSON format. If this parameter is not specified, we attach a default policy * that allows full access to the service. */ public void setPolicyDocument(String policyDocument) { this.policyDocument = policyDocument; } /** *

* (Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the service. The * policy must be in valid JSON format. If this parameter is not specified, we attach a default policy that allows * full access to the service. *

* * @return (Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the service. * The policy must be in valid JSON format. If this parameter is not specified, we attach a default policy * that allows full access to the service. */ public String getPolicyDocument() { return this.policyDocument; } /** *

* (Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the service. The * policy must be in valid JSON format. If this parameter is not specified, we attach a default policy that allows * full access to the service. *

* * @param policyDocument * (Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the service. * The policy must be in valid JSON format. If this parameter is not specified, we attach a default policy * that allows full access to the service. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateVpcEndpointRequest withPolicyDocument(String policyDocument) { setPolicyDocument(policyDocument); return this; } /** *

* (Gateway endpoint) The route table IDs. *

* * @return (Gateway endpoint) The route table IDs. */ public java.util.List getRouteTableIds() { if (routeTableIds == null) { routeTableIds = new com.amazonaws.internal.SdkInternalList(); } return routeTableIds; } /** *

* (Gateway endpoint) The route table IDs. *

* * @param routeTableIds * (Gateway endpoint) The route table IDs. */ public void setRouteTableIds(java.util.Collection routeTableIds) { if (routeTableIds == null) { this.routeTableIds = null; return; } this.routeTableIds = new com.amazonaws.internal.SdkInternalList(routeTableIds); } /** *

* (Gateway endpoint) The route table IDs. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setRouteTableIds(java.util.Collection)} or {@link #withRouteTableIds(java.util.Collection)} if you want * to override the existing values. *

* * @param routeTableIds * (Gateway endpoint) The route table IDs. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateVpcEndpointRequest withRouteTableIds(String... routeTableIds) { if (this.routeTableIds == null) { setRouteTableIds(new com.amazonaws.internal.SdkInternalList(routeTableIds.length)); } for (String ele : routeTableIds) { this.routeTableIds.add(ele); } return this; } /** *

* (Gateway endpoint) The route table IDs. *

* * @param routeTableIds * (Gateway endpoint) The route table IDs. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateVpcEndpointRequest withRouteTableIds(java.util.Collection routeTableIds) { setRouteTableIds(routeTableIds); return this; } /** *

* (Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to create endpoint network * interfaces. For a Gateway Load Balancer endpoint, you can specify only one subnet. *

* * @return (Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to create endpoint * network interfaces. For a Gateway Load Balancer endpoint, you can specify only one subnet. */ public java.util.List getSubnetIds() { if (subnetIds == null) { subnetIds = new com.amazonaws.internal.SdkInternalList(); } return subnetIds; } /** *

* (Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to create endpoint network * interfaces. For a Gateway Load Balancer endpoint, you can specify only one subnet. *

* * @param subnetIds * (Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to create endpoint network * interfaces. For a Gateway Load Balancer endpoint, you can specify only one subnet. */ public void setSubnetIds(java.util.Collection subnetIds) { if (subnetIds == null) { this.subnetIds = null; return; } this.subnetIds = new com.amazonaws.internal.SdkInternalList(subnetIds); } /** *

* (Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to create endpoint network * interfaces. For a Gateway Load Balancer endpoint, you can specify only one subnet. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setSubnetIds(java.util.Collection)} or {@link #withSubnetIds(java.util.Collection)} if you want to * override the existing values. *

* * @param subnetIds * (Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to create endpoint network * interfaces. For a Gateway Load Balancer endpoint, you can specify only one subnet. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateVpcEndpointRequest withSubnetIds(String... subnetIds) { if (this.subnetIds == null) { setSubnetIds(new com.amazonaws.internal.SdkInternalList(subnetIds.length)); } for (String ele : subnetIds) { this.subnetIds.add(ele); } return this; } /** *

* (Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to create endpoint network * interfaces. For a Gateway Load Balancer endpoint, you can specify only one subnet. *

* * @param subnetIds * (Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to create endpoint network * interfaces. For a Gateway Load Balancer endpoint, you can specify only one subnet. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateVpcEndpointRequest withSubnetIds(java.util.Collection subnetIds) { setSubnetIds(subnetIds); return this; } /** *

* (Interface endpoint) The IDs of the security groups to associate with the endpoint network interfaces. If this * parameter is not specified, we use the default security group for the VPC. *

* * @return (Interface endpoint) The IDs of the security groups to associate with the endpoint network interfaces. If * this parameter is not specified, we use the default security group for the VPC. */ public java.util.List getSecurityGroupIds() { if (securityGroupIds == null) { securityGroupIds = new com.amazonaws.internal.SdkInternalList(); } return securityGroupIds; } /** *

* (Interface endpoint) The IDs of the security groups to associate with the endpoint network interfaces. If this * parameter is not specified, we use the default security group for the VPC. *

* * @param securityGroupIds * (Interface endpoint) The IDs of the security groups to associate with the endpoint network interfaces. If * this parameter is not specified, we use the default security group for the VPC. */ public void setSecurityGroupIds(java.util.Collection securityGroupIds) { if (securityGroupIds == null) { this.securityGroupIds = null; return; } this.securityGroupIds = new com.amazonaws.internal.SdkInternalList(securityGroupIds); } /** *

* (Interface endpoint) The IDs of the security groups to associate with the endpoint network interfaces. If this * parameter is not specified, we use the default security group for the VPC. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setSecurityGroupIds(java.util.Collection)} or {@link #withSecurityGroupIds(java.util.Collection)} if you * want to override the existing values. *

* * @param securityGroupIds * (Interface endpoint) The IDs of the security groups to associate with the endpoint network interfaces. If * this parameter is not specified, we use the default security group for the VPC. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateVpcEndpointRequest withSecurityGroupIds(String... securityGroupIds) { if (this.securityGroupIds == null) { setSecurityGroupIds(new com.amazonaws.internal.SdkInternalList(securityGroupIds.length)); } for (String ele : securityGroupIds) { this.securityGroupIds.add(ele); } return this; } /** *

* (Interface endpoint) The IDs of the security groups to associate with the endpoint network interfaces. If this * parameter is not specified, we use the default security group for the VPC. *

* * @param securityGroupIds * (Interface endpoint) The IDs of the security groups to associate with the endpoint network interfaces. If * this parameter is not specified, we use the default security group for the VPC. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateVpcEndpointRequest withSecurityGroupIds(java.util.Collection securityGroupIds) { setSecurityGroupIds(securityGroupIds); return this; } /** *

* The IP address type for the endpoint. *

* * @param ipAddressType * The IP address type for the endpoint. * @see IpAddressType */ public void setIpAddressType(String ipAddressType) { this.ipAddressType = ipAddressType; } /** *

* The IP address type for the endpoint. *

* * @return The IP address type for the endpoint. * @see IpAddressType */ public String getIpAddressType() { return this.ipAddressType; } /** *

* The IP address type for the endpoint. *

* * @param ipAddressType * The IP address type for the endpoint. * @return Returns a reference to this object so that method calls can be chained together. * @see IpAddressType */ public CreateVpcEndpointRequest withIpAddressType(String ipAddressType) { setIpAddressType(ipAddressType); return this; } /** *

* The IP address type for the endpoint. *

* * @param ipAddressType * The IP address type for the endpoint. * @return Returns a reference to this object so that method calls can be chained together. * @see IpAddressType */ public CreateVpcEndpointRequest withIpAddressType(IpAddressType ipAddressType) { this.ipAddressType = ipAddressType.toString(); return this; } /** *

* The DNS options for the endpoint. *

* * @param dnsOptions * The DNS options for the endpoint. */ public void setDnsOptions(DnsOptionsSpecification dnsOptions) { this.dnsOptions = dnsOptions; } /** *

* The DNS options for the endpoint. *

* * @return The DNS options for the endpoint. */ public DnsOptionsSpecification getDnsOptions() { return this.dnsOptions; } /** *

* The DNS options for the endpoint. *

* * @param dnsOptions * The DNS options for the endpoint. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateVpcEndpointRequest withDnsOptions(DnsOptionsSpecification dnsOptions) { setDnsOptions(dnsOptions); return this; } /** *

* Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more * information, see How to ensure * idempotency. *

* * @param clientToken * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more * information, see How to * ensure idempotency. */ public void setClientToken(String clientToken) { this.clientToken = clientToken; } /** *

* Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more * information, see How to ensure * idempotency. *

* * @return Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more * information, see How * to ensure idempotency. */ public String getClientToken() { return this.clientToken; } /** *

* Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more * information, see How to ensure * idempotency. *

* * @param clientToken * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more * information, see How to * ensure idempotency. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateVpcEndpointRequest withClientToken(String clientToken) { setClientToken(clientToken); return this; } /** *

* (Interface endpoint) Indicates whether to associate a private hosted zone with the specified VPC. The private * hosted zone contains a record set for the default public DNS name for the service for the Region (for example, * kinesis.us-east-1.amazonaws.com), which resolves to the private IP addresses of the endpoint network * interfaces in the VPC. This enables you to make requests to the default public DNS name for the service instead * of the public DNS names that are automatically generated by the VPC endpoint service. *

*

* To use a private hosted zone, you must set the following VPC attributes to true: * enableDnsHostnames and enableDnsSupport. Use ModifyVpcAttribute to set the VPC * attributes. *

*

* Default: true *

* * @param privateDnsEnabled * (Interface endpoint) Indicates whether to associate a private hosted zone with the specified VPC. The * private hosted zone contains a record set for the default public DNS name for the service for the Region * (for example, kinesis.us-east-1.amazonaws.com), which resolves to the private IP addresses of * the endpoint network interfaces in the VPC. This enables you to make requests to the default public DNS * name for the service instead of the public DNS names that are automatically generated by the VPC endpoint * service.

*

* To use a private hosted zone, you must set the following VPC attributes to true: * enableDnsHostnames and enableDnsSupport. Use ModifyVpcAttribute to set * the VPC attributes. *

*

* Default: true */ public void setPrivateDnsEnabled(Boolean privateDnsEnabled) { this.privateDnsEnabled = privateDnsEnabled; } /** *

* (Interface endpoint) Indicates whether to associate a private hosted zone with the specified VPC. The private * hosted zone contains a record set for the default public DNS name for the service for the Region (for example, * kinesis.us-east-1.amazonaws.com), which resolves to the private IP addresses of the endpoint network * interfaces in the VPC. This enables you to make requests to the default public DNS name for the service instead * of the public DNS names that are automatically generated by the VPC endpoint service. *

*

* To use a private hosted zone, you must set the following VPC attributes to true: * enableDnsHostnames and enableDnsSupport. Use ModifyVpcAttribute to set the VPC * attributes. *

*

* Default: true *

* * @return (Interface endpoint) Indicates whether to associate a private hosted zone with the specified VPC. The * private hosted zone contains a record set for the default public DNS name for the service for the Region * (for example, kinesis.us-east-1.amazonaws.com), which resolves to the private IP addresses * of the endpoint network interfaces in the VPC. This enables you to make requests to the default public * DNS name for the service instead of the public DNS names that are automatically generated by the VPC * endpoint service.

*

* To use a private hosted zone, you must set the following VPC attributes to true: * enableDnsHostnames and enableDnsSupport. Use ModifyVpcAttribute to set * the VPC attributes. *

*

* Default: true */ public Boolean getPrivateDnsEnabled() { return this.privateDnsEnabled; } /** *

* (Interface endpoint) Indicates whether to associate a private hosted zone with the specified VPC. The private * hosted zone contains a record set for the default public DNS name for the service for the Region (for example, * kinesis.us-east-1.amazonaws.com), which resolves to the private IP addresses of the endpoint network * interfaces in the VPC. This enables you to make requests to the default public DNS name for the service instead * of the public DNS names that are automatically generated by the VPC endpoint service. *

*

* To use a private hosted zone, you must set the following VPC attributes to true: * enableDnsHostnames and enableDnsSupport. Use ModifyVpcAttribute to set the VPC * attributes. *

*

* Default: true *

* * @param privateDnsEnabled * (Interface endpoint) Indicates whether to associate a private hosted zone with the specified VPC. The * private hosted zone contains a record set for the default public DNS name for the service for the Region * (for example, kinesis.us-east-1.amazonaws.com), which resolves to the private IP addresses of * the endpoint network interfaces in the VPC. This enables you to make requests to the default public DNS * name for the service instead of the public DNS names that are automatically generated by the VPC endpoint * service.

*

* To use a private hosted zone, you must set the following VPC attributes to true: * enableDnsHostnames and enableDnsSupport. Use ModifyVpcAttribute to set * the VPC attributes. *

*

* Default: true * @return Returns a reference to this object so that method calls can be chained together. */ public CreateVpcEndpointRequest withPrivateDnsEnabled(Boolean privateDnsEnabled) { setPrivateDnsEnabled(privateDnsEnabled); return this; } /** *

* (Interface endpoint) Indicates whether to associate a private hosted zone with the specified VPC. The private * hosted zone contains a record set for the default public DNS name for the service for the Region (for example, * kinesis.us-east-1.amazonaws.com), which resolves to the private IP addresses of the endpoint network * interfaces in the VPC. This enables you to make requests to the default public DNS name for the service instead * of the public DNS names that are automatically generated by the VPC endpoint service. *

*

* To use a private hosted zone, you must set the following VPC attributes to true: * enableDnsHostnames and enableDnsSupport. Use ModifyVpcAttribute to set the VPC * attributes. *

*

* Default: true *

* * @return (Interface endpoint) Indicates whether to associate a private hosted zone with the specified VPC. The * private hosted zone contains a record set for the default public DNS name for the service for the Region * (for example, kinesis.us-east-1.amazonaws.com), which resolves to the private IP addresses * of the endpoint network interfaces in the VPC. This enables you to make requests to the default public * DNS name for the service instead of the public DNS names that are automatically generated by the VPC * endpoint service.

*

* To use a private hosted zone, you must set the following VPC attributes to true: * enableDnsHostnames and enableDnsSupport. Use ModifyVpcAttribute to set * the VPC attributes. *

*

* Default: true */ public Boolean isPrivateDnsEnabled() { return this.privateDnsEnabled; } /** *

* The tags to associate with the endpoint. *

* * @return The tags to associate with the endpoint. */ public java.util.List getTagSpecifications() { if (tagSpecifications == null) { tagSpecifications = new com.amazonaws.internal.SdkInternalList(); } return tagSpecifications; } /** *

* The tags to associate with the endpoint. *

* * @param tagSpecifications * The tags to associate with the endpoint. */ public void setTagSpecifications(java.util.Collection tagSpecifications) { if (tagSpecifications == null) { this.tagSpecifications = null; return; } this.tagSpecifications = new com.amazonaws.internal.SdkInternalList(tagSpecifications); } /** *

* The tags to associate with the endpoint. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setTagSpecifications(java.util.Collection)} or {@link #withTagSpecifications(java.util.Collection)} if * you want to override the existing values. *

* * @param tagSpecifications * The tags to associate with the endpoint. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateVpcEndpointRequest withTagSpecifications(TagSpecification... tagSpecifications) { if (this.tagSpecifications == null) { setTagSpecifications(new com.amazonaws.internal.SdkInternalList(tagSpecifications.length)); } for (TagSpecification ele : tagSpecifications) { this.tagSpecifications.add(ele); } return this; } /** *

* The tags to associate with the endpoint. *

* * @param tagSpecifications * The tags to associate with the endpoint. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateVpcEndpointRequest withTagSpecifications(java.util.Collection tagSpecifications) { setTagSpecifications(tagSpecifications); return this; } /** *

* The subnet configurations for the endpoint. *

* * @return The subnet configurations for the endpoint. */ public java.util.List getSubnetConfigurations() { if (subnetConfigurations == null) { subnetConfigurations = new com.amazonaws.internal.SdkInternalList(); } return subnetConfigurations; } /** *

* The subnet configurations for the endpoint. *

* * @param subnetConfigurations * The subnet configurations for the endpoint. */ public void setSubnetConfigurations(java.util.Collection subnetConfigurations) { if (subnetConfigurations == null) { this.subnetConfigurations = null; return; } this.subnetConfigurations = new com.amazonaws.internal.SdkInternalList(subnetConfigurations); } /** *

* The subnet configurations for the endpoint. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setSubnetConfigurations(java.util.Collection)} or {@link #withSubnetConfigurations(java.util.Collection)} * if you want to override the existing values. *

* * @param subnetConfigurations * The subnet configurations for the endpoint. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateVpcEndpointRequest withSubnetConfigurations(SubnetConfiguration... subnetConfigurations) { if (this.subnetConfigurations == null) { setSubnetConfigurations(new com.amazonaws.internal.SdkInternalList(subnetConfigurations.length)); } for (SubnetConfiguration ele : subnetConfigurations) { this.subnetConfigurations.add(ele); } return this; } /** *

* The subnet configurations for the endpoint. *

* * @param subnetConfigurations * The subnet configurations for the endpoint. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateVpcEndpointRequest withSubnetConfigurations(java.util.Collection subnetConfigurations) { setSubnetConfigurations(subnetConfigurations); return this; } /** * This method is intended for internal use only. Returns the marshaled request configured with additional * parameters to enable operation dry-run. */ @Override public Request getDryRunRequest() { Request request = new CreateVpcEndpointRequestMarshaller().marshall(this); request.addParameter("DryRun", Boolean.toString(true)); return request; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getVpcEndpointType() != null) sb.append("VpcEndpointType: ").append(getVpcEndpointType()).append(","); if (getVpcId() != null) sb.append("VpcId: ").append(getVpcId()).append(","); if (getServiceName() != null) sb.append("ServiceName: ").append(getServiceName()).append(","); if (getPolicyDocument() != null) sb.append("PolicyDocument: ").append(getPolicyDocument()).append(","); if (getRouteTableIds() != null) sb.append("RouteTableIds: ").append(getRouteTableIds()).append(","); if (getSubnetIds() != null) sb.append("SubnetIds: ").append(getSubnetIds()).append(","); if (getSecurityGroupIds() != null) sb.append("SecurityGroupIds: ").append(getSecurityGroupIds()).append(","); if (getIpAddressType() != null) sb.append("IpAddressType: ").append(getIpAddressType()).append(","); if (getDnsOptions() != null) sb.append("DnsOptions: ").append(getDnsOptions()).append(","); if (getClientToken() != null) sb.append("ClientToken: ").append(getClientToken()).append(","); if (getPrivateDnsEnabled() != null) sb.append("PrivateDnsEnabled: ").append(getPrivateDnsEnabled()).append(","); if (getTagSpecifications() != null) sb.append("TagSpecifications: ").append(getTagSpecifications()).append(","); if (getSubnetConfigurations() != null) sb.append("SubnetConfigurations: ").append(getSubnetConfigurations()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateVpcEndpointRequest == false) return false; CreateVpcEndpointRequest other = (CreateVpcEndpointRequest) obj; if (other.getVpcEndpointType() == null ^ this.getVpcEndpointType() == null) return false; if (other.getVpcEndpointType() != null && other.getVpcEndpointType().equals(this.getVpcEndpointType()) == false) return false; if (other.getVpcId() == null ^ this.getVpcId() == null) return false; if (other.getVpcId() != null && other.getVpcId().equals(this.getVpcId()) == false) return false; if (other.getServiceName() == null ^ this.getServiceName() == null) return false; if (other.getServiceName() != null && other.getServiceName().equals(this.getServiceName()) == false) return false; if (other.getPolicyDocument() == null ^ this.getPolicyDocument() == null) return false; if (other.getPolicyDocument() != null && other.getPolicyDocument().equals(this.getPolicyDocument()) == false) return false; if (other.getRouteTableIds() == null ^ this.getRouteTableIds() == null) return false; if (other.getRouteTableIds() != null && other.getRouteTableIds().equals(this.getRouteTableIds()) == false) return false; if (other.getSubnetIds() == null ^ this.getSubnetIds() == null) return false; if (other.getSubnetIds() != null && other.getSubnetIds().equals(this.getSubnetIds()) == false) return false; if (other.getSecurityGroupIds() == null ^ this.getSecurityGroupIds() == null) return false; if (other.getSecurityGroupIds() != null && other.getSecurityGroupIds().equals(this.getSecurityGroupIds()) == false) return false; if (other.getIpAddressType() == null ^ this.getIpAddressType() == null) return false; if (other.getIpAddressType() != null && other.getIpAddressType().equals(this.getIpAddressType()) == false) return false; if (other.getDnsOptions() == null ^ this.getDnsOptions() == null) return false; if (other.getDnsOptions() != null && other.getDnsOptions().equals(this.getDnsOptions()) == false) return false; if (other.getClientToken() == null ^ this.getClientToken() == null) return false; if (other.getClientToken() != null && other.getClientToken().equals(this.getClientToken()) == false) return false; if (other.getPrivateDnsEnabled() == null ^ this.getPrivateDnsEnabled() == null) return false; if (other.getPrivateDnsEnabled() != null && other.getPrivateDnsEnabled().equals(this.getPrivateDnsEnabled()) == false) return false; if (other.getTagSpecifications() == null ^ this.getTagSpecifications() == null) return false; if (other.getTagSpecifications() != null && other.getTagSpecifications().equals(this.getTagSpecifications()) == false) return false; if (other.getSubnetConfigurations() == null ^ this.getSubnetConfigurations() == null) return false; if (other.getSubnetConfigurations() != null && other.getSubnetConfigurations().equals(this.getSubnetConfigurations()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getVpcEndpointType() == null) ? 0 : getVpcEndpointType().hashCode()); hashCode = prime * hashCode + ((getVpcId() == null) ? 0 : getVpcId().hashCode()); hashCode = prime * hashCode + ((getServiceName() == null) ? 0 : getServiceName().hashCode()); hashCode = prime * hashCode + ((getPolicyDocument() == null) ? 0 : getPolicyDocument().hashCode()); hashCode = prime * hashCode + ((getRouteTableIds() == null) ? 0 : getRouteTableIds().hashCode()); hashCode = prime * hashCode + ((getSubnetIds() == null) ? 0 : getSubnetIds().hashCode()); hashCode = prime * hashCode + ((getSecurityGroupIds() == null) ? 0 : getSecurityGroupIds().hashCode()); hashCode = prime * hashCode + ((getIpAddressType() == null) ? 0 : getIpAddressType().hashCode()); hashCode = prime * hashCode + ((getDnsOptions() == null) ? 0 : getDnsOptions().hashCode()); hashCode = prime * hashCode + ((getClientToken() == null) ? 0 : getClientToken().hashCode()); hashCode = prime * hashCode + ((getPrivateDnsEnabled() == null) ? 0 : getPrivateDnsEnabled().hashCode()); hashCode = prime * hashCode + ((getTagSpecifications() == null) ? 0 : getTagSpecifications().hashCode()); hashCode = prime * hashCode + ((getSubnetConfigurations() == null) ? 0 : getSubnetConfigurations().hashCode()); return hashCode; } @Override public CreateVpcEndpointRequest clone() { return (CreateVpcEndpointRequest) super.clone(); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy