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
FieldsModifier and TypeFieldDescriptionstatic final com.google.common.base.Function
<RunningInstance, RegionAndName> protected Logger
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
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
Modifier and TypeMethodDescriptionprotected Set
<RunningInstance> createNodesInRegionAndZone
(String region, String zone, String group, int count, Template template, RunInstancesOptions instanceOptions) execute
(String group, int count, Template template, Set<NodeMetadata> goodNodes, Map<NodeMetadata, Exception> badNodes, com.google.common.collect.Multimap<NodeMetadata, CustomizationResponse> customizationResponses)
-
Field Details
-
logger
-
instanceToRegionAndName
public static final com.google.common.base.Function<RunningInstance,RegionAndName> instanceToRegionAndName
-
-
Constructor Details
-
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 Details
-
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)
-