org.ow2.jasmine.vmm.agent.domain
Class ServerPool
java.lang.Object
javax.management.NotificationBroadcasterSupport
org.ow2.jasmine.vmm.agent.domain.ManagedResource
org.ow2.jasmine.vmm.agent.domain.ServerPool
- All Implemented Interfaces:
- javax.management.NotificationBroadcaster, javax.management.NotificationEmitter, org.ow2.jasmine.vmm.api.ManagedResourceMXBean, org.ow2.jasmine.vmm.api.ServerPoolMXBean
- Direct Known Subclasses:
- XenServerPool
public abstract class ServerPool
- extends ManagedResource
- implements org.ow2.jasmine.vmm.api.ServerPoolMXBean
Base class partially implementing the ServerPoolMXBean interface and expected
to be sub-classed on a per driver basis.
A ServerPool is associated with a VM placement policy which determines where
a provisioned VM is to be placed on one host among the members of the server
pool
|
Constructor Summary |
ServerPool(java.lang.String name,
javax.management.ObjectName objectName)
Constructs a new server pool |
|
Method Summary |
protected void |
addHost(org.ow2.jasmine.vmm.api.HostMXBean host)
Adds a new host to the server pool |
java.util.List<org.ow2.jasmine.vmm.api.HostMXBean> |
getManagedHosts()
|
java.lang.String |
getName()
|
abstract org.ow2.jasmine.vmm.api.VirtualMachineImageStoreMXBean |
getVMImageStore()
|
abstract org.ow2.jasmine.vmm.api.HostMXBean |
newHost(java.lang.String hostName,
java.util.Map<java.lang.String,java.lang.String> props)
|
org.ow2.jasmine.vmm.api.VirtualMachineMXBean |
provisionVM(org.ow2.jasmine.vmm.api.VMConfigSpec vmSpec,
java.util.Map<java.lang.String,java.lang.String> constraints,
boolean sync)
|
void |
setProvisioningPolicy(java.lang.String policyId)
|
| Methods inherited from class javax.management.NotificationBroadcasterSupport |
addNotificationListener, getNotificationInfo, 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 |
logger
protected static org.apache.log4j.Logger logger
name
protected java.lang.String name
hosts
protected final java.util.List<org.ow2.jasmine.vmm.api.HostMXBean> hosts
placementPolicy
protected VMPlacementPolicy placementPolicy
ServerPool
public ServerPool(java.lang.String name,
javax.management.ObjectName objectName)
- Constructs a new server pool
- Parameters:
name - symbolic name of the server poolobjectName - JMX object name of the server pool
getName
public java.lang.String getName()
- Specified by:
getName in interface org.ow2.jasmine.vmm.api.ServerPoolMXBean
newHost
public abstract org.ow2.jasmine.vmm.api.HostMXBean newHost(java.lang.String hostName,
java.util.Map<java.lang.String,java.lang.String> props)
addHost
protected void addHost(org.ow2.jasmine.vmm.api.HostMXBean host)
- Adds a new host to the server pool
- Parameters:
host - host to add
setProvisioningPolicy
public void setProvisioningPolicy(java.lang.String policyId)
- Specified by:
setProvisioningPolicy in interface org.ow2.jasmine.vmm.api.ServerPoolMXBean
provisionVM
public org.ow2.jasmine.vmm.api.VirtualMachineMXBean provisionVM(org.ow2.jasmine.vmm.api.VMConfigSpec vmSpec,
java.util.Map<java.lang.String,java.lang.String> constraints,
boolean sync)
throws org.ow2.jasmine.vmm.api.InsufficientResourcesException,
org.ow2.jasmine.vmm.api.InvalidVMConfigException,
org.ow2.jasmine.vmm.api.VMMException
- Specified by:
provisionVM in interface org.ow2.jasmine.vmm.api.ServerPoolMXBean
- Throws:
org.ow2.jasmine.vmm.api.InsufficientResourcesException
org.ow2.jasmine.vmm.api.InvalidVMConfigException
org.ow2.jasmine.vmm.api.VMMException
getVMImageStore
public abstract org.ow2.jasmine.vmm.api.VirtualMachineImageStoreMXBean getVMImageStore()
- Specified by:
getVMImageStore in interface org.ow2.jasmine.vmm.api.ServerPoolMXBean
getManagedHosts
public java.util.List<org.ow2.jasmine.vmm.api.HostMXBean> getManagedHosts()
- Specified by:
getManagedHosts in interface org.ow2.jasmine.vmm.api.ServerPoolMXBean
Copyright © 2009 OW2 Consortium. All Rights Reserved.