OpenNebula
Cloud API

org.opennebula.client.template
Class Template

java.lang.Object
  extended by org.opennebula.client.PoolElement
      extended by org.opennebula.client.template.Template

public class Template
extends PoolElement

This class represents an OpenNebula template. It also offers static XML-RPC call wrappers.


Field Summary
 
Fields inherited from class org.opennebula.client.PoolElement
client, id, xml, xpath
 
Constructor Summary
  Template(int id, Client client)
          Creates a new Template representation.
protected Template(org.w3c.dom.Node xmlElement, Client client)
           
 
Method Summary
static OneResponse allocate(Client client, java.lang.String description)
          Allocates a new Template in OpenNebula.
 OneResponse chgrp(int gid)
          Changes the group
static OneResponse chown(Client client, int id, int uid, int gid)
          Changes the owner/group
 OneResponse chown(int uid)
          Changes the owner
 OneResponse chown(int uid, int gid)
          Changes the owner/group
 OneResponse delete()
          Deletes the template from OpenNebula.
static OneResponse delete(Client client, int id)
          Deletes a template from OpenNebula.
 OneResponse info()
          Retrieves the information of the Template.
static OneResponse info(Client client, int id)
          Retrieves the information of the given Template.
 OneResponse instantiate()
          Creates a VM instance from a Template
static OneResponse instantiate(Client client, int id, java.lang.String name)
          Creates a VM instance from a Template
 OneResponse instantiate(java.lang.String name)
          Creates a VM instance from a Template
 boolean isPublic()
          Returns true if the template is public.
 OneResponse publish()
          Publishes the template.
 OneResponse publish(boolean publish)
          Publishes or unpublishes the template.
static OneResponse publish(Client client, int id, boolean publish)
          Publishes or unpublishes a template.
 OneResponse unpublish()
          Unpublishes the template.
static OneResponse update(Client client, int id, java.lang.String new_template)
          Replaces the template contents.
 OneResponse update(java.lang.String new_template)
          Replaces the template contents.
 
Methods inherited from class org.opennebula.client.PoolElement
getId, getName, gid, id, processInfo, state, uid, xpath
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Template

public Template(int id,
                Client client)
Creates a new Template representation.

Parameters:
id - The template id.
client - XML-RPC Client.

Template

protected Template(org.w3c.dom.Node xmlElement,
                   Client client)
See Also:
PoolElement
Method Detail

allocate

public static OneResponse allocate(Client client,
                                   java.lang.String description)
Allocates a new Template in OpenNebula.

Parameters:
client - XML-RPC Client.
description - A string containing the template of the template.
Returns:
If successful the message contains the associated id generated for this Template.

info

public static OneResponse info(Client client,
                               int id)
Retrieves the information of the given Template.

Parameters:
client - XML-RPC Client.
id - The template id for the template to retrieve the information from
Returns:
If successful the message contains the string with the information returned by OpenNebula.

delete

public static OneResponse delete(Client client,
                                 int id)
Deletes a template from OpenNebula.

Parameters:
client - XML-RPC Client.
id - The template id of the target template we want to delete.
Returns:
A encapsulated response.

update

public static OneResponse update(Client client,
                                 int id,
                                 java.lang.String new_template)
Replaces the template contents.

Parameters:
client - XML-RPC Client.
id - The template id of the target template we want to modify.
new_template - New template contents.
Returns:
If successful the message contains the template id.

publish

public static OneResponse publish(Client client,
                                  int id,
                                  boolean publish)
Publishes or unpublishes a template.

Parameters:
client - XML-RPC Client.
id - The template id of the target template we want to modify.
publish - True for publishing, false for unpublishing.
Returns:
If successful the message contains the template id.

chown

public static OneResponse chown(Client client,
                                int id,
                                int uid,
                                int gid)
Changes the owner/group

Parameters:
client - XML-RPC Client.
id - The template id of the target template we want to modify.
uid - The new owner user ID. Set it to -1 to leave the current one.
gid - The new group ID. Set it to -1 to leave the current one.
Returns:
If an error occurs the error message contains the reason.

instantiate

public static OneResponse instantiate(Client client,
                                      int id,
                                      java.lang.String name)
Creates a VM instance from a Template

Parameters:
client - XML-RPC Client.
id - The template id of the target template.
name - A string containing the name of the VM instance, can be empty.
Returns:
If successful the message contains the VM Instance ID.

info

public OneResponse info()
Retrieves the information of the Template.

Returns:
If successful the message contains the string with the information returned by OpenNebula.

delete

public OneResponse delete()
Deletes the template from OpenNebula.

Returns:
A encapsulated response.

update

public OneResponse update(java.lang.String new_template)
Replaces the template contents.

Parameters:
new_template - New template contents.
Returns:
If successful the message contains the template id.

publish

public OneResponse publish(boolean publish)
Publishes or unpublishes the template.

Parameters:
publish - True for publishing, false for unpublishing.
Returns:
If successful the message contains the template id.

publish

public OneResponse publish()
Publishes the template.

Returns:
If successful the message contains the template id.

unpublish

public OneResponse unpublish()
Unpublishes the template.

Returns:
If successful the message contains the template id.

chown

public OneResponse chown(int uid,
                         int gid)
Changes the owner/group

Parameters:
uid - The new owner user ID. Set it to -1 to leave the current one.
gid - The new group ID. Set it to -1 to leave the current one.
Returns:
If an error occurs the error message contains the reason.

chown

public OneResponse chown(int uid)
Changes the owner

Parameters:
uid - The new owner user ID.
Returns:
If an error occurs the error message contains the reason.

chgrp

public OneResponse chgrp(int gid)
Changes the group

Parameters:
gid - The new group ID.
Returns:
If an error occurs the error message contains the reason.

instantiate

public OneResponse instantiate(java.lang.String name)
Creates a VM instance from a Template

Parameters:
name - A string containing the name of the VM instance, can be empty.
Returns:
If successful the message contains the VM Instance ID.

instantiate

public OneResponse instantiate()
Creates a VM instance from a Template

Returns:
If successful the message contains the VM Instance ID.

isPublic

public boolean isPublic()
Returns true if the template is public.

Returns:
True if the template is public.

OpenNebula
Cloud API

Visit OpenNebula.org
Copyright 2002-2011 © OpenNebula Project Leads (OpenNebula.org).