Example usage for com.amazonaws.services.ec2.model CreatePlacementGroupRequest CreatePlacementGroupRequest

List of usage examples for com.amazonaws.services.ec2.model CreatePlacementGroupRequest CreatePlacementGroupRequest

Introduction

In this page you can find the example usage for com.amazonaws.services.ec2.model CreatePlacementGroupRequest CreatePlacementGroupRequest.

Prototype

public CreatePlacementGroupRequest() 

Source Link

Document

Default constructor for CreatePlacementGroupRequest object.

Usage

From source file:com.norbl.cbp.ppe.Ec2Wrangler.java

License:Open Source License

private void createClusterGroupIfNecessary(String name) {

    DescribePlacementGroupsResult r = ec2Client.describePlacementGroups();

    for (PlacementGroup pg : r.getPlacementGroups()) {
        if (pg.getGroupName().equals(name)) {
            //                /* D */ System.out.println("Ec2W: found extant placement " +
            //                            " group=" + name);
            return;
        }/*from ww w  . j  av  a2 s . co m*/
    }
    // We need to create it.
    CreatePlacementGroupRequest req = new CreatePlacementGroupRequest();
    req.setGroupName(name);
    req.setStrategy("cluster");

    ec2Client.createPlacementGroup(req);
    //        /* D */ System.out.println("Ec2W: create placement group name=" +
    //                        name);
}

From source file:org.excalibur.service.aws.ec2.EC2.java

License:Open Source License

public void createPlacementGroupsIfDoNotExist(org.excalibur.core.cloud.api.Placement... groups) {
    if (groups != null) {
        ListeningExecutorService executor = newListeningDynamicScalingThreadPool(
                String.format("create-groups-%s", credentials_.getRegion().getName()));

        List<Callable<Void>> tasks = newArrayList();

        for (final org.excalibur.core.cloud.api.Placement placement : groups) {
            tasks.add(new Callable<Void>() {
                @Override//from www  .j  a  v a  2s  . c om
                public Void call() throws Exception {
                    if (placement != null && !isNullOrEmpty(placement.getGroupName())) {
                        try {
                            new AmazonEC2Client(awsCredentials_)
                                    .describePlacementGroups(new DescribePlacementGroupsRequest()
                                            .withGroupNames(placement.getGroupName()));
                        } catch (AmazonClientException exception) {
                            LOG.debug("The group {} is unknown! Provider message: {}", placement.getGroupName(),
                                    exception.getMessage());
                            ec2_.createPlacementGroup(
                                    new CreatePlacementGroupRequest().withGroupName(placement.getGroupName())
                                            .withStrategy(PlacementStrategy.Cluster));
                        }
                    }
                    return null;
                }
            });
        }

        invokeAllAndShutdownWhenFinish(tasks, executor);
    }
}