org.jclouds.vcloud.compute.options
Class VCloudTemplateOptions

java.lang.Object
  extended by org.jclouds.compute.options.RunScriptOptions
      extended by org.jclouds.compute.options.TemplateOptions
          extended by org.jclouds.vcloud.compute.options.VCloudTemplateOptions
All Implemented Interfaces:
Cloneable

public class VCloudTemplateOptions
extends org.jclouds.compute.options.TemplateOptions
implements Cloneable

Contains options supported in the ComputeService#runNode operation on the "vcloud" provider.

Usage

The recommended way to instantiate a VCloudTemplateOptions object is to statically import VCloudTemplateOptions.* and invoke a static creation method followed by an instance mutator (if needed):

import static org.jclouds.compute.options.VCloudTemplateOptions.Builder.*;

ComputeService client = // get connection templateBuilder.options(inboundPorts(22, 80, 8080, 443)); Set set = client.createNodesInGroup(tag, 2, templateBuilder.build());

Author:
Adrian Cole

Nested Class Summary
static class VCloudTemplateOptions.Builder
           
 
Nested classes/interfaces inherited from class org.jclouds.compute.options.TemplateOptions
org.jclouds.compute.options.TemplateOptions.ImmutableTemplateOptions
 
Nested classes/interfaces inherited from class org.jclouds.compute.options.RunScriptOptions
org.jclouds.compute.options.RunScriptOptions.ImmutableRunScriptOptions
 
Field Summary
 
Fields inherited from class org.jclouds.compute.options.TemplateOptions
blockUntilRunning, inboundPorts, nodeNames, NONE, privateKey, publicKey, script, securityGroups, tags, userMetadata
 
Fields inherited from class org.jclouds.compute.options.RunScriptOptions
authenticateSudo, blockOnComplete, loginPassword, loginPrivateKey, loginUser, port, runAsRoot, seconds, taskName, wrapInInitScript
 
Constructor Summary
VCloudTemplateOptions()
           
 
Method Summary
 VCloudTemplateOptions authorizePublicKey(String publicKey)
           
 VCloudTemplateOptions blockOnPort(int port, int seconds)
           
 VCloudTemplateOptions clone()
           
 void copyTo(org.jclouds.compute.options.TemplateOptions to)
           
 VCloudTemplateOptions customizationScript(String customizationScript)
          Specifies the customizationScript used to run instances with
 VCloudTemplateOptions description(String description)
          Optional description.
 boolean equals(Object o)
           
 VCloudTemplateOptions fenceMode(FenceMode fenceMode)
          How to connect to the parent network
 String getCustomizationScript()
           
 String getDescription()
           
 FenceMode getFenceMode()
           
 IpAddressAllocationMode getIpAddressAllocationMode()
           
 URI getParentNetwork()
           
 int hashCode()
           
 VCloudTemplateOptions inboundPorts(int... ports)
          special thing is that we do assume if you are passing groups that you have everything you need already defined.
 VCloudTemplateOptions installPrivateKey(String privateKey)
           
 VCloudTemplateOptions ipAddressAllocationMode(IpAddressAllocationMode ipAddressAllocationMode)
          Specifies the ipAddressAllocationMode used to for network interfaces on the VMs
 VCloudTemplateOptions nodeNames(Iterable<String> nodeNames)
          
 VCloudTemplateOptions parentNetwork(URI parentNetwork)
          Specifies the parentNetwork to connect the the network interfaces on the VMs to.
 com.google.common.base.Objects.ToStringHelper string()
           
 VCloudTemplateOptions userMetadata(Map<String,String> userMetadata)
          
 VCloudTemplateOptions userMetadata(String key, String value)
          
 
Methods inherited from class org.jclouds.compute.options.TemplateOptions
as, blockOnComplete, blockUntilRunning, dontAuthorizePublicKey, getGroups, getInboundPorts, getNodeNames, getPrivateKey, getPublicKey, getRunScript, getTags, getUserMetadata, nameTask, overrideAuthenticateSudo, overrideLoginCredentials, overrideLoginPassword, overrideLoginPrivateKey, overrideLoginUser, runAsRoot, runScript, runScript, securityGroups, securityGroups, shouldBlockUntilRunning, tags, wrapInInitScript
 
Methods inherited from class org.jclouds.compute.options.RunScriptOptions
getLoginPassword, getLoginPrivateKey, getLoginUser, getPort, getSeconds, getTaskName, hasLoginPassword, hasLoginPasswordOption, hasLoginPrivateKey, hasLoginPrivateKeyOption, shouldAuthenticateSudo, shouldBlockOnComplete, shouldRunAsRoot, shouldWrapInInitScript, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

VCloudTemplateOptions

public VCloudTemplateOptions()
Method Detail

clone

public VCloudTemplateOptions clone()
Overrides:
clone in class org.jclouds.compute.options.TemplateOptions

copyTo

public void copyTo(org.jclouds.compute.options.TemplateOptions to)
Overrides:
copyTo in class org.jclouds.compute.options.TemplateOptions

equals

public boolean equals(Object o)
Overrides:
equals in class org.jclouds.compute.options.TemplateOptions

hashCode

public int hashCode()
Overrides:
hashCode in class org.jclouds.compute.options.TemplateOptions

string

public com.google.common.base.Objects.ToStringHelper string()
Overrides:
string in class org.jclouds.compute.options.TemplateOptions

description

public VCloudTemplateOptions description(String description)
Optional description. Used for the Description of the vApp created by this instantiation.


customizationScript

public VCloudTemplateOptions customizationScript(String customizationScript)
Specifies the customizationScript used to run instances with


ipAddressAllocationMode

public VCloudTemplateOptions ipAddressAllocationMode(IpAddressAllocationMode ipAddressAllocationMode)
Specifies the ipAddressAllocationMode used to for network interfaces on the VMs


parentNetwork

public VCloudTemplateOptions parentNetwork(URI parentNetwork)
Specifies the parentNetwork to connect the the network interfaces on the VMs to.

See Also:
InstantiateVAppTemplateOptions#addNetworkConfig

fenceMode

public VCloudTemplateOptions fenceMode(FenceMode fenceMode)
How to connect to the parent network

See Also:
InstantiateVAppTemplateOptions#addNetworkConfig

getDescription

public String getDescription()
Returns:
description of the vApp

getCustomizationScript

public String getCustomizationScript()
Returns:
customizationScript on the vms

getIpAddressAllocationMode

public IpAddressAllocationMode getIpAddressAllocationMode()
Returns:
ipAddressAllocationMode on the vms

getParentNetwork

public URI getParentNetwork()
Returns:
parentNetwork to connect to the vms

getFenceMode

public FenceMode getFenceMode()
Returns:
FenceMode to connect the parent network with

blockOnPort

public VCloudTemplateOptions blockOnPort(int port,
                                         int seconds)
Overrides:
blockOnPort in class org.jclouds.compute.options.TemplateOptions
See Also:
TemplateOptions.blockOnPort(int, int)

inboundPorts

public VCloudTemplateOptions inboundPorts(int... ports)
special thing is that we do assume if you are passing groups that you have everything you need already defined. for example, our option inboundPorts normally creates ingress rules accordingly but if we notice you've specified securityGroups, we do not mess with rules at all

Overrides:
inboundPorts in class org.jclouds.compute.options.TemplateOptions
See Also:
TemplateOptions.inboundPorts

authorizePublicKey

public VCloudTemplateOptions authorizePublicKey(String publicKey)
Overrides:
authorizePublicKey in class org.jclouds.compute.options.TemplateOptions
See Also:
TemplateOptions.authorizePublicKey(String)

installPrivateKey

public VCloudTemplateOptions installPrivateKey(String privateKey)
Overrides:
installPrivateKey in class org.jclouds.compute.options.TemplateOptions
See Also:
TemplateOptions.installPrivateKey(String)

userMetadata

public VCloudTemplateOptions userMetadata(Map<String,String> userMetadata)

Overrides:
userMetadata in class org.jclouds.compute.options.TemplateOptions

userMetadata

public VCloudTemplateOptions userMetadata(String key,
                                          String value)

Overrides:
userMetadata in class org.jclouds.compute.options.TemplateOptions

nodeNames

public VCloudTemplateOptions nodeNames(Iterable<String> nodeNames)

Overrides:
nodeNames in class org.jclouds.compute.options.TemplateOptions


Copyright © 2009-2013 The Apache Software Foundation. All Rights Reserved.