Unknown macro: {next_previous_links}
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

This page is under construction.

All IaaSes that are going to be supported by Cloud Controller, should extend this abstract class.

public abstract class Iaas {
  
    /**
    * This should build the {@link ComputeService} object and the {@link Template} object,
    * using the information from {@link IaasProvider} and should set the built
    * {@link ComputeService} object in the {@link IaasProvider#setComputeService(ComputeService)}
    * and also should set the built {@link Template} object in the
    * {@link IaasProvider#setTemplate(Template)}.
    * @param iaasInfo corresponding {@link IaasProvider}
    */
    public abstract void buildComputeServiceAndTemplate(IaasProvider iaasInfo);
  
    /**
    * This method provides a way to set payload that can be obtained from {@link IaasProvider#getPayload()}
    * in the {@link Template} of this IaaS.
    * @param iaasInfo corresponding {@link IaasProvider}
    */
    public abstract void setDynamicPayload(IaasProvider iaasInfo);
  
    /**
    * This will obtain an IP address from the allocated list and associate that IP with this node.
    * @param iaasInfo corresponding {@link IaasProvider}
    * @param node Node to be associated with an IP.
    * @return associated public IP.
    */
    public abstract String associateAddress(IaasProvider iaasInfo, NodeMetadata node);
  
    /**
    * This method should create a Key Pair corresponds to a given public key in the respective region having the name given.
    * Also should override the value of the key pair in the {@link Template} of this IaaS.
    * @param iaasInfo {@link IaasProvider}
    * @param region region that the key pair will get created.
    * @param keyPairName name of the key pair. NOTE: Jclouds adds a prefix : <code>jclouds#</code>
    * @param publicKey public key, from which the key pair will be created.
    * @return whether the key pair creation is successful or not.
    */

   public abstract boolean createKeyPairFromPublicKey(IaasProvider 
iaasInfo, String region, String keyPairName, String publicKey);
}
  • No labels