Package org.jclouds.cloudstack.compute
Class CloudStackComputeService
java.lang.Object
org.jclouds.compute.internal.BaseComputeService
org.jclouds.cloudstack.compute.CloudStackComputeService
- All Implemented Interfaces:
ComputeService
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final CloudStackApiprotected final com.google.common.cache.LoadingCache<String, SshKeyPair> protected final GroupNamingConvention.Factoryprotected final com.google.common.base.Function<Set<? extends NodeMetadata>, com.google.common.collect.Multimap<String, String>> protected final com.google.common.cache.LoadingCache<ZoneAndName, SecurityGroup> Fields inherited from class org.jclouds.compute.internal.BaseComputeService
context, credentialStore, logger -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedCloudStackComputeService(ComputeServiceContext context, Map<String, Credentials> credentialStore, com.google.common.base.Supplier<Set<? extends Image>> images, com.google.common.base.Supplier<Set<? extends Hardware>> sizes, com.google.common.base.Supplier<Set<? extends Location>> locations, ListNodesStrategy listNodesStrategy, GetImageStrategy getImageStrategy, GetNodeMetadataStrategy getNodeMetadataStrategy, CreateNodesInGroupThenAddToSet runNodesAndAddToSetStrategy, RebootNodeStrategy rebootNodeStrategy, DestroyNodeStrategy destroyNodeStrategy, ResumeNodeStrategy startNodeStrategy, SuspendNodeStrategy stopNodeStrategy, javax.inject.Provider<TemplateBuilder> templateBuilderProvider, javax.inject.Provider<TemplateOptions> templateOptionsProvider, com.google.common.base.Predicate<AtomicReference<NodeMetadata>> nodeRunning, com.google.common.base.Predicate<AtomicReference<NodeMetadata>> nodeTerminated, com.google.common.base.Predicate<AtomicReference<NodeMetadata>> nodeSuspended, InitializeRunScriptOnNodeOrPlaceInBadMap.Factory initScriptRunnerFactory, RunScriptOnNode.Factory runScriptOnNodeFactory, InitAdminAccess initAdminAccess, PersistNodeCredentials persistNodeCredentials, com.google.common.util.concurrent.ListeningExecutorService userExecutor, CloudStackApi client, com.google.common.cache.LoadingCache<ZoneAndName, SecurityGroup> securityGroupMap, com.google.common.cache.LoadingCache<String, SshKeyPair> keyPairCache, com.google.common.base.Function<Set<? extends NodeMetadata>, com.google.common.collect.Multimap<String, String>> orphanedGroupsByZoneId, GroupNamingConvention.Factory namingConvention, com.google.common.base.Supplier<com.google.common.cache.LoadingCache<String, Zone>> zoneIdToZone, com.google.common.base.Optional<ImageExtension> imageExtension, com.google.common.base.Optional<SecurityGroupExtension> securityGroupExtension, DelegatingImageExtension.Factory delegatingImageExtension) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidcleanOrphanedGroupsInZone(Set<String> groups, String zoneId) protected voidcleanUpIncidentalResourcesOfDeadNodes(Set<? extends NodeMetadata> deadNodes) returns template options, asCloudStackTemplateOptions.Methods inherited from class org.jclouds.compute.internal.BaseComputeService
createNodesInGroup, createNodesInGroup, createNodesInGroup, destroyNode, destroyNodesMatching, doDestroyNode, getContext, getImage, getImageExtension, getNodeMetadata, getSecurityGroupExtension, listAssignableLocations, listHardwareProfiles, listImages, listNodes, listNodesByIds, listNodesDetailsMatching, rebootNode, rebootNodesMatching, resumeNode, resumeNodesMatching, runScriptOnNode, runScriptOnNode, runScriptOnNode, runScriptOnNode, runScriptOnNodesMatching, runScriptOnNodesMatching, runScriptOnNodesMatching, runScriptOnNodesMatching, submitScriptOnNode, submitScriptOnNode, suspendNode, suspendNodesMatching, templateBuilder, updateNodeWithCredentialsIfPresent
-
Field Details
-
client
-
securityGroupMap
-
keyPairCache
-
orphanedGroupsByZoneId
protected final com.google.common.base.Function<Set<? extends NodeMetadata>,com.google.common.collect.Multimap<String, orphanedGroupsByZoneIdString>> -
namingConvention
-
zoneIdToZone
-
-
Constructor Details
-
CloudStackComputeService
@Inject protected CloudStackComputeService(ComputeServiceContext context, Map<String, Credentials> credentialStore, com.google.common.base.Supplier<Set<? extends Image>> images, com.google.common.base.Supplier<Set<? extends Hardware>> sizes, com.google.common.base.Supplier<Set<? extends Location>> locations, ListNodesStrategy listNodesStrategy, GetImageStrategy getImageStrategy, GetNodeMetadataStrategy getNodeMetadataStrategy, CreateNodesInGroupThenAddToSet runNodesAndAddToSetStrategy, RebootNodeStrategy rebootNodeStrategy, DestroyNodeStrategy destroyNodeStrategy, ResumeNodeStrategy startNodeStrategy, SuspendNodeStrategy stopNodeStrategy, javax.inject.Provider<TemplateBuilder> templateBuilderProvider, @Named("DEFAULT") javax.inject.Provider<TemplateOptions> templateOptionsProvider, @Named("jclouds.compute.timeout.node-running") com.google.common.base.Predicate<AtomicReference<NodeMetadata>> nodeRunning, @Named("jclouds.compute.timeout.node-terminated") com.google.common.base.Predicate<AtomicReference<NodeMetadata>> nodeTerminated, @Named("jclouds.compute.timeout.node-suspended") com.google.common.base.Predicate<AtomicReference<NodeMetadata>> nodeSuspended, InitializeRunScriptOnNodeOrPlaceInBadMap.Factory initScriptRunnerFactory, RunScriptOnNode.Factory runScriptOnNodeFactory, InitAdminAccess initAdminAccess, PersistNodeCredentials persistNodeCredentials, @Named("jclouds.user-threads") com.google.common.util.concurrent.ListeningExecutorService userExecutor, CloudStackApi client, com.google.common.cache.LoadingCache<ZoneAndName, SecurityGroup> securityGroupMap, com.google.common.cache.LoadingCache<String, SshKeyPair> keyPairCache, com.google.common.base.Function<Set<? extends NodeMetadata>, com.google.common.collect.Multimap<String, String>> orphanedGroupsByZoneId, GroupNamingConvention.Factory namingConvention, com.google.common.base.Supplier<com.google.common.cache.LoadingCache<String, Zone>> zoneIdToZone, com.google.common.base.Optional<ImageExtension> imageExtension, com.google.common.base.Optional<SecurityGroupExtension> securityGroupExtension, DelegatingImageExtension.Factory delegatingImageExtension)
-
-
Method Details
-
cleanUpIncidentalResourcesOfDeadNodes
- Overrides:
cleanUpIncidentalResourcesOfDeadNodesin classBaseComputeService
-
cleanOrphanedGroupsInZone
-
templateOptions
returns template options, asCloudStackTemplateOptions.- Specified by:
templateOptionsin interfaceComputeService- Overrides:
templateOptionsin classBaseComputeService
-