org.ow2.jasmine.vmm.agent.driver.xen
Class XenVirtualMachine

java.lang.Object
  extended by javax.management.NotificationBroadcasterSupport
      extended by org.ow2.jasmine.vmm.agent.domain.ManagedResource
          extended by org.ow2.jasmine.vmm.agent.driver.xen.XenVirtualMachine
All Implemented Interfaces:
javax.management.NotificationBroadcaster, javax.management.NotificationEmitter, org.ow2.jasmine.vmm.api.ManagedResourceMXBean, org.ow2.jasmine.vmm.api.VirtualMachineMXBean

public class XenVirtualMachine
extends ManagedResource
implements org.ow2.jasmine.vmm.api.VirtualMachineMXBean

Xen driver Virtual Machine MXBean implementation


Nested Class Summary
 
Nested classes/interfaces inherited from interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean
org.ow2.jasmine.vmm.api.VirtualMachineMXBean.PowerState
 
Field Summary
 
Fields inherited from class org.ow2.jasmine.vmm.agent.domain.ManagedResource
objectName, path
 
Constructor Summary
XenVirtualMachine(javax.management.ObjectName objectName, XenHost host, com.xensource.xenapi.Connection connection, com.xensource.xenapi.VM vm, java.util.Map<java.lang.String,java.lang.String> userData)
           
 
Method Summary
 void addUserData(java.lang.String key, java.lang.String value)
           
 boolean canLiveMigrateToHost(org.ow2.jasmine.vmm.api.HostMXBean targetHost)
           
 void destroy()
           
 float getCPULoad()
           
 long getDomID()
           
 java.lang.String getGuestIpAddress()
           
 org.ow2.jasmine.vmm.api.HostMXBean getHostMBean()
           
 float[] getLoadPerVCPU()
           
 java.lang.String getMacAddress()
           
 long getMemorySizeMB()
           
 long getMemoryUsedMB()
           
 java.lang.String getNameLabel()
           
 javax.management.MBeanNotificationInfo[] getNotificationInfo()
           
 int getNumVCPUs()
           
 java.lang.String getPinnedVCPUs()
           
 int getSchedulingCap()
           
 int getSchedulingWeight()
           
 java.util.Date getStartTime()
           
 org.ow2.jasmine.vmm.api.VirtualMachineMXBean.PowerState getState()
           
 long getUpTimeSeconds()
           
 java.lang.String getUserData(java.lang.String key)
           
 java.lang.String getUuid()
           
 void makeTemplate(java.lang.String vmImageID, java.lang.String name, java.lang.String description)
           
 void migrate(org.ow2.jasmine.vmm.api.HostMXBean targetHost, boolean live)
           
 void reboot()
           
 void resume()
           
 void setMemory(int memory)
           
 void setMemorySizeMB(long size)
           
 void setNumVCPUs(int numVCPUs)
           
 void setPinnedVCPUs(java.lang.String pinnedVCPUs)
           
 void setSchedulingCap(int schedulingCap)
           
 void setSchedulingWeight(int schedulingWeight)
           
 void shutdown()
           
 void start()
           
 void suspend()
           
 void updateCPUConsumption(long time, float newCPULoad)
           
 
Methods inherited from class org.ow2.jasmine.vmm.agent.domain.ManagedResource
emitNotification, emitNotification, getObjectName, getPath
 
Methods inherited from class javax.management.NotificationBroadcasterSupport
addNotificationListener, handleNotification, removeNotificationListener, removeNotificationListener, sendNotification
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.ow2.jasmine.vmm.api.ManagedResourceMXBean
getObjectName, getPath
 

Constructor Detail

XenVirtualMachine

public XenVirtualMachine(javax.management.ObjectName objectName,
                         XenHost host,
                         com.xensource.xenapi.Connection connection,
                         com.xensource.xenapi.VM vm,
                         java.util.Map<java.lang.String,java.lang.String> userData)
Method Detail

canLiveMigrateToHost

public boolean canLiveMigrateToHost(org.ow2.jasmine.vmm.api.HostMXBean targetHost)
Specified by:
canLiveMigrateToHost in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

getUuid

public java.lang.String getUuid()
Specified by:
getUuid in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

getHostMBean

public org.ow2.jasmine.vmm.api.HostMXBean getHostMBean()
Specified by:
getHostMBean in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

getDomID

public long getDomID()

getStartTime

public java.util.Date getStartTime()
Specified by:
getStartTime in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

getUpTimeSeconds

public long getUpTimeSeconds()

updateCPUConsumption

public void updateCPUConsumption(long time,
                                 float newCPULoad)

getCPULoad

public float getCPULoad()
Specified by:
getCPULoad in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

getLoadPerVCPU

public float[] getLoadPerVCPU()
Specified by:
getLoadPerVCPU in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

getMemorySizeMB

public long getMemorySizeMB()
Specified by:
getMemorySizeMB in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

setMemorySizeMB

public void setMemorySizeMB(long size)
Specified by:
setMemorySizeMB in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

getMemoryUsedMB

public long getMemoryUsedMB()
Specified by:
getMemoryUsedMB in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

getNameLabel

public java.lang.String getNameLabel()
Specified by:
getNameLabel in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

addUserData

public void addUserData(java.lang.String key,
                        java.lang.String value)

getUserData

public java.lang.String getUserData(java.lang.String key)
Specified by:
getUserData in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

getNumVCPUs

public int getNumVCPUs()
Specified by:
getNumVCPUs in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

getPinnedVCPUs

public java.lang.String getPinnedVCPUs()

getSchedulingCap

public int getSchedulingCap()
Specified by:
getSchedulingCap in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

getSchedulingWeight

public int getSchedulingWeight()
Specified by:
getSchedulingWeight in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

getState

public org.ow2.jasmine.vmm.api.VirtualMachineMXBean.PowerState getState()
Specified by:
getState in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

getGuestIpAddress

public java.lang.String getGuestIpAddress()
Specified by:
getGuestIpAddress in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

getMacAddress

public java.lang.String getMacAddress()
Specified by:
getMacAddress in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

setMemory

public void setMemory(int memory)

setNumVCPUs

public void setNumVCPUs(int numVCPUs)
Specified by:
setNumVCPUs in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

setPinnedVCPUs

public void setPinnedVCPUs(java.lang.String pinnedVCPUs)

setSchedulingCap

public void setSchedulingCap(int schedulingCap)
Specified by:
setSchedulingCap in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

setSchedulingWeight

public void setSchedulingWeight(int schedulingWeight)
Specified by:
setSchedulingWeight in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

suspend

public void suspend()
Specified by:
suspend in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

migrate

public void migrate(org.ow2.jasmine.vmm.api.HostMXBean targetHost,
                    boolean live)
             throws org.ow2.jasmine.vmm.api.IllegalOperationException,
                    org.ow2.jasmine.vmm.api.VMMException
Specified by:
migrate in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean
Throws:
org.ow2.jasmine.vmm.api.IllegalOperationException
org.ow2.jasmine.vmm.api.VMMException

shutdown

public void shutdown()
Specified by:
shutdown in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

start

public void start()
Specified by:
start in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

reboot

public void reboot()
Specified by:
reboot in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

resume

public void resume()
Specified by:
resume in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

destroy

public void destroy()
Specified by:
destroy in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean

getNotificationInfo

public javax.management.MBeanNotificationInfo[] getNotificationInfo()
Specified by:
getNotificationInfo in interface javax.management.NotificationBroadcaster
Overrides:
getNotificationInfo in class javax.management.NotificationBroadcasterSupport

makeTemplate

public void makeTemplate(java.lang.String vmImageID,
                         java.lang.String name,
                         java.lang.String description)
                  throws org.ow2.jasmine.vmm.api.InsufficientResourcesException,
                         org.ow2.jasmine.vmm.api.IllegalOperationException,
                         org.ow2.jasmine.vmm.api.VMMException
Specified by:
makeTemplate in interface org.ow2.jasmine.vmm.api.VirtualMachineMXBean
Throws:
org.ow2.jasmine.vmm.api.InsufficientResourcesException
org.ow2.jasmine.vmm.api.IllegalOperationException
org.ow2.jasmine.vmm.api.VMMException


Copyright © 2009 OW2 Consortium. All Rights Reserved.