Example usage for com.amazonaws.services.elasticloadbalancing.model ConnectionDraining ConnectionDraining

List of usage examples for com.amazonaws.services.elasticloadbalancing.model ConnectionDraining ConnectionDraining

Introduction

In this page you can find the example usage for com.amazonaws.services.elasticloadbalancing.model ConnectionDraining ConnectionDraining.

Prototype

ConnectionDraining

Source Link

Usage

From source file:org.apache.stratos.aws.extension.AWSHelper.java

License:Apache License

public void modifyLBAttributes(String loadBalancerName, String region, boolean enableCrossZoneLbing,
        boolean enableConnDraining) {

    if (!enableCrossZoneLbing && !enableConnDraining) {
        log.info("No attributes specified to modify in the LB " + loadBalancerName);
        return;//  ww  w.j  a v  a2s  .c o m
    }

    ModifyLoadBalancerAttributesRequest modifyLBAttributesReq = new ModifyLoadBalancerAttributesRequest()
            .withLoadBalancerName(loadBalancerName);
    LoadBalancerAttributes modifiedLbAttributes = new LoadBalancerAttributes();
    if (enableCrossZoneLbing) {
        modifiedLbAttributes.setCrossZoneLoadBalancing(new CrossZoneLoadBalancing().withEnabled(true));
    }
    if (enableConnDraining) {
        modifiedLbAttributes.setConnectionDraining(new ConnectionDraining().withEnabled(true));
    }

    modifyLBAttributesReq.setLoadBalancerAttributes(modifiedLbAttributes);

    elbClient.setEndpoint(String.format(Constants.ELB_ENDPOINT_URL_FORMAT, region));

    ModifyLoadBalancerAttributesResult modifyLBAttributesRes = elbClient
            .modifyLoadBalancerAttributes(modifyLBAttributesReq);
    if (modifyLBAttributesRes != null) {
        log.info("Successfully enabled cross zone load balancing and connection draining for "
                + loadBalancerName);
    } else {
        log.error("Failed to enable cross zone load balancing and connection draining for " + loadBalancerName);
    }
}

From source file:web.component.impl.aws.AWSELBImpl.java

@Override
public ModifyLoadBalancerAttributesResult enableConnectionDraining(String loadBalancerName) {
    return modifyLoadBalancerAttributes(loadBalancerName, new ConnectionDraining().withEnabled(Boolean.TRUE));
}

From source file:web.component.impl.aws.AWSELBImpl.java

@Override
public ModifyLoadBalancerAttributesResult enableConnectionDraining(String loadBalancerName, Integer timeout) {

    if (timeout == null)
        throw new IllegalArgumentException("ConnectionDraining timeout not specified.");

    return modifyLoadBalancerAttributes(loadBalancerName,
            new ConnectionDraining().withEnabled(Boolean.TRUE).withTimeout(timeout));
}

From source file:web.component.impl.aws.AWSELBImpl.java

@Override
public ModifyLoadBalancerAttributesResult disableConnectionDraining(String loadBalancerName) {
    return modifyLoadBalancerAttributes(loadBalancerName, new ConnectionDraining().withEnabled(Boolean.FALSE));
}