Interface ComputeServiceAdapter<N,​H,​I,​L>

    • 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 type N. If you are not using library-native objects (such as libvirt Domain) use JCloudsNativeComputeServiceAdapter instead.

        note

        Your responsibility is to create a node with the underlying library and return after storing its credentials in the supplied map corresponding to credentialStore
        Parameters:
        group - used to aggregate nodes with identical configuration
        name - unique supplied name for the node, which has the group encoded into it.
        template - includes imageId, locationId, and hardwareId 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 necessarily Image#getProviderId
        Returns:
        image or null if not exists.
      • getNode

        N getNode​(String id)
      • destroyNode

        void destroyNode​(String id)
      • rebootNode

        void rebootNode​(String id)
      • resumeNode

        void resumeNode​(String id)
      • suspendNode

        void suspendNode​(String id)