com.xensource.xenapi
Class VMAppliance

java.lang.Object
  extended by com.xensource.xenapi.XenAPIObject
      extended by com.xensource.xenapi.VMAppliance

public class VMAppliance
extends XenAPIObject

VM appliance First published in XenServer 6.0.


Nested Class Summary
static class VMAppliance.Record
          Represents all the fields in a VMAppliance
 
Field Summary
protected  java.lang.String ref
          The XenAPI reference (OpaqueRef) to this object.
 
Method Summary
 void assertCanBeRecovered(Connection c, Session sessionTo)
          Assert whether all SRs required to recover this VM appliance are available.
 Task assertCanBeRecoveredAsync(Connection c, Session sessionTo)
          Assert whether all SRs required to recover this VM appliance are available.
 void cleanShutdown(Connection c)
          Perform a clean shutdown of all the VMs in the appliance First published in XenServer 6.0.
 Task cleanShutdownAsync(Connection c)
          Perform a clean shutdown of all the VMs in the appliance First published in XenServer 6.0.
static VMAppliance create(Connection c, VMAppliance.Record record)
          Create a new VM_appliance instance, and return its handle.
static Task createAsync(Connection c, VMAppliance.Record record)
          Create a new VM_appliance instance, and return its handle.
 void destroy(Connection c)
          Destroy the specified VM_appliance instance.
 Task destroyAsync(Connection c)
          Destroy the specified VM_appliance instance.
 boolean equals(java.lang.Object obj)
          If obj is a VMAppliance, compares XenAPI references for equality.
static java.util.Set<VMAppliance> getAll(Connection c)
          Return a list of all the VM_appliances known to the system.
 java.util.Set<Types.VmApplianceOperation> getAllowedOperations(Connection c)
          Get the allowed_operations field of the given VM_appliance.
static java.util.Map<VMAppliance,VMAppliance.Record> getAllRecords(Connection c)
          Return a map of VM_appliance references to VM_appliance records for all VM_appliances known to the system.
static java.util.Set<VMAppliance> getByNameLabel(Connection c, java.lang.String label)
          Get all the VM_appliance instances with the given label.
static VMAppliance getByUuid(Connection c, java.lang.String uuid)
          Get a reference to the VM_appliance instance with the specified UUID.
 java.util.Map<java.lang.String,Types.VmApplianceOperation> getCurrentOperations(Connection c)
          Get the current_operations field of the given VM_appliance.
 java.lang.String getNameDescription(Connection c)
          Get the name/description field of the given VM_appliance.
 java.lang.String getNameLabel(Connection c)
          Get the name/label field of the given VM_appliance.
 VMAppliance.Record getRecord(Connection c)
          Get a record containing the current state of the given VM_appliance.
 java.util.Set<SR> getSRsRequiredForRecovery(Connection c, Session sessionTo)
          Get the list of SRs required by the VM appliance to recover.
 Task getSRsRequiredForRecoveryAsync(Connection c, Session sessionTo)
          Get the list of SRs required by the VM appliance to recover.
 java.lang.String getUuid(Connection c)
          Get the uuid field of the given VM_appliance.
 java.util.Set<VM> getVMs(Connection c)
          Get the VMs field of the given VM_appliance.
 void hardShutdown(Connection c)
          Perform a hard shutdown of all the VMs in the appliance First published in XenServer 6.0.
 Task hardShutdownAsync(Connection c)
          Perform a hard shutdown of all the VMs in the appliance First published in XenServer 6.0.
 int hashCode()
           
 void recover(Connection c, Session sessionTo, java.lang.Boolean force)
          Recover the VM appliance First published in XenServer 6.0.
 Task recoverAsync(Connection c, Session sessionTo, java.lang.Boolean force)
          Recover the VM appliance First published in XenServer 6.0.
 void setNameDescription(Connection c, java.lang.String description)
          Set the name/description field of the given VM_appliance.
 void setNameLabel(Connection c, java.lang.String label)
          Set the name/label field of the given VM_appliance.
 void shutdown(Connection c)
          For each VM in the appliance, try to shut it down cleanly.
 Task shutdownAsync(Connection c)
          For each VM in the appliance, try to shut it down cleanly.
 void start(Connection c, java.lang.Boolean paused)
          Start all VMs in the appliance First published in XenServer 6.0.
 Task startAsync(Connection c, java.lang.Boolean paused)
          Start all VMs in the appliance First published in XenServer 6.0.
 java.lang.String toWireString()
           
 
Methods inherited from class com.xensource.xenapi.XenAPIObject
isNull
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ref

protected final java.lang.String ref
The XenAPI reference (OpaqueRef) to this object.

Method Detail

toWireString

public java.lang.String toWireString()
Specified by:
toWireString in class XenAPIObject
Returns:
The XenAPI reference (OpaqueRef) to this object.

equals

public boolean equals(java.lang.Object obj)
If obj is a VMAppliance, compares XenAPI references for equality.

Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

getRecord

public VMAppliance.Record getRecord(Connection c)
                             throws Types.BadServerResponse,
                                    Types.XenAPIException,
                                    org.apache.xmlrpc.XmlRpcException
Get a record containing the current state of the given VM_appliance. First published in XenServer 6.0.

Returns:
all fields from the object
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

getByUuid

public static VMAppliance getByUuid(Connection c,
                                    java.lang.String uuid)
                             throws Types.BadServerResponse,
                                    Types.XenAPIException,
                                    org.apache.xmlrpc.XmlRpcException
Get a reference to the VM_appliance instance with the specified UUID. First published in XenServer 6.0.

Parameters:
uuid - UUID of object to return
Returns:
reference to the object
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

createAsync

public static Task createAsync(Connection c,
                               VMAppliance.Record record)
                        throws Types.BadServerResponse,
                               Types.XenAPIException,
                               org.apache.xmlrpc.XmlRpcException
Create a new VM_appliance instance, and return its handle. First published in XenServer 6.0.

Parameters:
record - All constructor arguments
Returns:
Task
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

create

public static VMAppliance create(Connection c,
                                 VMAppliance.Record record)
                          throws Types.BadServerResponse,
                                 Types.XenAPIException,
                                 org.apache.xmlrpc.XmlRpcException
Create a new VM_appliance instance, and return its handle. First published in XenServer 6.0.

Parameters:
record - All constructor arguments
Returns:
reference to the newly created object
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

destroyAsync

public Task destroyAsync(Connection c)
                  throws Types.BadServerResponse,
                         Types.XenAPIException,
                         org.apache.xmlrpc.XmlRpcException
Destroy the specified VM_appliance instance. First published in XenServer 6.0.

Returns:
Task
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

destroy

public void destroy(Connection c)
             throws Types.BadServerResponse,
                    Types.XenAPIException,
                    org.apache.xmlrpc.XmlRpcException
Destroy the specified VM_appliance instance. First published in XenServer 6.0.

Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

getByNameLabel

public static java.util.Set<VMAppliance> getByNameLabel(Connection c,
                                                        java.lang.String label)
                                                 throws Types.BadServerResponse,
                                                        Types.XenAPIException,
                                                        org.apache.xmlrpc.XmlRpcException
Get all the VM_appliance instances with the given label. First published in XenServer 6.0.

Parameters:
label - label of object to return
Returns:
references to objects with matching names
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

getUuid

public java.lang.String getUuid(Connection c)
                         throws Types.BadServerResponse,
                                Types.XenAPIException,
                                org.apache.xmlrpc.XmlRpcException
Get the uuid field of the given VM_appliance. First published in XenServer 6.0.

Returns:
value of the field
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

getNameLabel

public java.lang.String getNameLabel(Connection c)
                              throws Types.BadServerResponse,
                                     Types.XenAPIException,
                                     org.apache.xmlrpc.XmlRpcException
Get the name/label field of the given VM_appliance. First published in XenServer 6.0.

Returns:
value of the field
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

getNameDescription

public java.lang.String getNameDescription(Connection c)
                                    throws Types.BadServerResponse,
                                           Types.XenAPIException,
                                           org.apache.xmlrpc.XmlRpcException
Get the name/description field of the given VM_appliance. First published in XenServer 6.0.

Returns:
value of the field
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

getAllowedOperations

public java.util.Set<Types.VmApplianceOperation> getAllowedOperations(Connection c)
                                                               throws Types.BadServerResponse,
                                                                      Types.XenAPIException,
                                                                      org.apache.xmlrpc.XmlRpcException
Get the allowed_operations field of the given VM_appliance. First published in XenServer 6.0.

Returns:
value of the field
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

getCurrentOperations

public java.util.Map<java.lang.String,Types.VmApplianceOperation> getCurrentOperations(Connection c)
                                                                                throws Types.BadServerResponse,
                                                                                       Types.XenAPIException,
                                                                                       org.apache.xmlrpc.XmlRpcException
Get the current_operations field of the given VM_appliance. First published in XenServer 6.0.

Returns:
value of the field
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

getVMs

public java.util.Set<VM> getVMs(Connection c)
                         throws Types.BadServerResponse,
                                Types.XenAPIException,
                                org.apache.xmlrpc.XmlRpcException
Get the VMs field of the given VM_appliance. First published in XenServer 6.0.

Returns:
value of the field
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

setNameLabel

public void setNameLabel(Connection c,
                         java.lang.String label)
                  throws Types.BadServerResponse,
                         Types.XenAPIException,
                         org.apache.xmlrpc.XmlRpcException
Set the name/label field of the given VM_appliance. First published in XenServer 6.0.

Parameters:
label - New value to set
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

setNameDescription

public void setNameDescription(Connection c,
                               java.lang.String description)
                        throws Types.BadServerResponse,
                               Types.XenAPIException,
                               org.apache.xmlrpc.XmlRpcException
Set the name/description field of the given VM_appliance. First published in XenServer 6.0.

Parameters:
description - New value to set
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

startAsync

public Task startAsync(Connection c,
                       java.lang.Boolean paused)
                throws Types.BadServerResponse,
                       Types.XenAPIException,
                       org.apache.xmlrpc.XmlRpcException,
                       Types.OperationPartiallyFailed
Start all VMs in the appliance First published in XenServer 6.0.

Parameters:
paused - Instantiate all VMs belonging to this appliance in paused state if set to true.
Returns:
Task
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException
Types.OperationPartiallyFailed

start

public void start(Connection c,
                  java.lang.Boolean paused)
           throws Types.BadServerResponse,
                  Types.XenAPIException,
                  org.apache.xmlrpc.XmlRpcException,
                  Types.OperationPartiallyFailed
Start all VMs in the appliance First published in XenServer 6.0.

Parameters:
paused - Instantiate all VMs belonging to this appliance in paused state if set to true.
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException
Types.OperationPartiallyFailed

cleanShutdownAsync

public Task cleanShutdownAsync(Connection c)
                        throws Types.BadServerResponse,
                               Types.XenAPIException,
                               org.apache.xmlrpc.XmlRpcException,
                               Types.OperationPartiallyFailed
Perform a clean shutdown of all the VMs in the appliance First published in XenServer 6.0.

Returns:
Task
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException
Types.OperationPartiallyFailed

cleanShutdown

public void cleanShutdown(Connection c)
                   throws Types.BadServerResponse,
                          Types.XenAPIException,
                          org.apache.xmlrpc.XmlRpcException,
                          Types.OperationPartiallyFailed
Perform a clean shutdown of all the VMs in the appliance First published in XenServer 6.0.

Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException
Types.OperationPartiallyFailed

hardShutdownAsync

public Task hardShutdownAsync(Connection c)
                       throws Types.BadServerResponse,
                              Types.XenAPIException,
                              org.apache.xmlrpc.XmlRpcException,
                              Types.OperationPartiallyFailed
Perform a hard shutdown of all the VMs in the appliance First published in XenServer 6.0.

Returns:
Task
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException
Types.OperationPartiallyFailed

hardShutdown

public void hardShutdown(Connection c)
                  throws Types.BadServerResponse,
                         Types.XenAPIException,
                         org.apache.xmlrpc.XmlRpcException,
                         Types.OperationPartiallyFailed
Perform a hard shutdown of all the VMs in the appliance First published in XenServer 6.0.

Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException
Types.OperationPartiallyFailed

shutdownAsync

public Task shutdownAsync(Connection c)
                   throws Types.BadServerResponse,
                          Types.XenAPIException,
                          org.apache.xmlrpc.XmlRpcException,
                          Types.OperationPartiallyFailed
For each VM in the appliance, try to shut it down cleanly. If this fails, perform a hard shutdown of the VM. First published in XenServer 6.0.

Returns:
Task
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException
Types.OperationPartiallyFailed

shutdown

public void shutdown(Connection c)
              throws Types.BadServerResponse,
                     Types.XenAPIException,
                     org.apache.xmlrpc.XmlRpcException,
                     Types.OperationPartiallyFailed
For each VM in the appliance, try to shut it down cleanly. If this fails, perform a hard shutdown of the VM. First published in XenServer 6.0.

Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException
Types.OperationPartiallyFailed

assertCanBeRecoveredAsync

public Task assertCanBeRecoveredAsync(Connection c,
                                      Session sessionTo)
                               throws Types.BadServerResponse,
                                      Types.XenAPIException,
                                      org.apache.xmlrpc.XmlRpcException,
                                      Types.VmRequiresSr
Assert whether all SRs required to recover this VM appliance are available. First published in XenServer 6.0.

Parameters:
sessionTo - The session to which the VM appliance is to be recovered.
Returns:
Task
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException
Types.VmRequiresSr

assertCanBeRecovered

public void assertCanBeRecovered(Connection c,
                                 Session sessionTo)
                          throws Types.BadServerResponse,
                                 Types.XenAPIException,
                                 org.apache.xmlrpc.XmlRpcException,
                                 Types.VmRequiresSr
Assert whether all SRs required to recover this VM appliance are available. First published in XenServer 6.0.

Parameters:
sessionTo - The session to which the VM appliance is to be recovered.
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException
Types.VmRequiresSr

getSRsRequiredForRecoveryAsync

public Task getSRsRequiredForRecoveryAsync(Connection c,
                                           Session sessionTo)
                                    throws Types.BadServerResponse,
                                           Types.XenAPIException,
                                           org.apache.xmlrpc.XmlRpcException
Get the list of SRs required by the VM appliance to recover. First published in XenServer 6.5.

Parameters:
sessionTo - The session to which the list of SRs have to be recovered .
Returns:
Task
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

getSRsRequiredForRecovery

public java.util.Set<SR> getSRsRequiredForRecovery(Connection c,
                                                   Session sessionTo)
                                            throws Types.BadServerResponse,
                                                   Types.XenAPIException,
                                                   org.apache.xmlrpc.XmlRpcException
Get the list of SRs required by the VM appliance to recover. First published in XenServer 6.5.

Parameters:
sessionTo - The session to which the list of SRs have to be recovered .
Returns:
refs for SRs required to recover the VM
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

recoverAsync

public Task recoverAsync(Connection c,
                         Session sessionTo,
                         java.lang.Boolean force)
                  throws Types.BadServerResponse,
                         Types.XenAPIException,
                         org.apache.xmlrpc.XmlRpcException,
                         Types.VmRequiresSr
Recover the VM appliance First published in XenServer 6.0.

Parameters:
sessionTo - The session to which the VM appliance is to be recovered.
force - Whether the VMs should replace newer versions of themselves.
Returns:
Task
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException
Types.VmRequiresSr

recover

public void recover(Connection c,
                    Session sessionTo,
                    java.lang.Boolean force)
             throws Types.BadServerResponse,
                    Types.XenAPIException,
                    org.apache.xmlrpc.XmlRpcException,
                    Types.VmRequiresSr
Recover the VM appliance First published in XenServer 6.0.

Parameters:
sessionTo - The session to which the VM appliance is to be recovered.
force - Whether the VMs should replace newer versions of themselves.
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException
Types.VmRequiresSr

getAll

public static java.util.Set<VMAppliance> getAll(Connection c)
                                         throws Types.BadServerResponse,
                                                Types.XenAPIException,
                                                org.apache.xmlrpc.XmlRpcException
Return a list of all the VM_appliances known to the system. First published in XenServer 6.0.

Returns:
references to all objects
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

getAllRecords

public static java.util.Map<VMAppliance,VMAppliance.Record> getAllRecords(Connection c)
                                                                   throws Types.BadServerResponse,
                                                                          Types.XenAPIException,
                                                                          org.apache.xmlrpc.XmlRpcException
Return a map of VM_appliance references to VM_appliance records for all VM_appliances known to the system. First published in XenServer 6.0.

Returns:
records of all objects
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException