com.xensource.xenapi
Class VBD

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

public class VBD
extends XenAPIObject

A virtual block device


Nested Class Summary
static class VBD.Record
          Represents all the fields in a VBD
 
Field Summary
protected  String ref
          The XenAPI reference to this object.
 
Method Summary
 void addToOtherConfig(Connection c, String key, String value)
          Add the given key-value pair to the other_config field of the given VBD.
 void addToQosAlgorithmParams(Connection c, String key, String value)
          Add the given key-value pair to the qos/algorithm_params field of the given VBD.
 void assertAttachable(Connection c)
          Throws an error if this VBD could not be attached to this VM if the VM were running.
 Task assertAttachableAsync(Connection c)
          Throws an error if this VBD could not be attached to this VM if the VM were running.
static VBD create(Connection c, VBD.Record record)
          Create a new VBD instance, and return its handle.
static Task createAsync(Connection c, VBD.Record record)
          Create a new VBD instance, and return its handle.
 void destroy(Connection c)
          Destroy the specified VBD instance.
 Task destroyAsync(Connection c)
          Destroy the specified VBD instance.
 void eject(Connection c)
          Remove the media from the device and leave it empty
 Task ejectAsync(Connection c)
          Remove the media from the device and leave it empty
 boolean equals(Object obj)
          If obj is a VBD, compares XenAPI references for equality.
static Set<VBD> getAll(Connection c)
          Return a list of all the VBDs known to the system.
 Set<Types.VbdOperations> getAllowedOperations(Connection c)
          Get the allowed_operations field of the given VBD.
static Map<VBD,VBD.Record> getAllRecords(Connection c)
          Return a map of VBD references to VBD records for all VBDs known to the system.
 Boolean getBootable(Connection c)
          Get the bootable field of the given VBD.
static VBD getByUuid(Connection c, String uuid)
          Get a reference to the VBD instance with the specified UUID.
 Boolean getCurrentlyAttached(Connection c)
          Get the currently_attached field of the given VBD.
 Map<String,Types.VbdOperations> getCurrentOperations(Connection c)
          Get the current_operations field of the given VBD.
 String getDevice(Connection c)
          Get the device field of the given VBD.
 Boolean getEmpty(Connection c)
          Get the empty field of the given VBD.
 VBDMetrics getMetrics(Connection c)
          Get the metrics field of the given VBD.
 Types.VbdMode getMode(Connection c)
          Get the mode field of the given VBD.
 Map<String,String> getOtherConfig(Connection c)
          Get the other_config field of the given VBD.
 Map<String,String> getQosAlgorithmParams(Connection c)
          Get the qos/algorithm_params field of the given VBD.
 String getQosAlgorithmType(Connection c)
          Get the qos/algorithm_type field of the given VBD.
 Set<String> getQosSupportedAlgorithms(Connection c)
          Get the qos/supported_algorithms field of the given VBD.
 VBD.Record getRecord(Connection c)
          Get a record containing the current state of the given VBD.
 Map<String,String> getRuntimeProperties(Connection c)
          Get the runtime_properties field of the given VBD.
 Long getStatusCode(Connection c)
          Get the status_code field of the given VBD.
 String getStatusDetail(Connection c)
          Get the status_detail field of the given VBD.
 Boolean getStorageLock(Connection c)
          Get the storage_lock field of the given VBD.
 Types.VbdType getType(Connection c)
          Get the type field of the given VBD.
 Boolean getUnpluggable(Connection c)
          Get the unpluggable field of the given VBD.
 String getUserdevice(Connection c)
          Get the userdevice field of the given VBD.
 String getUuid(Connection c)
          Get the uuid field of the given VBD.
 VDI getVDI(Connection c)
          Get the VDI field of the given VBD.
 VM getVM(Connection c)
          Get the VM field of the given VBD.
 int hashCode()
           
 void insert(Connection c, VDI vdi)
          Insert new media into the device
 Task insertAsync(Connection c, VDI vdi)
          Insert new media into the device
 void plug(Connection c)
          Hotplug the specified VBD, dynamically attaching it to the running VM
 Task plugAsync(Connection c)
          Hotplug the specified VBD, dynamically attaching it to the running VM
 void removeFromOtherConfig(Connection c, String key)
          Remove the given key and its corresponding value from the other_config field of the given VBD.
 void removeFromQosAlgorithmParams(Connection c, String key)
          Remove the given key and its corresponding value from the qos/algorithm_params field of the given VBD.
 void setBootable(Connection c, Boolean bootable)
          Set the bootable field of the given VBD.
 void setMode(Connection c, Types.VbdMode mode)
          Set the mode field of the given VBD.
 void setOtherConfig(Connection c, Map<String,String> otherConfig)
          Set the other_config field of the given VBD.
 void setQosAlgorithmParams(Connection c, Map<String,String> algorithmParams)
          Set the qos/algorithm_params field of the given VBD.
 void setQosAlgorithmType(Connection c, String algorithmType)
          Set the qos/algorithm_type field of the given VBD.
 void setType(Connection c, Types.VbdType type)
          Set the type field of the given VBD.
 void setUnpluggable(Connection c, Boolean unpluggable)
          Set the unpluggable field of the given VBD.
 void setUserdevice(Connection c, String userdevice)
          Set the userdevice field of the given VBD.
 String toWireString()
           
 void unplug(Connection c)
          Hot-unplug the specified VBD, dynamically unattaching it from the running VM
 Task unplugAsync(Connection c)
          Hot-unplug the specified VBD, dynamically unattaching it from the running VM
 void unplugForce(Connection c)
          Forcibly unplug the specified VBD
 Task unplugForceAsync(Connection c)
          Forcibly unplug the specified VBD
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ref

protected final String ref
The XenAPI reference to this object.

Method Detail

toWireString

public String toWireString()
Specified by:
toWireString in class XenAPIObject

equals

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

Overrides:
equals in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object

getRecord

public VBD.Record getRecord(Connection c)
                     throws Types.BadServerResponse,
                            Types.XenAPIException,
                            org.apache.xmlrpc.XmlRpcException
Get a record containing the current state of the given VBD.

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

getByUuid

public static VBD getByUuid(Connection c,
                            String uuid)
                     throws Types.BadServerResponse,
                            Types.XenAPIException,
                            org.apache.xmlrpc.XmlRpcException
Get a reference to the VBD instance with the specified UUID.

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,
                               VBD.Record record)
                        throws Types.BadServerResponse,
                               Types.XenAPIException,
                               org.apache.xmlrpc.XmlRpcException
Create a new VBD instance, and return its handle.

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

create

public static VBD create(Connection c,
                         VBD.Record record)
                  throws Types.BadServerResponse,
                         Types.XenAPIException,
                         org.apache.xmlrpc.XmlRpcException
Create a new VBD instance, and return its handle.

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 VBD instance.

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 VBD instance.

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

getUuid

public String getUuid(Connection c)
               throws Types.BadServerResponse,
                      Types.XenAPIException,
                      org.apache.xmlrpc.XmlRpcException
Get the uuid field of the given VBD.

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

getAllowedOperations

public Set<Types.VbdOperations> getAllowedOperations(Connection c)
                                              throws Types.BadServerResponse,
                                                     Types.XenAPIException,
                                                     org.apache.xmlrpc.XmlRpcException
Get the allowed_operations field of the given VBD.

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

getCurrentOperations

public Map<String,Types.VbdOperations> getCurrentOperations(Connection c)
                                                     throws Types.BadServerResponse,
                                                            Types.XenAPIException,
                                                            org.apache.xmlrpc.XmlRpcException
Get the current_operations field of the given VBD.

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

getVM

public VM getVM(Connection c)
         throws Types.BadServerResponse,
                Types.XenAPIException,
                org.apache.xmlrpc.XmlRpcException
Get the VM field of the given VBD.

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

getVDI

public VDI getVDI(Connection c)
           throws Types.BadServerResponse,
                  Types.XenAPIException,
                  org.apache.xmlrpc.XmlRpcException
Get the VDI field of the given VBD.

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

getDevice

public String getDevice(Connection c)
                 throws Types.BadServerResponse,
                        Types.XenAPIException,
                        org.apache.xmlrpc.XmlRpcException
Get the device field of the given VBD.

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

getUserdevice

public String getUserdevice(Connection c)
                     throws Types.BadServerResponse,
                            Types.XenAPIException,
                            org.apache.xmlrpc.XmlRpcException
Get the userdevice field of the given VBD.

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

getBootable

public Boolean getBootable(Connection c)
                    throws Types.BadServerResponse,
                           Types.XenAPIException,
                           org.apache.xmlrpc.XmlRpcException
Get the bootable field of the given VBD.

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

getMode

public Types.VbdMode getMode(Connection c)
                      throws Types.BadServerResponse,
                             Types.XenAPIException,
                             org.apache.xmlrpc.XmlRpcException
Get the mode field of the given VBD.

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

getType

public Types.VbdType getType(Connection c)
                      throws Types.BadServerResponse,
                             Types.XenAPIException,
                             org.apache.xmlrpc.XmlRpcException
Get the type field of the given VBD.

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

getUnpluggable

public Boolean getUnpluggable(Connection c)
                       throws Types.BadServerResponse,
                              Types.XenAPIException,
                              org.apache.xmlrpc.XmlRpcException
Get the unpluggable field of the given VBD.

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

getStorageLock

public Boolean getStorageLock(Connection c)
                       throws Types.BadServerResponse,
                              Types.XenAPIException,
                              org.apache.xmlrpc.XmlRpcException
Get the storage_lock field of the given VBD.

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

getEmpty

public Boolean getEmpty(Connection c)
                 throws Types.BadServerResponse,
                        Types.XenAPIException,
                        org.apache.xmlrpc.XmlRpcException
Get the empty field of the given VBD.

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

getOtherConfig

public Map<String,String> getOtherConfig(Connection c)
                                  throws Types.BadServerResponse,
                                         Types.XenAPIException,
                                         org.apache.xmlrpc.XmlRpcException
Get the other_config field of the given VBD.

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

getCurrentlyAttached

public Boolean getCurrentlyAttached(Connection c)
                             throws Types.BadServerResponse,
                                    Types.XenAPIException,
                                    org.apache.xmlrpc.XmlRpcException
Get the currently_attached field of the given VBD.

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

getStatusCode

public Long getStatusCode(Connection c)
                   throws Types.BadServerResponse,
                          Types.XenAPIException,
                          org.apache.xmlrpc.XmlRpcException
Get the status_code field of the given VBD.

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

getStatusDetail

public String getStatusDetail(Connection c)
                       throws Types.BadServerResponse,
                              Types.XenAPIException,
                              org.apache.xmlrpc.XmlRpcException
Get the status_detail field of the given VBD.

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

getRuntimeProperties

public Map<String,String> getRuntimeProperties(Connection c)
                                        throws Types.BadServerResponse,
                                               Types.XenAPIException,
                                               org.apache.xmlrpc.XmlRpcException
Get the runtime_properties field of the given VBD.

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

getQosAlgorithmType

public String getQosAlgorithmType(Connection c)
                           throws Types.BadServerResponse,
                                  Types.XenAPIException,
                                  org.apache.xmlrpc.XmlRpcException
Get the qos/algorithm_type field of the given VBD.

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

getQosAlgorithmParams

public Map<String,String> getQosAlgorithmParams(Connection c)
                                         throws Types.BadServerResponse,
                                                Types.XenAPIException,
                                                org.apache.xmlrpc.XmlRpcException
Get the qos/algorithm_params field of the given VBD.

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

getQosSupportedAlgorithms

public Set<String> getQosSupportedAlgorithms(Connection c)
                                      throws Types.BadServerResponse,
                                             Types.XenAPIException,
                                             org.apache.xmlrpc.XmlRpcException
Get the qos/supported_algorithms field of the given VBD.

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

getMetrics

public VBDMetrics getMetrics(Connection c)
                      throws Types.BadServerResponse,
                             Types.XenAPIException,
                             org.apache.xmlrpc.XmlRpcException
Get the metrics field of the given VBD.

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

setUserdevice

public void setUserdevice(Connection c,
                          String userdevice)
                   throws Types.BadServerResponse,
                          Types.XenAPIException,
                          org.apache.xmlrpc.XmlRpcException
Set the userdevice field of the given VBD.

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

setBootable

public void setBootable(Connection c,
                        Boolean bootable)
                 throws Types.BadServerResponse,
                        Types.XenAPIException,
                        org.apache.xmlrpc.XmlRpcException
Set the bootable field of the given VBD.

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

setMode

public void setMode(Connection c,
                    Types.VbdMode mode)
             throws Types.BadServerResponse,
                    Types.XenAPIException,
                    org.apache.xmlrpc.XmlRpcException
Set the mode field of the given VBD.

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

setType

public void setType(Connection c,
                    Types.VbdType type)
             throws Types.BadServerResponse,
                    Types.XenAPIException,
                    org.apache.xmlrpc.XmlRpcException
Set the type field of the given VBD.

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

setUnpluggable

public void setUnpluggable(Connection c,
                           Boolean unpluggable)
                    throws Types.BadServerResponse,
                           Types.XenAPIException,
                           org.apache.xmlrpc.XmlRpcException
Set the unpluggable field of the given VBD.

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

setOtherConfig

public void setOtherConfig(Connection c,
                           Map<String,String> otherConfig)
                    throws Types.BadServerResponse,
                           Types.XenAPIException,
                           org.apache.xmlrpc.XmlRpcException
Set the other_config field of the given VBD.

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

addToOtherConfig

public void addToOtherConfig(Connection c,
                             String key,
                             String value)
                      throws Types.BadServerResponse,
                             Types.XenAPIException,
                             org.apache.xmlrpc.XmlRpcException
Add the given key-value pair to the other_config field of the given VBD.

Parameters:
key - Key to add
value - Value to add
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

removeFromOtherConfig

public void removeFromOtherConfig(Connection c,
                                  String key)
                           throws Types.BadServerResponse,
                                  Types.XenAPIException,
                                  org.apache.xmlrpc.XmlRpcException
Remove the given key and its corresponding value from the other_config field of the given VBD. If the key is not in that Map, then do nothing.

Parameters:
key - Key to remove
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

setQosAlgorithmType

public void setQosAlgorithmType(Connection c,
                                String algorithmType)
                         throws Types.BadServerResponse,
                                Types.XenAPIException,
                                org.apache.xmlrpc.XmlRpcException
Set the qos/algorithm_type field of the given VBD.

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

setQosAlgorithmParams

public void setQosAlgorithmParams(Connection c,
                                  Map<String,String> algorithmParams)
                           throws Types.BadServerResponse,
                                  Types.XenAPIException,
                                  org.apache.xmlrpc.XmlRpcException
Set the qos/algorithm_params field of the given VBD.

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

addToQosAlgorithmParams

public void addToQosAlgorithmParams(Connection c,
                                    String key,
                                    String value)
                             throws Types.BadServerResponse,
                                    Types.XenAPIException,
                                    org.apache.xmlrpc.XmlRpcException
Add the given key-value pair to the qos/algorithm_params field of the given VBD.

Parameters:
key - Key to add
value - Value to add
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

removeFromQosAlgorithmParams

public void removeFromQosAlgorithmParams(Connection c,
                                         String key)
                                  throws Types.BadServerResponse,
                                         Types.XenAPIException,
                                         org.apache.xmlrpc.XmlRpcException
Remove the given key and its corresponding value from the qos/algorithm_params field of the given VBD. If the key is not in that Map, then do nothing.

Parameters:
key - Key to remove
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException

ejectAsync

public Task ejectAsync(Connection c)
                throws Types.BadServerResponse,
                       Types.XenAPIException,
                       org.apache.xmlrpc.XmlRpcException,
                       Types.VbdNotRemovableMedia,
                       Types.VbdIsEmpty
Remove the media from the device and leave it empty

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

eject

public void eject(Connection c)
           throws Types.BadServerResponse,
                  Types.XenAPIException,
                  org.apache.xmlrpc.XmlRpcException,
                  Types.VbdNotRemovableMedia,
                  Types.VbdIsEmpty
Remove the media from the device and leave it empty

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

insertAsync

public Task insertAsync(Connection c,
                        VDI vdi)
                 throws Types.BadServerResponse,
                        Types.XenAPIException,
                        org.apache.xmlrpc.XmlRpcException,
                        Types.VbdNotRemovableMedia,
                        Types.VbdNotEmpty
Insert new media into the device

Parameters:
vdi - The new VDI to 'insert'
Returns:
Task
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException
Types.VbdNotRemovableMedia
Types.VbdNotEmpty

insert

public void insert(Connection c,
                   VDI vdi)
            throws Types.BadServerResponse,
                   Types.XenAPIException,
                   org.apache.xmlrpc.XmlRpcException,
                   Types.VbdNotRemovableMedia,
                   Types.VbdNotEmpty
Insert new media into the device

Parameters:
vdi - The new VDI to 'insert'
Throws:
Types.BadServerResponse
Types.XenAPIException
org.apache.xmlrpc.XmlRpcException
Types.VbdNotRemovableMedia
Types.VbdNotEmpty

plugAsync

public Task plugAsync(Connection c)
               throws Types.BadServerResponse,
                      Types.XenAPIException,
                      org.apache.xmlrpc.XmlRpcException
Hotplug the specified VBD, dynamically attaching it to the running VM

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

plug

public void plug(Connection c)
          throws Types.BadServerResponse,
                 Types.XenAPIException,
                 org.apache.xmlrpc.XmlRpcException
Hotplug the specified VBD, dynamically attaching it to the running VM

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

unplugAsync

public Task unplugAsync(Connection c)
                 throws Types.BadServerResponse,
                        Types.XenAPIException,
                        org.apache.xmlrpc.XmlRpcException,
                        Types.DeviceDetachRejected,
                        Types.DeviceAlreadyDetached
Hot-unplug the specified VBD, dynamically unattaching it from the running VM

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

unplug

public void unplug(Connection c)
            throws Types.BadServerResponse,
                   Types.XenAPIException,
                   org.apache.xmlrpc.XmlRpcException,
                   Types.DeviceDetachRejected,
                   Types.DeviceAlreadyDetached
Hot-unplug the specified VBD, dynamically unattaching it from the running VM

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

unplugForceAsync

public Task unplugForceAsync(Connection c)
                      throws Types.BadServerResponse,
                             Types.XenAPIException,
                             org.apache.xmlrpc.XmlRpcException
Forcibly unplug the specified VBD

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

unplugForce

public void unplugForce(Connection c)
                 throws Types.BadServerResponse,
                        Types.XenAPIException,
                        org.apache.xmlrpc.XmlRpcException
Forcibly unplug the specified VBD

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

assertAttachableAsync

public Task assertAttachableAsync(Connection c)
                           throws Types.BadServerResponse,
                                  Types.XenAPIException,
                                  org.apache.xmlrpc.XmlRpcException
Throws an error if this VBD could not be attached to this VM if the VM were running. Intended for debugging.

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

assertAttachable

public void assertAttachable(Connection c)
                      throws Types.BadServerResponse,
                             Types.XenAPIException,
                             org.apache.xmlrpc.XmlRpcException
Throws an error if this VBD could not be attached to this VM if the VM were running. Intended for debugging.

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

getAll

public static Set<VBD> getAll(Connection c)
                       throws Types.BadServerResponse,
                              Types.XenAPIException,
                              org.apache.xmlrpc.XmlRpcException
Return a list of all the VBDs known to the system.

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

getAllRecords

public static Map<VBD,VBD.Record> getAllRecords(Connection c)
                                         throws Types.BadServerResponse,
                                                Types.XenAPIException,
                                                org.apache.xmlrpc.XmlRpcException
Return a map of VBD references to VBD records for all VBDs known to the system.

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