org.jclouds.ec2.compute.strategy
Class EC2CreateNodesInGroupThenAddToSet

java.lang.Object
  extended by org.jclouds.ec2.compute.strategy.EC2CreateNodesInGroupThenAddToSet
All Implemented Interfaces:
org.jclouds.compute.strategy.CreateNodesInGroupThenAddToSet

@Singleton
public class EC2CreateNodesInGroupThenAddToSet
extends Object
implements org.jclouds.compute.strategy.CreateNodesInGroupThenAddToSet

creates futures that correlate to


Field Summary
static com.google.common.base.Function<RunningInstance,RegionAndName> instanceToRegionAndName
           
protected  org.jclouds.logging.Logger logger
           
 
Constructor Summary
protected EC2CreateNodesInGroupThenAddToSet(EC2Api client, com.google.common.cache.LoadingCache<RegionAndName,String> elasticIpCache, com.google.common.base.Predicate<AtomicReference<org.jclouds.compute.domain.NodeMetadata>> nodeRunning, CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions createKeyPairAndSecurityGroupsAsNeededAndReturncustomize, PresentInstances presentInstances, com.google.common.base.Function<RunningInstance,org.jclouds.compute.domain.NodeMetadata> runningInstanceToNodeMetadata, com.google.common.cache.LoadingCache<RunningInstance,com.google.common.base.Optional<org.jclouds.domain.LoginCredentials>> instanceToCredentials, Map<String,org.jclouds.domain.Credentials> credentialStore, org.jclouds.compute.util.ComputeUtils utils)
           
 
Method Summary
protected  Set<RunningInstance> createNodesInRegionAndZone(String region, String zone, String group, int count, org.jclouds.compute.domain.Template template, RunInstancesOptions instanceOptions)
           
 Map<?,com.google.common.util.concurrent.ListenableFuture<Void>> execute(String group, int count, org.jclouds.compute.domain.Template template, Set<org.jclouds.compute.domain.NodeMetadata> goodNodes, Map<org.jclouds.compute.domain.NodeMetadata,Exception> badNodes, com.google.common.collect.Multimap<org.jclouds.compute.domain.NodeMetadata,org.jclouds.compute.config.CustomizationResponse> customizationResponses)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

@Named(value="jclouds.compute")
protected org.jclouds.logging.Logger logger

instanceToRegionAndName

public static final com.google.common.base.Function<RunningInstance,RegionAndName> instanceToRegionAndName
Constructor Detail

EC2CreateNodesInGroupThenAddToSet

@Inject
protected EC2CreateNodesInGroupThenAddToSet(EC2Api client,
                                                   @Named(value="ELASTICIP")
                                                   com.google.common.cache.LoadingCache<RegionAndName,String> elasticIpCache,
                                                   @Named(value="jclouds.compute.timeout.node-running")
                                                   com.google.common.base.Predicate<AtomicReference<org.jclouds.compute.domain.NodeMetadata>> nodeRunning,
                                                   CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions createKeyPairAndSecurityGroupsAsNeededAndReturncustomize,
                                                   PresentInstances presentInstances,
                                                   com.google.common.base.Function<RunningInstance,org.jclouds.compute.domain.NodeMetadata> runningInstanceToNodeMetadata,
                                                   com.google.common.cache.LoadingCache<RunningInstance,com.google.common.base.Optional<org.jclouds.domain.LoginCredentials>> instanceToCredentials,
                                                   Map<String,org.jclouds.domain.Credentials> credentialStore,
                                                   org.jclouds.compute.util.ComputeUtils utils)
Method Detail

execute

public Map<?,com.google.common.util.concurrent.ListenableFuture<Void>> execute(String group,
                                                                               int count,
                                                                               org.jclouds.compute.domain.Template template,
                                                                               Set<org.jclouds.compute.domain.NodeMetadata> goodNodes,
                                                                               Map<org.jclouds.compute.domain.NodeMetadata,Exception> badNodes,
                                                                               com.google.common.collect.Multimap<org.jclouds.compute.domain.NodeMetadata,org.jclouds.compute.config.CustomizationResponse> customizationResponses)
Specified by:
execute in interface org.jclouds.compute.strategy.CreateNodesInGroupThenAddToSet

createNodesInRegionAndZone

protected Set<RunningInstance> createNodesInRegionAndZone(String region,
                                                          String zone,
                                                          String group,
                                                          int count,
                                                          org.jclouds.compute.domain.Template template,
                                                          RunInstancesOptions instanceOptions)


Copyright © 2009-2014 The Apache Software Foundation. All Rights Reserved.