Package org.jclouds.compute
Interface ComputeServiceAdapter<N,H,I,L>
-
- All Known Subinterfaces:
JCloudsNativeComputeServiceAdapter
- All Known Implementing Classes:
AzureComputeServiceAdapter
,BYONComputeServiceAdapter
,CloudStackComputeServiceAdapter
,DigitalOcean2ComputeServiceAdapter
,DockerComputeServiceAdapter
,ElasticStackComputeServiceAdapter
,GleSYSComputeServiceAdapter
,GoGridComputeServiceAdapter
,GoogleComputeEngineServiceAdapter
,NovaComputeServiceAdapter
,PacketComputeServiceAdapter
,ProfitBricksComputeServiceAdapter
,ServerManagerComputeServiceAdapter
,SoftLayerComputeServiceAdapter
,StubComputeServiceAdapter
public interface ComputeServiceAdapter<N,H,I,L>
A means of specifying the interface between theComputeServices
and a concrete compute cloud implementation, jclouds or otherwise.Important
While implementations may cache results of calls to this interface, it is important to not cache within this. Otherwise, status updates will not be visible immediately.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
ComputeServiceAdapter.NodeAndInitialCredentials<N>
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ComputeServiceAdapter.NodeAndInitialCredentials<N>
createNodeWithGroupEncodedIntoName(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.void
destroyNode(String id)
I
getImage(String id)
get a specific image by idN
getNode(String id)
Iterable<H>
listHardwareProfiles()
Hardware profiles describe available cpu, memory, and disk configurations that can be used to run a node.Iterable<I>
listImages()
Images are the available configured operating systems that someone can run a node with.Iterable<L>
listLocations()
Iterable<N>
listNodes()
Iterable<N>
listNodesByIds(Iterable<String> ids)
void
rebootNode(String id)
void
resumeNode(String id)
void
suspendNode(String id)
-
-
-
Method Detail
-
createNodeWithGroupEncodedIntoName
ComputeServiceAdapter.NodeAndInitialCredentials<N> createNodeWithGroupEncodedIntoName(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.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
) useJCloudsNativeComputeServiceAdapter
instead.note
Your responsibility is to create a node with the underlying library and return after storing its credentials in the supplied map corresponding tocredentialStore
- 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
, andhardwareId
used to resume the instance.- Returns:
- library-native representation of a node. TODO: return typed exception on createNodeFailure
- See Also:
ComputeService.createNodesInGroup(String, int, Template)
-
listHardwareProfiles
Iterable<H> listHardwareProfiles()
Hardware 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.- Returns:
- a non-null iterable of available hardware profiles.
- See Also:
ComputeService.listHardwareProfiles()
-
listImages
Iterable<I> listImages()
Images 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.- Returns:
- a non-null iterable of available images.
- See Also:
ComputeService.listImages()
-
getImage
@Nullable I getImage(String id)
get a specific image by id- Parameters:
id
-Image#getId
, which is not necessarilyImage#getProviderId
- Returns:
- image or null if not exists.
-
destroyNode
void destroyNode(String id)
-
rebootNode
void rebootNode(String id)
-
resumeNode
void resumeNode(String id)
-
suspendNode
void suspendNode(String id)
-
-