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

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

Introduction

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

Prototype

public DeregisterInstancesFromLoadBalancerRequest() 

Source Link

Document

Default constructor for DeregisterInstancesFromLoadBalancerRequest object.

Usage

From source file:com.urbancode.terraform.tasks.aws.helpers.AWSHelper.java

License:Apache License

/**
 *
 * @param loadBalancerName/*from  ww  w .  j  a  v  a2 s  .c  o  m*/
 * @param instances
 * @param lbClient
 * @return
 */
public List<com.amazonaws.services.elasticloadbalancing.model.Instance> deregisterInstancesLB(
        String loadBalancerName, List<com.amazonaws.services.elasticloadbalancing.model.Instance> instances,
        AmazonElasticLoadBalancing lbClient) {

    DeregisterInstancesFromLoadBalancerRequest request = new DeregisterInstancesFromLoadBalancerRequest()
            .withInstances(instances).withLoadBalancerName(loadBalancerName);
    DeregisterInstancesFromLoadBalancerResult result = lbClient.deregisterInstancesFromLoadBalancer(request);
    return result.getInstances();
}

From source file:com.zotoh.cloudapi.aws.ElasticLoadBalancer.java

License:Open Source License

@SuppressWarnings("serial")
@Override//from   w  w w . j av a2s . c om
public void removeServers(String balancer, final String... servers) throws CloudException, InternalException {
    tstEStrArg("load-balancer-name", balancer);
    if (servers == null || servers.length == 0) {
        return;
    }
    List<Instance> lst = new ArrayList<Instance>() {
        {
            for (int i = 0; i < servers.length; ++i) {
                add(new Instance(servers[i]));
            }
        }
    };
    _svc.getCloud().getELB().deregisterInstancesFromLoadBalancer(
            new DeregisterInstancesFromLoadBalancerRequest().withLoadBalancerName(balancer).withInstances(lst));
}

From source file:jp.primecloud.auto.process.aws.AwsLoadBalancerProcess.java

License:Open Source License

public void unregisterInstances(AwsProcessClient awsProcessClient, Long loadBalancerNo,
        List<Long> instanceNos) {
    if (instanceNos.isEmpty()) {
        // ???????
        return;/*from  ww w  . j av  a  2 s . co  m*/
    }

    // ?????
    {
        List<Long> tmpInstanceNos = new ArrayList<Long>();
        List<LoadBalancerInstance> loadBalancerInstances = loadBalancerInstanceDao
                .readByLoadBalancerNo(loadBalancerNo);
        for (LoadBalancerInstance loadBalancerInstance : loadBalancerInstances) {
            if (instanceNos.contains(loadBalancerInstance.getInstanceNo())) {
                LoadBalancerInstanceStatus status = LoadBalancerInstanceStatus
                        .fromStatus(loadBalancerInstance.getStatus());
                if (status == LoadBalancerInstanceStatus.RUNNING) {
                    tmpInstanceNos.add(loadBalancerInstance.getInstanceNo());
                }
            }
        }
        instanceNos = tmpInstanceNos;
    }

    if (instanceNos.isEmpty()) {
        // ?????????
        return;
    }

    // ????
    {
        List<Long> tmpInstanceNos = new ArrayList<Long>();
        List<Instance> instances = instanceDao.readInInstanceNos(instanceNos);
        for (Instance instance : instances) {
            InstanceStatus status = InstanceStatus.fromStatus(instance.getStatus());
            if (status == InstanceStatus.RUNNING) {
                tmpInstanceNos.add(instance.getInstanceNo());
            }
        }
        instanceNos = tmpInstanceNos;
    }

    if (instanceNos.isEmpty()) {
        // ????????
        return;
    }

    // ID?
    List<String> instanceIds = new ArrayList<String>();
    {
        List<AwsInstance> awsInstances = awsInstanceDao.readInInstanceNos(instanceNos);
        for (AwsInstance awsInstance : awsInstances) {
            instanceIds.add(awsInstance.getInstanceId());
        }
    }

    try {
        // ?
        AwsLoadBalancer awsLoadBalancer = awsLoadBalancerDao.read(loadBalancerNo);
        DeregisterInstancesFromLoadBalancerRequest request = new DeregisterInstancesFromLoadBalancerRequest();
        request.withLoadBalancerName(awsLoadBalancer.getName());
        for (String instanceId : instanceIds) {
            request.withInstances(new com.amazonaws.services.elasticloadbalancing.model.Instance(instanceId));
        }
        awsProcessClient.getElbClient().deregisterInstancesFromLoadBalancer(request);

        if (log.isInfoEnabled()) {
            log.info(MessageUtils.getMessage("IPROCESS-200142", awsLoadBalancer.getName(), instanceIds));
        }

        // 
        processLogger.debug(null, null, "AwsElbInstancesDeregist", new Object[] {
                awsProcessClient.getPlatform().getPlatformName(), awsLoadBalancer.getName(), instanceIds });

    } catch (RuntimeException e) {
        // ?
        List<LoadBalancerInstance> loadBalancerInstances = loadBalancerInstanceDao
                .readByLoadBalancerNo(loadBalancerNo);
        for (LoadBalancerInstance loadBalancerInstance : loadBalancerInstances) {
            if (instanceNos.contains(loadBalancerInstance.getInstanceNo())) {
                loadBalancerInstance.setStatus(LoadBalancerInstanceStatus.WARNING.toString());
                loadBalancerInstanceDao.update(loadBalancerInstance);
            }
        }

        throw e;
    }

    // ?
    List<LoadBalancerInstance> loadBalancerInstances = loadBalancerInstanceDao
            .readByLoadBalancerNo(loadBalancerNo);
    for (LoadBalancerInstance loadBalancerInstance : loadBalancerInstances) {
        if (instanceNos.contains(loadBalancerInstance.getInstanceNo())) {
            loadBalancerInstance.setStatus(LoadBalancerInstanceStatus.STOPPED.toString());
            loadBalancerInstanceDao.update(loadBalancerInstance);
        }
    }
}

From source file:org.openinfinity.cloud.service.administrator.EC2Wrapper.java

License:Apache License

public void deregisterInstancesToLoadBalancer(
        Collection<com.amazonaws.services.elasticloadbalancing.model.Instance> instanceList, String lbName) {
    if (this.cloudType == CLOUD_TYPE_AMAZON) {
        try {//from  w w  w.  j  a  va  2 s . com
            DeregisterInstancesFromLoadBalancerRequest request = new DeregisterInstancesFromLoadBalancerRequest();
            request.setInstances(instanceList);
            request.setLoadBalancerName(lbName);
            lb.deregisterInstancesFromLoadBalancer(request);
        } catch (Exception e) {
            String message = e.getMessage();
            LOG.error("Error deregistering instances: " + message);
            ExceptionUtil.throwSystemException(message, e);
        }
    }
}