Class CreateLoadBalancerRequest

All Implemented Interfaces:
SdkPojo, ToCopyableBuilder<CreateLoadBalancerRequest.Builder,CreateLoadBalancerRequest>

@Generated("software.amazon.awssdk:codegen") public final class CreateLoadBalancerRequest extends ElasticLoadBalancingV2Request implements ToCopyableBuilder<CreateLoadBalancerRequest.Builder,CreateLoadBalancerRequest>
  • Method Details

    • name

      public final String name()

      The name of the load balancer.

      This name must be unique per region per account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, must not begin or end with a hyphen, and must not begin with "internal-".

      Returns:
      The name of the load balancer.

      This name must be unique per region per account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, must not begin or end with a hyphen, and must not begin with "internal-".

    • hasSubnets

      public final boolean hasSubnets()
      For responses, this returns true if the service returned a value for the Subnets property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • subnets

      public final List<String> subnets()

      The IDs of the subnets. You can specify only one subnet per Availability Zone. You must specify either subnets or subnet mappings, but not both. To specify an Elastic IP address, specify subnet mappings instead of subnets.

      [Application Load Balancers] You must specify subnets from at least two Availability Zones.

      [Application Load Balancers on Outposts] You must specify one Outpost subnet.

      [Application Load Balancers on Local Zones] You can specify subnets from one or more Local Zones.

      [Network Load Balancers] You can specify subnets from one or more Availability Zones.

      [Gateway Load Balancers] You can specify subnets from one or more Availability Zones.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasSubnets() method.

      Returns:
      The IDs of the subnets. You can specify only one subnet per Availability Zone. You must specify either subnets or subnet mappings, but not both. To specify an Elastic IP address, specify subnet mappings instead of subnets.

      [Application Load Balancers] You must specify subnets from at least two Availability Zones.

      [Application Load Balancers on Outposts] You must specify one Outpost subnet.

      [Application Load Balancers on Local Zones] You can specify subnets from one or more Local Zones.

      [Network Load Balancers] You can specify subnets from one or more Availability Zones.

      [Gateway Load Balancers] You can specify subnets from one or more Availability Zones.

    • hasSubnetMappings

      public final boolean hasSubnetMappings()
      For responses, this returns true if the service returned a value for the SubnetMappings property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • subnetMappings

      public final List<SubnetMapping> subnetMappings()

      The IDs of the subnets. You can specify only one subnet per Availability Zone. You must specify either subnets or subnet mappings, but not both.

      [Application Load Balancers] You must specify subnets from at least two Availability Zones. You cannot specify Elastic IP addresses for your subnets.

      [Application Load Balancers on Outposts] You must specify one Outpost subnet.

      [Application Load Balancers on Local Zones] You can specify subnets from one or more Local Zones.

      [Network Load Balancers] You can specify subnets from one or more Availability Zones. You can specify one Elastic IP address per subnet if you need static IP addresses for your internet-facing load balancer. For internal load balancers, you can specify one private IP address per subnet from the IPv4 range of the subnet. For internet-facing load balancer, you can specify one IPv6 address per subnet.

      [Gateway Load Balancers] You can specify subnets from one or more Availability Zones. You cannot specify Elastic IP addresses for your subnets.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasSubnetMappings() method.

      Returns:
      The IDs of the subnets. You can specify only one subnet per Availability Zone. You must specify either subnets or subnet mappings, but not both.

      [Application Load Balancers] You must specify subnets from at least two Availability Zones. You cannot specify Elastic IP addresses for your subnets.

      [Application Load Balancers on Outposts] You must specify one Outpost subnet.

      [Application Load Balancers on Local Zones] You can specify subnets from one or more Local Zones.

      [Network Load Balancers] You can specify subnets from one or more Availability Zones. You can specify one Elastic IP address per subnet if you need static IP addresses for your internet-facing load balancer. For internal load balancers, you can specify one private IP address per subnet from the IPv4 range of the subnet. For internet-facing load balancer, you can specify one IPv6 address per subnet.

      [Gateway Load Balancers] You can specify subnets from one or more Availability Zones. You cannot specify Elastic IP addresses for your subnets.

    • hasSecurityGroups

      public final boolean hasSecurityGroups()
      For responses, this returns true if the service returned a value for the SecurityGroups property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • securityGroups

      public final List<String> securityGroups()

      [Application Load Balancers and Network Load Balancers] The IDs of the security groups for the load balancer.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasSecurityGroups() method.

      Returns:
      [Application Load Balancers and Network Load Balancers] The IDs of the security groups for the load balancer.
    • scheme

      public final LoadBalancerSchemeEnum scheme()

      The nodes of an Internet-facing load balancer have public IP addresses. The DNS name of an Internet-facing load balancer is publicly resolvable to the public IP addresses of the nodes. Therefore, Internet-facing load balancers can route requests from clients over the internet.

      The nodes of an internal load balancer have only private IP addresses. The DNS name of an internal load balancer is publicly resolvable to the private IP addresses of the nodes. Therefore, internal load balancers can route requests only from clients with access to the VPC for the load balancer.

      The default is an Internet-facing load balancer.

      You cannot specify a scheme for a Gateway Load Balancer.

      If the service returns an enum value that is not available in the current SDK version, scheme will return LoadBalancerSchemeEnum.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from schemeAsString().

      Returns:
      The nodes of an Internet-facing load balancer have public IP addresses. The DNS name of an Internet-facing load balancer is publicly resolvable to the public IP addresses of the nodes. Therefore, Internet-facing load balancers can route requests from clients over the internet.

      The nodes of an internal load balancer have only private IP addresses. The DNS name of an internal load balancer is publicly resolvable to the private IP addresses of the nodes. Therefore, internal load balancers can route requests only from clients with access to the VPC for the load balancer.

      The default is an Internet-facing load balancer.

      You cannot specify a scheme for a Gateway Load Balancer.

      See Also:
    • schemeAsString

      public final String schemeAsString()

      The nodes of an Internet-facing load balancer have public IP addresses. The DNS name of an Internet-facing load balancer is publicly resolvable to the public IP addresses of the nodes. Therefore, Internet-facing load balancers can route requests from clients over the internet.

      The nodes of an internal load balancer have only private IP addresses. The DNS name of an internal load balancer is publicly resolvable to the private IP addresses of the nodes. Therefore, internal load balancers can route requests only from clients with access to the VPC for the load balancer.

      The default is an Internet-facing load balancer.

      You cannot specify a scheme for a Gateway Load Balancer.

      If the service returns an enum value that is not available in the current SDK version, scheme will return LoadBalancerSchemeEnum.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from schemeAsString().

      Returns:
      The nodes of an Internet-facing load balancer have public IP addresses. The DNS name of an Internet-facing load balancer is publicly resolvable to the public IP addresses of the nodes. Therefore, Internet-facing load balancers can route requests from clients over the internet.

      The nodes of an internal load balancer have only private IP addresses. The DNS name of an internal load balancer is publicly resolvable to the private IP addresses of the nodes. Therefore, internal load balancers can route requests only from clients with access to the VPC for the load balancer.

      The default is an Internet-facing load balancer.

      You cannot specify a scheme for a Gateway Load Balancer.

      See Also:
    • hasTags

      public final boolean hasTags()
      For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • tags

      public final List<Tag> tags()

      The tags to assign to the load balancer.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasTags() method.

      Returns:
      The tags to assign to the load balancer.
    • type

      public final LoadBalancerTypeEnum type()

      The type of load balancer. The default is application.

      If the service returns an enum value that is not available in the current SDK version, type will return LoadBalancerTypeEnum.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from typeAsString().

      Returns:
      The type of load balancer. The default is application.
      See Also:
    • typeAsString

      public final String typeAsString()

      The type of load balancer. The default is application.

      If the service returns an enum value that is not available in the current SDK version, type will return LoadBalancerTypeEnum.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from typeAsString().

      Returns:
      The type of load balancer. The default is application.
      See Also:
    • ipAddressType

      public final IpAddressType ipAddressType()

      The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and IPv6 addresses).

      If the service returns an enum value that is not available in the current SDK version, ipAddressType will return IpAddressType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from ipAddressTypeAsString().

      Returns:
      The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and IPv6 addresses).
      See Also:
    • ipAddressTypeAsString

      public final String ipAddressTypeAsString()

      The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and IPv6 addresses).

      If the service returns an enum value that is not available in the current SDK version, ipAddressType will return IpAddressType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from ipAddressTypeAsString().

      Returns:
      The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and IPv6 addresses).
      See Also:
    • customerOwnedIpv4Pool

      public final String customerOwnedIpv4Pool()

      [Application Load Balancers on Outposts] The ID of the customer-owned address pool (CoIP pool).

      Returns:
      [Application Load Balancers on Outposts] The ID of the customer-owned address pool (CoIP pool).
    • toBuilder

      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<CreateLoadBalancerRequest.Builder,CreateLoadBalancerRequest>
      Specified by:
      toBuilder in class ElasticLoadBalancingV2Request
      Returns:
      a builder for type T
    • builder

      public static CreateLoadBalancerRequest.Builder builder()
    • serializableBuilderClass

      public static Class<? extends CreateLoadBalancerRequest.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class AwsRequest
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class AwsRequest
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      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.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
      Description copied from class: SdkRequest
      Used to retrieve the value of a field from any class that extends SdkRequest. The field name specified should match the member name from the corresponding service-2.json model specified in the codegen-resources folder for a given service. The class specifies what class to cast the returned value to. If the returned value is also a modeled class, the SdkRequest.getValueForField(String, Class) method will again be available.
      Overrides:
      getValueForField in class SdkRequest
      Parameters:
      fieldName - The name of the member to be retrieved.
      clazz - The class to cast the returned object to.
      Returns:
      Optional containing the casted return value
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.