org.jclouds.vcloud.compute.strategy
Class InstantiateVAppTemplateWithGroupEncodedIntoNameThenCustomizeDeployAndPowerOn

java.lang.Object
  extended by org.jclouds.vcloud.compute.strategy.InstantiateVAppTemplateWithGroupEncodedIntoNameThenCustomizeDeployAndPowerOn
All Implemented Interfaces:
CreateNodeWithGroupEncodedIntoName

@Singleton
public class InstantiateVAppTemplateWithGroupEncodedIntoNameThenCustomizeDeployAndPowerOn
extends Object
implements CreateNodeWithGroupEncodedIntoName

Author:
Adrian Cole

Field Summary
protected  VCloudClient client
           
protected  GetNodeMetadataStrategy getNode
           
protected  Logger logger
           
protected  com.google.common.base.Predicate<URI> successTester
           
 
Constructor Summary
protected InstantiateVAppTemplateWithGroupEncodedIntoNameThenCustomizeDeployAndPowerOn(com.google.common.base.Predicate<URI> successTester, VCloudClient client, GetNodeMetadataStrategy getNode)
           
 
Method Summary
 NodeMetadata createNodeWithGroupEncodedIntoName(String tag, String name, Template template)
          create a node given the name and template parameters such as imageid, hardwareid, and locationid.
 Task updateCPUCountOfVm(Vm vm, int cpuCount)
           
 Task updateMemoryMBOfVm(Vm vm, int memoryInMB)
           
 Task updateVmWithCustomizationScript(Vm vm, String customizationScript)
           
 Task updateVmWithIpAddressAllocationMode(Vm vm, IpAddressAllocationMode ipAddressAllocationMode)
           
 void waitForTask(Task task, VApp vAppResponse)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

@Named(value="jclouds.compute")
protected Logger logger

client

protected final VCloudClient client

getNode

protected final GetNodeMetadataStrategy getNode

successTester

protected final com.google.common.base.Predicate<URI> successTester
Constructor Detail

InstantiateVAppTemplateWithGroupEncodedIntoNameThenCustomizeDeployAndPowerOn

@Inject
protected InstantiateVAppTemplateWithGroupEncodedIntoNameThenCustomizeDeployAndPowerOn(com.google.common.base.Predicate<URI> successTester,
                                                                                              VCloudClient client,
                                                                                              GetNodeMetadataStrategy getNode)
Method Detail

createNodeWithGroupEncodedIntoName

public NodeMetadata createNodeWithGroupEncodedIntoName(String tag,
                                                       String name,
                                                       Template template)
Description copied from interface: CreateNodeWithGroupEncodedIntoName
create a node given the name and template parameters such as imageid, hardwareid, and locationid.

Specified by:
createNodeWithGroupEncodedIntoName in interface CreateNodeWithGroupEncodedIntoName
Parameters:
tag - group name supplied by the user
name - supplied by CreateNodesInGroupThenAddToSet and must have the tag encoded into it.
template - supplied by the user
Returns:
NodeMetadata from the new object, most likely in some pending state.

waitForTask

public void waitForTask(Task task,
                        VApp vAppResponse)

updateVmWithCustomizationScript

public Task updateVmWithCustomizationScript(Vm vm,
                                            String customizationScript)

updateVmWithIpAddressAllocationMode

public Task updateVmWithIpAddressAllocationMode(Vm vm,
                                                IpAddressAllocationMode ipAddressAllocationMode)

updateCPUCountOfVm

public Task updateCPUCountOfVm(Vm vm,
                               int cpuCount)

updateMemoryMBOfVm

public Task updateMemoryMBOfVm(Vm vm,
                               int memoryInMB)


Copyright © 2009-2011 jclouds. All Rights Reserved.