[
https://issues.apache.org/jira/browse/JCLOUDS-581?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14017143#comment-14017143
]
Ignasi Barrera edited comment on JCLOUDS-581 at 6/3/14 8:59 PM:
----------------------------------------------------------------
The portable {{ComputeService}} does not provide a {{start}} or {{stop}}
operation. Instead, the available operations are
[suspendNode|https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/ComputeService.java#L203-L229]
and
[resumeNode|https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/ComputeService.java#L178-L201].
jclouds maps the different provider specific states of the nodes to the
portable
[NodeMetadata#Status|https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/domain/NodeMetadata.java#L34-L60]
ones, and the operations the {{ComputeService}} exposes follow the semantics
of these states. Each provider implements those methods according to the
provider specific capabilities, so in some providers a "suspend" operation
might be a real "stop" operation in the provider api, or a "pause", etc. It is
up to the provider to provide the particular implementation.
In favor of portability, the ComputeService exposes those two calls. Aren't
those enough for your use case?
was (Author: nacx):
The portable {{ComputeService}} does not provide a {{start}} or {{stop}}
operation. Instead, the available operations are
[suspendNode|https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/ComputeService.java#L203-L229]
and
[resumeNode|https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/ComputeService.java#L178-L201].
jclouds maps the different provider specific states of the nodes to the
portable
[NodeMetadata#Status|https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/domain/NodeMetadata.java#L34-L60]
ones, and the operations the {{ComputeService}} exposes follow the semantics
of the latter states. Each provider implements those methods according to the
provider specific capabilities, so in some providers a "suspend" operation
might be a real "stop" operation in the provider api, or a "pause", etc. It is
up to the provider to provide the particular implementation.
In favor of portability, the ComputeService exposes those two calls. Aren't
those enough for your use case?
> Method calls "startNodesMatching" and "stopNodesMatching" added to
> BaseComputeService
> -------------------------------------------------------------------------------------
>
> Key: JCLOUDS-581
> URL: https://issues.apache.org/jira/browse/JCLOUDS-581
> Project: jclouds
> Issue Type: New Feature
> Components: jclouds-compute
> Affects Versions: 1.7.3
> Reporter: Christopher Dancy
> Labels: BaseComputeService, startNodesMatching, stopNodesMatching
>
> Addition of methods "startNodesMatching" and "stopNodesMatching" added to
> BaseComputeService. We are coding this very thing on our end for
> openstack/rackspace but seems a fairly common enough thing that all providers
> and/or users of jclouds could take advantage of.
--
This message was sent by Atlassian JIRA
(v6.2#6252)