Package org.jclouds.ec2.compute.strategy
Class EC2CreateNodesInGroupThenAddToSet
- java.lang.Object
-
- org.jclouds.ec2.compute.strategy.EC2CreateNodesInGroupThenAddToSet
-
- All Implemented Interfaces:
CreateNodesInGroupThenAddToSet
- Direct Known Subclasses:
AWSEC2CreateNodesInGroupThenAddToSet
@Singleton public class EC2CreateNodesInGroupThenAddToSet extends Object implements CreateNodesInGroupThenAddToSet
creates futures that correlate to
-
-
Field Summary
Fields Modifier and Type Field Description static com.google.common.base.Function<RunningInstance,RegionAndName>
instanceToRegionAndName
protected Logger
logger
-
Constructor Summary
Constructors Modifier Constructor Description protected
EC2CreateNodesInGroupThenAddToSet(EC2Api client, com.google.common.cache.LoadingCache<RegionAndName,String> elasticIpCache, com.google.common.base.Predicate<AtomicReference<NodeMetadata>> nodeRunning, CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions createKeyPairAndSecurityGroupsAsNeededAndReturncustomize, PresentInstances presentInstances, com.google.common.base.Function<RunningInstance,NodeMetadata> runningInstanceToNodeMetadata, com.google.common.cache.LoadingCache<RunningInstance,com.google.common.base.Optional<LoginCredentials>> instanceToCredentials, Map<String,Credentials> credentialStore, ComputeUtils utils)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Set<RunningInstance>
createNodesInRegionAndZone(String region, String zone, String group, int count, Template template, RunInstancesOptions instanceOptions)
Map<?,com.google.common.util.concurrent.ListenableFuture<Void>>
execute(String group, int count, Template template, Set<NodeMetadata> goodNodes, Map<NodeMetadata,Exception> badNodes, com.google.common.collect.Multimap<NodeMetadata,CustomizationResponse> customizationResponses)
-
-
-
Field Detail
-
logger
@Named("jclouds.compute") protected Logger logger
-
instanceToRegionAndName
public static final com.google.common.base.Function<RunningInstance,RegionAndName> instanceToRegionAndName
-
-
Constructor Detail
-
EC2CreateNodesInGroupThenAddToSet
@Inject protected EC2CreateNodesInGroupThenAddToSet(EC2Api client, @Named("ELASTICIP") com.google.common.cache.LoadingCache<RegionAndName,String> elasticIpCache, @Named("jclouds.compute.timeout.node-running") com.google.common.base.Predicate<AtomicReference<NodeMetadata>> nodeRunning, CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions createKeyPairAndSecurityGroupsAsNeededAndReturncustomize, PresentInstances presentInstances, com.google.common.base.Function<RunningInstance,NodeMetadata> runningInstanceToNodeMetadata, com.google.common.cache.LoadingCache<RunningInstance,com.google.common.base.Optional<LoginCredentials>> instanceToCredentials, Map<String,Credentials> credentialStore, ComputeUtils utils)
-
-
Method Detail
-
execute
public Map<?,com.google.common.util.concurrent.ListenableFuture<Void>> execute(String group, int count, Template template, Set<NodeMetadata> goodNodes, Map<NodeMetadata,Exception> badNodes, com.google.common.collect.Multimap<NodeMetadata,CustomizationResponse> customizationResponses)
- Specified by:
execute
in interfaceCreateNodesInGroupThenAddToSet
-
createNodesInRegionAndZone
protected Set<RunningInstance> createNodesInRegionAndZone(String region, String zone, String group, int count, Template template, RunInstancesOptions instanceOptions)
-
-