/* * 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 attributes for the load balancer. *
* * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AwsElbLoadBalancerAttributes implements Serializable, Cloneable, StructuredPojo { /** ** Information about the access log configuration for the load balancer. *
** If the access log is enabled, the load balancer captures detailed information about all requests. It delivers the * information to a specified S3 bucket. *
*/ private AwsElbLoadBalancerAccessLog accessLog; /** ** Information about the connection draining configuration for the load balancer. *
** If connection draining is enabled, the load balancer allows existing requests to complete before it shifts * traffic away from a deregistered or unhealthy instance. *
*/ private AwsElbLoadBalancerConnectionDraining connectionDraining; /** ** Connection settings for the load balancer. *
** If an idle timeout is configured, the load balancer allows connections to remain idle for the specified duration. * When a connection is idle, no data is sent over the connection. *
*/ private AwsElbLoadBalancerConnectionSettings connectionSettings; /** ** Cross-zone load balancing settings for the load balancer. *
** If cross-zone load balancing is enabled, the load balancer routes the request traffic evenly across all instances * regardless of the Availability Zones. *
*/ private AwsElbLoadBalancerCrossZoneLoadBalancing crossZoneLoadBalancing; /** ** Any additional attributes for a load balancer. *
*/ private java.util.List* Information about the access log configuration for the load balancer. *
** If the access log is enabled, the load balancer captures detailed information about all requests. It delivers the * information to a specified S3 bucket. *
* * @param accessLog * Information about the access log configuration for the load balancer. ** If the access log is enabled, the load balancer captures detailed information about all requests. It * delivers the information to a specified S3 bucket. */ public void setAccessLog(AwsElbLoadBalancerAccessLog accessLog) { this.accessLog = accessLog; } /** *
* Information about the access log configuration for the load balancer. *
** If the access log is enabled, the load balancer captures detailed information about all requests. It delivers the * information to a specified S3 bucket. *
* * @return Information about the access log configuration for the load balancer. ** If the access log is enabled, the load balancer captures detailed information about all requests. It * delivers the information to a specified S3 bucket. */ public AwsElbLoadBalancerAccessLog getAccessLog() { return this.accessLog; } /** *
* Information about the access log configuration for the load balancer. *
** If the access log is enabled, the load balancer captures detailed information about all requests. It delivers the * information to a specified S3 bucket. *
* * @param accessLog * Information about the access log configuration for the load balancer. ** If the access log is enabled, the load balancer captures detailed information about all requests. It * delivers the information to a specified S3 bucket. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsElbLoadBalancerAttributes withAccessLog(AwsElbLoadBalancerAccessLog accessLog) { setAccessLog(accessLog); return this; } /** *
* Information about the connection draining configuration for the load balancer. *
** If connection draining is enabled, the load balancer allows existing requests to complete before it shifts * traffic away from a deregistered or unhealthy instance. *
* * @param connectionDraining * Information about the connection draining configuration for the load balancer. ** If connection draining is enabled, the load balancer allows existing requests to complete before it shifts * traffic away from a deregistered or unhealthy instance. */ public void setConnectionDraining(AwsElbLoadBalancerConnectionDraining connectionDraining) { this.connectionDraining = connectionDraining; } /** *
* Information about the connection draining configuration for the load balancer. *
** If connection draining is enabled, the load balancer allows existing requests to complete before it shifts * traffic away from a deregistered or unhealthy instance. *
* * @return Information about the connection draining configuration for the load balancer. ** If connection draining is enabled, the load balancer allows existing requests to complete before it * shifts traffic away from a deregistered or unhealthy instance. */ public AwsElbLoadBalancerConnectionDraining getConnectionDraining() { return this.connectionDraining; } /** *
* Information about the connection draining configuration for the load balancer. *
** If connection draining is enabled, the load balancer allows existing requests to complete before it shifts * traffic away from a deregistered or unhealthy instance. *
* * @param connectionDraining * Information about the connection draining configuration for the load balancer. ** If connection draining is enabled, the load balancer allows existing requests to complete before it shifts * traffic away from a deregistered or unhealthy instance. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsElbLoadBalancerAttributes withConnectionDraining(AwsElbLoadBalancerConnectionDraining connectionDraining) { setConnectionDraining(connectionDraining); return this; } /** *
* Connection settings for the load balancer. *
** If an idle timeout is configured, the load balancer allows connections to remain idle for the specified duration. * When a connection is idle, no data is sent over the connection. *
* * @param connectionSettings * Connection settings for the load balancer. ** If an idle timeout is configured, the load balancer allows connections to remain idle for the specified * duration. When a connection is idle, no data is sent over the connection. */ public void setConnectionSettings(AwsElbLoadBalancerConnectionSettings connectionSettings) { this.connectionSettings = connectionSettings; } /** *
* Connection settings for the load balancer. *
** If an idle timeout is configured, the load balancer allows connections to remain idle for the specified duration. * When a connection is idle, no data is sent over the connection. *
* * @return Connection settings for the load balancer. ** If an idle timeout is configured, the load balancer allows connections to remain idle for the specified * duration. When a connection is idle, no data is sent over the connection. */ public AwsElbLoadBalancerConnectionSettings getConnectionSettings() { return this.connectionSettings; } /** *
* Connection settings for the load balancer. *
** If an idle timeout is configured, the load balancer allows connections to remain idle for the specified duration. * When a connection is idle, no data is sent over the connection. *
* * @param connectionSettings * Connection settings for the load balancer. ** If an idle timeout is configured, the load balancer allows connections to remain idle for the specified * duration. When a connection is idle, no data is sent over the connection. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsElbLoadBalancerAttributes withConnectionSettings(AwsElbLoadBalancerConnectionSettings connectionSettings) { setConnectionSettings(connectionSettings); return this; } /** *
* Cross-zone load balancing settings for the load balancer. *
** If cross-zone load balancing is enabled, the load balancer routes the request traffic evenly across all instances * regardless of the Availability Zones. *
* * @param crossZoneLoadBalancing * Cross-zone load balancing settings for the load balancer. ** If cross-zone load balancing is enabled, the load balancer routes the request traffic evenly across all * instances regardless of the Availability Zones. */ public void setCrossZoneLoadBalancing(AwsElbLoadBalancerCrossZoneLoadBalancing crossZoneLoadBalancing) { this.crossZoneLoadBalancing = crossZoneLoadBalancing; } /** *
* Cross-zone load balancing settings for the load balancer. *
** If cross-zone load balancing is enabled, the load balancer routes the request traffic evenly across all instances * regardless of the Availability Zones. *
* * @return Cross-zone load balancing settings for the load balancer. ** If cross-zone load balancing is enabled, the load balancer routes the request traffic evenly across all * instances regardless of the Availability Zones. */ public AwsElbLoadBalancerCrossZoneLoadBalancing getCrossZoneLoadBalancing() { return this.crossZoneLoadBalancing; } /** *
* Cross-zone load balancing settings for the load balancer. *
** If cross-zone load balancing is enabled, the load balancer routes the request traffic evenly across all instances * regardless of the Availability Zones. *
* * @param crossZoneLoadBalancing * Cross-zone load balancing settings for the load balancer. ** If cross-zone load balancing is enabled, the load balancer routes the request traffic evenly across all * instances regardless of the Availability Zones. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsElbLoadBalancerAttributes withCrossZoneLoadBalancing(AwsElbLoadBalancerCrossZoneLoadBalancing crossZoneLoadBalancing) { setCrossZoneLoadBalancing(crossZoneLoadBalancing); return this; } /** *
* Any additional attributes for a load balancer. *
* * @return Any additional attributes for a load balancer. */ public java.util.List* Any additional attributes for a load balancer. *
* * @param additionalAttributes * Any additional attributes for a load balancer. */ public void setAdditionalAttributes(java.util.Collection* Any additional attributes for a load balancer. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setAdditionalAttributes(java.util.Collection)} or {@link #withAdditionalAttributes(java.util.Collection)} * if you want to override the existing values. *
* * @param additionalAttributes * Any additional attributes for a load balancer. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsElbLoadBalancerAttributes withAdditionalAttributes(AwsElbLoadBalancerAdditionalAttribute... additionalAttributes) { if (this.additionalAttributes == null) { setAdditionalAttributes(new java.util.ArrayList* Any additional attributes for a load balancer. *
* * @param additionalAttributes * Any additional attributes for a load balancer. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsElbLoadBalancerAttributes withAdditionalAttributes(java.util.Collection