Example usage for com.amazonaws.services.autoscaling.model AutoScalingGroup getAutoScalingGroupARN

List of usage examples for com.amazonaws.services.autoscaling.model AutoScalingGroup getAutoScalingGroupARN

Introduction

In this page you can find the example usage for com.amazonaws.services.autoscaling.model AutoScalingGroup getAutoScalingGroupARN.

Prototype


public String getAutoScalingGroupARN() 

Source Link

Document

The Amazon Resource Name (ARN) of the Auto Scaling group.

Usage

From source file:com.haskins.cloudtrailviewer.dialog.resourcedetail.detailpanels.AsGroupDetail.java

License:Open Source License

private void buildUI(DescribeAutoScalingGroupsResult detail) {

    JTabbedPane tabs = new JTabbedPane();
    tabs.add("AS Group", primaryScrollPane);
    tabs.add("Tags", tagsScrollPane);

    this.add(tabs, BorderLayout.CENTER);

    List<AutoScalingGroup> groups = detail.getAutoScalingGroups();
    if (!groups.isEmpty()) {
        AutoScalingGroup group = groups.get(0);

        if (group.getAutoScalingGroupARN() != null) {
            primaryTableModel.addRow(new Object[] { "AutoScaling Group Arn", group.getAutoScalingGroupARN() });
        }//  w ww .j  a va2s.c o  m
        if (group.getAutoScalingGroupName() != null) {
            primaryTableModel
                    .addRow(new Object[] { "AutoScaling Group Name", group.getAutoScalingGroupName() });
        }

        if (!group.getAvailabilityZones().isEmpty()) {

            StringBuilder azs = new StringBuilder();
            for (String az : group.getAvailabilityZones()) {
                azs.append(az).append(", ");
            }

            primaryTableModel.addRow(new Object[] { "Availability Zones", azs.toString() });
        }

        if (group.getCreatedTime() != null) {
            primaryTableModel.addRow(new Object[] { "Created", getDateString(group.getCreatedTime()) });
        }
        if (group.getDefaultCooldown() != null) {
            primaryTableModel.addRow(new Object[] { "Default Cooldown", group.getDefaultCooldown() });
        }
        if (group.getDesiredCapacity() != null) {
            primaryTableModel.addRow(new Object[] { "Desired Capacity", group.getDesiredCapacity() });
        }
        if (group.getHealthCheckGracePeriod() != null) {
            primaryTableModel
                    .addRow(new Object[] { "HealthCheck Grace Period", group.getHealthCheckGracePeriod() });
        }
        if (group.getHealthCheckType() != null) {
            primaryTableModel.addRow(new Object[] { "HealthCheck Type", group.getHealthCheckType() });
        }

        if (!group.getInstances().isEmpty()) {

            StringBuilder instances = new StringBuilder();
            for (Instance instance : group.getInstances()) {
                instances.append(instance.getInstanceId()).append(", ");
            }

            primaryTableModel.addRow(new Object[] { "Instances", instances.toString() });
        }

        if (group.getLaunchConfigurationName() != null) {
            primaryTableModel
                    .addRow(new Object[] { "Launch Configuration Name", group.getLaunchConfigurationName() });
        }

        if (!group.getLoadBalancerNames().isEmpty()) {

            StringBuilder instances = new StringBuilder();
            for (String instance : group.getLoadBalancerNames()) {
                instances.append(instance).append(", ");
            }

            primaryTableModel.addRow(new Object[] { "LoadBalancer names", instances.toString() });
        }

        if (group.getMaxSize() != null) {
            primaryTableModel.addRow(new Object[] { "Max Size", group.getMaxSize() });
        }
        if (group.getMinSize() != null) {
            primaryTableModel.addRow(new Object[] { "Min Size", group.getMinSize() });
        }
        if (group.getPlacementGroup() != null) {
            primaryTableModel.addRow(new Object[] { "Placement Group", group.getPlacementGroup() });
        }
        if (group.getVPCZoneIdentifier() != null) {
            primaryTableModel.addRow(new Object[] { "VPC Zone Identifier", group.getVPCZoneIdentifier() });
        }

        List<TagDescription> tags = group.getTags();
        for (TagDescription tag : tags) {
            tagsTableModel.addRow(new Object[] { tag.getKey(), tag.getValue() });
        }
    }
}

From source file:com.netflix.spinnaker.clouddriver.aws.event.DefaultAfterResizeEventHandler.java

License:Apache License

/**
 * There is an opportunity to expedite a resize to zero by explicitly terminating instances
 * (server group _must not_ be attached to a load balancer nor have any life cycle hooks)
 *//*from   w  ww.  ja  v  a 2 s.c  o  m*/
@Override
public void handle(AfterResizeEvent event) {
    AutoScalingGroup autoScalingGroup = event.getAutoScalingGroup();

    if (event.getCapacity() == null || event.getCapacity().getDesired() == null) {
        return;
    }

    if (event.getCapacity().getDesired() > 0) {
        return;
    }

    if (!autoScalingGroup.getLoadBalancerNames().isEmpty()
            || !autoScalingGroup.getTargetGroupARNs().isEmpty()) {
        event.getTask().updateStatus(PHASE,
                "Skipping explicit instance termination, server group is attached to one or more load balancers");
        return;
    }

    try {
        List<LifecycleHook> existingLifecycleHooks = fetchTerminatingLifecycleHooks(
                event.getAmazonAutoScaling(), autoScalingGroup.getAutoScalingGroupName());
        if (!existingLifecycleHooks.isEmpty()) {
            event.getTask().updateStatus(PHASE,
                    "Skipping explicit instance termination, server group has one or more lifecycle hooks");
            return;
        }
    } catch (Exception e) {
        log.error("Unable to fetch lifecycle hooks (serverGroupName: {}, arn: {})",
                autoScalingGroup.getAutoScalingGroupName(), autoScalingGroup.getAutoScalingGroupARN(), e);

        event.getTask().updateStatus(PHASE, String.format(
                "Skipping explicit instance termination, unable to fetch lifecycle hooks (reason: '%s')",
                e.getMessage()));
        return;
    }

    terminateInstancesInAutoScalingGroup(event.getTask(), event.getAmazonEC2(), event.getAutoScalingGroup());
}

From source file:org.xmlsh.aws.asDescribeGroups.java

License:BSD License

private void write(AutoScalingGroup group) throws XMLStreamException {
    startElement("group");
    attribute("group-arn", group.getAutoScalingGroupARN());
    attribute("name", group.getAutoScalingGroupName());

    attribute("create-time", group.getCreatedTime());
    attribute("default-cooldown", group.getDefaultCooldown());
    attribute("desired-capacity", group.getDesiredCapacity());

    attribute("health-check-grace-period", group.getHealthCheckGracePeriod());
    attribute("health-check-type", group.getHealthCheckType());

    attribute("launch-configuration-name", group.getLaunchConfigurationName());

    attribute("max-size", group.getMaxSize());
    attribute("min-size", group.getMinSize());
    attribute("placement-group", group.getPlacementGroup());

    attribute("status", group.getStatus());

    attribute("vpc-zone-id", group.getVPCZoneIdentifier());
    writeStringList("termination-policies", "termination-policy", "name", group.getTerminationPolicies());

    writeZones(group.getAvailabilityZones());
    writeMetrics(group.getEnabledMetrics());
    writeInstances(group.getInstances());
    writeELBNames(group.getLoadBalancerNames());
    writeSuspendedProcesses(group.getSuspendedProcesses());
    writeTagDescriptions(group.getTags());
    endElement();/*  w ww.jav a2 s.  com*/

}