Package org.jclouds.compute.stub.config
Class StubComputeServiceAdapter
java.lang.Object
org.jclouds.compute.stub.config.StubComputeServiceAdapter
- All Implemented Interfaces:
ComputeServiceAdapter<NodeMetadata,,Hardware, Image, Location> JCloudsNativeComputeServiceAdapter
@Singleton
public class StubComputeServiceAdapter
extends Object
implements JCloudsNativeComputeServiceAdapter
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.jclouds.compute.ComputeServiceAdapter
ComputeServiceAdapter.NodeAndInitialCredentials<N>Nested classes/interfaces inherited from interface org.jclouds.compute.JCloudsNativeComputeServiceAdapter
JCloudsNativeComputeServiceAdapter.NodeWithInitialCredentials -
Constructor Summary
ConstructorsConstructorDescriptionStubComputeServiceAdapter(ConcurrentMap<String, NodeMetadata> nodes, com.google.common.util.concurrent.ListeningExecutorService executor, com.google.common.base.Supplier<Location> location, javax.inject.Provider<Integer> idProvider, String publicIpPrefix, String privateIpPrefix, String passwordPrefix, JustProvider locationSupplier, Map<OsFamily, Map<String, String>> osToVersionMap, com.google.common.collect.Multimap<String, SecurityGroup> groupsForNodes, com.google.common.base.Optional<SecurityGroupExtension> securityGroupExtension) -
Method Summary
Modifier and TypeMethodDescriptioncreateNodeWithGroupEncodedIntoName(String group, String name, Template template) ComputeService.createNodesInGroup(String, int, Template)generates the parameters passed into this method such that each node in the set has a unique name.voiddestroyNode(String id) get a specific image by idHardware profiles describe available cpu, memory, and disk configurations that can be used to run a node.Images are the available configured operating systems that someone can run a node with.listNodesByIds(Iterable<String> ids) voidrebootNode(String id) voidresumeNode(String id) protected voidsetStateOnNode(NodeMetadata.Status status, NodeMetadata node) protected voidsetStateOnNodeAfterDelay(NodeMetadata.Status status, NodeMetadata node, long millis) voidsuspendNode(String id)
-
Constructor Details
-
StubComputeServiceAdapter
@Inject public StubComputeServiceAdapter(ConcurrentMap<String, NodeMetadata> nodes, @Named("jclouds.user-threads") com.google.common.util.concurrent.ListeningExecutorService executor, com.google.common.base.Supplier<Location> location, @Named("NODE_ID") javax.inject.Provider<Integer> idProvider, @Named("PUBLIC_IP_PREFIX") String publicIpPrefix, @Named("PRIVATE_IP_PREFIX") String privateIpPrefix, @Named("PASSWORD_PREFIX") String passwordPrefix, JustProvider locationSupplier, Map<OsFamily, Map<String, String>> osToVersionMap, com.google.common.collect.Multimap<String, SecurityGroup> groupsForNodes, com.google.common.base.Optional<SecurityGroupExtension> securityGroupExtension)
-
-
Method Details
-
setStateOnNode
-
setStateOnNodeAfterDelay
-
createNodeWithGroupEncodedIntoName
public JCloudsNativeComputeServiceAdapter.NodeWithInitialCredentials createNodeWithGroupEncodedIntoName(String group, String name, Template template) Description copied from interface:JCloudsNativeComputeServiceAdapterComputeService.createNodesInGroup(String, int, Template)generates the parameters passed into this method such that each node in the set has a unique name.note
It is intentional to return the library native node object, as generic typeN. If you are not using library-native objects (such as libvirtDomain) useJCloudsNativeComputeServiceAdapterinstead.note
Your responsibility is to create a node with the underlying library and return after storing its credentials in the supplied map corresponding toinvalid reference
credentialStore- Specified by:
createNodeWithGroupEncodedIntoNamein interfaceComputeServiceAdapter<NodeMetadata,Hardware, Image, Location> - Specified by:
createNodeWithGroupEncodedIntoNamein interfaceJCloudsNativeComputeServiceAdapter- Parameters:
group- used to aggregate nodes with identical configurationname- unique supplied name for the node, which has the group encoded into it.template- includesimageId,locationId, andhardwareIdused to resume the instance.- Returns:
- library-native representation of a node. TODO: return typed exception on createNodeFailure
- See Also:
-
listHardwareProfiles
Description copied from interface:JCloudsNativeComputeServiceAdapterHardware profiles describe available cpu, memory, and disk configurations that can be used to run a node. To implement this method, return the library native hardware profiles available to the user. These will be used to launch nodes as a part of the template.- Specified by:
listHardwareProfilesin interfaceComputeServiceAdapter<NodeMetadata,Hardware, Image, Location> - Specified by:
listHardwareProfilesin interfaceJCloudsNativeComputeServiceAdapter- Returns:
- a non-null iterable of available hardware profiles.
- See Also:
-
listImages
Description copied from interface:JCloudsNativeComputeServiceAdapterImages are the available configured operating systems that someone can run a node with. To implement this method, return the library native images available to the user. These will be used to launch nodes as a part of the template.- Specified by:
listImagesin interfaceComputeServiceAdapter<NodeMetadata,Hardware, Image, Location> - Specified by:
listImagesin interfaceJCloudsNativeComputeServiceAdapter- Returns:
- a non-null iterable of available images.
- See Also:
-
getImage
Description copied from interface:ComputeServiceAdapterget a specific image by id- Specified by:
getImagein interfaceComputeServiceAdapter<NodeMetadata,Hardware, Image, Location> - Parameters:
id-, which is not necessarilyinvalid reference
Image#getIdinvalid reference
Image#getProviderId- Returns:
- image or null if not exists.
-
listNodes
Description copied from interface:JCloudsNativeComputeServiceAdapter- Specified by:
listNodesin interfaceComputeServiceAdapter<NodeMetadata,Hardware, Image, Location> - Specified by:
listNodesin interfaceJCloudsNativeComputeServiceAdapter
-
listNodesByIds
- Specified by:
listNodesByIdsin interfaceComputeServiceAdapter<NodeMetadata,Hardware, Image, Location>
-
listLocations
Description copied from interface:JCloudsNativeComputeServiceAdapter- Specified by:
listLocationsin interfaceComputeServiceAdapter<NodeMetadata,Hardware, Image, Location> - Specified by:
listLocationsin interfaceJCloudsNativeComputeServiceAdapter
-
getNode
Description copied from interface:JCloudsNativeComputeServiceAdapter- Specified by:
getNodein interfaceComputeServiceAdapter<NodeMetadata,Hardware, Image, Location> - Specified by:
getNodein interfaceJCloudsNativeComputeServiceAdapter
-
destroyNode
Description copied from interface:JCloudsNativeComputeServiceAdapter- Specified by:
destroyNodein interfaceComputeServiceAdapter<NodeMetadata,Hardware, Image, Location> - Specified by:
destroyNodein interfaceJCloudsNativeComputeServiceAdapter
-
rebootNode
Description copied from interface:JCloudsNativeComputeServiceAdapter- Specified by:
rebootNodein interfaceComputeServiceAdapter<NodeMetadata,Hardware, Image, Location> - Specified by:
rebootNodein interfaceJCloudsNativeComputeServiceAdapter
-
resumeNode
- Specified by:
resumeNodein interfaceComputeServiceAdapter<NodeMetadata,Hardware, Image, Location>
-
suspendNode
- Specified by:
suspendNodein interfaceComputeServiceAdapter<NodeMetadata,Hardware, Image, Location>
-