org.apache.whirr.service
Class ClusterSpec

java.lang.Object
  extended by org.apache.whirr.service.ClusterSpec

public class ClusterSpec
extends Object

This class represents the specification of a cluster. It is used to describe the properties of a cluster before it is launched.


Nested Class Summary
static class ClusterSpec.InstanceTemplate
          This class describes the type of instances that should be in the cluster.
static class ClusterSpec.Property
           
 
Constructor Summary
ClusterSpec()
           
ClusterSpec(org.apache.commons.configuration.Configuration config)
           
ClusterSpec(org.apache.commons.configuration.Configuration config, boolean loadDefaults)
           
 
Method Summary
 boolean equals(Object o)
           
 List<String> getClientCidrs()
           
 File getClusterDirectory()
           
 String getClusterName()
           
 org.apache.commons.configuration.Configuration getConfiguration()
           
 org.apache.commons.configuration.Configuration getConfigurationForKeysWithPrefix(String prefix)
           
 String getCredential()
           
 String getHardwareId()
           
 String getIdentity()
           
 String getImageId()
           
 ClusterSpec.InstanceTemplate getInstanceTemplate(Set<String> roles)
           
 ClusterSpec.InstanceTemplate getInstanceTemplate(String... roles)
           
 List<ClusterSpec.InstanceTemplate> getInstanceTemplates()
           
 String getLocationId()
           
 org.jclouds.io.Payload getPrivateKey()
           
 String getProvider()
           
 org.jclouds.io.Payload getPublicKey()
           
 String getRunUrlBase()
           
 String getServiceName()
           
 String getVersion()
           
 int hashCode()
           
 String readPrivateKey()
           
 String readPublicKey()
           
 void setClientCidrs(List<String> clientCidrs)
           
 void setClusterName(String clusterName)
           
 void setCredential(String credential)
           
 void setHardwareId(String hardwareId)
           
 void setIdentity(String identity)
           
 void setImageId(String imageId)
           
 void setInstanceTemplates(List<ClusterSpec.InstanceTemplate> instanceTemplates)
           
 void setLocationId(String locationId)
           
 void setPrivateKey(File privateKey)
           
 void setPrivateKey(String privateKey)
          The rsa private key which is used as the login identity on the cloud nodes.
 void setProvider(String provider)
           
 void setPublicKey(File publicKey)
           
 void setPublicKey(String publicKey)
          The rsa public key which is authorized to login to your on the cloud nodes.
 void setRunUrlBase(String runUrlBase)
           
 void setServiceName(String serviceName)
           
 void setVersion(String version)
           
 String toString()
           
static ClusterSpec withNoDefaults()
          Create new empty instance for testing.
static ClusterSpec withNoDefaults(org.apache.commons.configuration.Configuration conf)
           
static ClusterSpec withTemporaryKeys()
          Create an instance that uses a temporary RSA key pair.
static ClusterSpec withTemporaryKeys(org.apache.commons.configuration.Configuration conf)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ClusterSpec

public ClusterSpec()
            throws org.apache.commons.configuration.ConfigurationException
Throws:
org.apache.commons.configuration.ConfigurationException

ClusterSpec

public ClusterSpec(org.apache.commons.configuration.Configuration config)
            throws org.apache.commons.configuration.ConfigurationException
Throws:
org.apache.commons.configuration.ConfigurationException

ClusterSpec

public ClusterSpec(org.apache.commons.configuration.Configuration config,
                   boolean loadDefaults)
            throws org.apache.commons.configuration.ConfigurationException
Throws:
org.apache.commons.configuration.ConfigurationException - if something is wrong
Method Detail

withTemporaryKeys

public static ClusterSpec withTemporaryKeys()
                                     throws org.apache.commons.configuration.ConfigurationException,
                                            com.jcraft.jsch.JSchException,
                                            IOException
Create an instance that uses a temporary RSA key pair.

Throws:
org.apache.commons.configuration.ConfigurationException
com.jcraft.jsch.JSchException
IOException

withTemporaryKeys

public static ClusterSpec withTemporaryKeys(org.apache.commons.configuration.Configuration conf)
                                     throws org.apache.commons.configuration.ConfigurationException,
                                            com.jcraft.jsch.JSchException,
                                            IOException
Throws:
org.apache.commons.configuration.ConfigurationException
com.jcraft.jsch.JSchException
IOException

withNoDefaults

public static ClusterSpec withNoDefaults()
                                  throws org.apache.commons.configuration.ConfigurationException
Create new empty instance for testing.

Throws:
org.apache.commons.configuration.ConfigurationException

withNoDefaults

public static ClusterSpec withNoDefaults(org.apache.commons.configuration.Configuration conf)
                                  throws org.apache.commons.configuration.ConfigurationException
Throws:
org.apache.commons.configuration.ConfigurationException

getInstanceTemplates

public List<ClusterSpec.InstanceTemplate> getInstanceTemplates()

getInstanceTemplate

public ClusterSpec.InstanceTemplate getInstanceTemplate(Set<String> roles)

getInstanceTemplate

public ClusterSpec.InstanceTemplate getInstanceTemplate(String... roles)

getServiceName

public String getServiceName()

getProvider

public String getProvider()

getIdentity

public String getIdentity()

getCredential

public String getCredential()

getClusterName

public String getClusterName()

getPrivateKey

public org.jclouds.io.Payload getPrivateKey()

getPublicKey

public org.jclouds.io.Payload getPublicKey()

readPrivateKey

public String readPrivateKey()
                      throws IOException
Throws:
IOException - if the payload cannot be read
See Also:
getPrivateKey()

readPublicKey

public String readPublicKey()
                     throws IOException
Throws:
IOException - if the payload cannot be read
See Also:
getPublicKey()

getImageId

public String getImageId()

getHardwareId

public String getHardwareId()

getLocationId

public String getLocationId()

getClientCidrs

public List<String> getClientCidrs()

getVersion

public String getVersion()

getRunUrlBase

public String getRunUrlBase()

setInstanceTemplates

public void setInstanceTemplates(List<ClusterSpec.InstanceTemplate> instanceTemplates)

setServiceName

public void setServiceName(String serviceName)

setProvider

public void setProvider(String provider)

setIdentity

public void setIdentity(String identity)

setCredential

public void setCredential(String credential)

setClusterName

public void setClusterName(String clusterName)

setPublicKey

public void setPublicKey(String publicKey)
The rsa public key which is authorized to login to your on the cloud nodes.

Parameters:
publicKey -

setPublicKey

public void setPublicKey(File publicKey)
                  throws IOException
Throws:
IOException - if there is a problem reading the file
See Also:
setPublicKey(String)

setPrivateKey

public void setPrivateKey(String privateKey)
The rsa private key which is used as the login identity on the cloud nodes.

Parameters:
privateKey -

setPrivateKey

public void setPrivateKey(File privateKey)
                   throws IOException
Throws:
IOException - if there is a problem reading the file
See Also:
setPrivateKey(String)

setImageId

public void setImageId(String imageId)

setHardwareId

public void setHardwareId(String hardwareId)

setLocationId

public void setLocationId(String locationId)

setClientCidrs

public void setClientCidrs(List<String> clientCidrs)

setVersion

public void setVersion(String version)

setRunUrlBase

public void setRunUrlBase(String runUrlBase)

getConfiguration

public org.apache.commons.configuration.Configuration getConfiguration()

getConfigurationForKeysWithPrefix

public org.apache.commons.configuration.Configuration getConfigurationForKeysWithPrefix(String prefix)

getClusterDirectory

public File getClusterDirectory()
Returns:
the directory for storing cluster-related files

equals

public boolean equals(Object o)
Overrides:
equals in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2010-2011 The Apache Software Foundation. All Rights Reserved.