org.inria.myriads.snoozenode.groupmanager.statemachine.api.impl
public class GroupManagerStateMachine extends Object implements StateMachine, MigrationPlanListener
Constructor and Description |
---|
GroupManagerStateMachine(NodeConfiguration nodeConfiguration,
ResourceDemandEstimator estimator,
GroupManagerRepository repository,
ExternalNotifier externalNotifier)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
boolean |
controlVirtualMachine(VirtualMachineCommand command,
org.inria.myriads.snoozecommon.communication.virtualcluster.submission.VirtualMachineLocation location)
Processes virtual machine command.
|
org.inria.myriads.snoozecommon.communication.virtualcluster.submission.VirtualMachineSubmissionResponse |
getVirtualMachineSubmissionResponse(String taskIdentifier)
Returns virtual machine submission response.
|
boolean |
isBusy()
Checks if the system is busy.
|
void |
onAnomalyResolved(org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription localController)
Called on anomaly resolved.
|
boolean |
onEnergySavingsEnabled(List<org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription> idleResources)
Power cycles the idle resources.
|
void |
onMigrationPlanEnforced()
Called upon migration plan enforcement.
|
void |
onVirtualMachineSubmissionFinished()
Called upon virtual machine submission finished.
|
boolean |
onWakeupLocalController(org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription localController)
Wakeup local controller.
|
boolean |
onWakeupLocalControllers(List<org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription> localControllers)
Wakeup local controllers.
|
org.inria.myriads.snoozecommon.communication.virtualcluster.VirtualMachineMetaData |
resizeVirtualMachine(org.inria.myriads.snoozecommon.communication.virtualmachine.ResizeRequest resizeRequest)
Resizes a virtual Machine.
|
void |
resolveAnomaly(String localControllerId,
LocalControllerState state)
Resolve anomaly.
|
boolean |
startMigration(org.inria.myriads.snoozecommon.communication.virtualcluster.migration.MigrationRequest migrationRequest)
Starts the migration of the vm.
|
boolean |
startReconfiguration()
Starts the reconfiguration process.
|
String |
startVirtualMachines(org.inria.myriads.snoozecommon.communication.virtualcluster.submission.VirtualMachineSubmissionRequest submissionRequest)
Starts the virtual machine.
|
public GroupManagerStateMachine(NodeConfiguration nodeConfiguration, ResourceDemandEstimator estimator, GroupManagerRepository repository, ExternalNotifier externalNotifier)
nodeConfiguration
- The node configurationestimator
- The resource demand estimatorrepository
- The repositoryexternalNotifier
- The external Notifier.public String startVirtualMachines(org.inria.myriads.snoozecommon.communication.virtualcluster.submission.VirtualMachineSubmissionRequest submissionRequest)
startVirtualMachines
in interface StateMachine
submissionRequest
- The virtual machine submissionpublic boolean controlVirtualMachine(VirtualMachineCommand command, org.inria.myriads.snoozecommon.communication.virtualcluster.submission.VirtualMachineLocation location)
controlVirtualMachine
in interface StateMachine
command
- The virtual machine commandlocation
- The virtual machine locationpublic boolean onEnergySavingsEnabled(List<org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription> idleResources)
onEnergySavingsEnabled
in interface StateMachine
idleResources
- The list of idle resourcespublic boolean startReconfiguration()
startReconfiguration
in interface StateMachine
public void resolveAnomaly(String localControllerId, LocalControllerState state)
resolveAnomaly
in interface StateMachine
localControllerId
- The local controller identifierstate
- The local controller statepublic boolean isBusy()
isBusy
in interface StateMachine
public void onMigrationPlanEnforced()
onMigrationPlanEnforced
in interface MigrationPlanListener
public boolean onWakeupLocalController(org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription localController)
onWakeupLocalController
in interface StateMachine
localController
- The local controllerpublic boolean onWakeupLocalControllers(List<org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription> localControllers)
onWakeupLocalControllers
in interface StateMachine
localControllers
- The local controllerspublic void onVirtualMachineSubmissionFinished()
onVirtualMachineSubmissionFinished
in interface StateMachine
public void onAnomalyResolved(org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription localController)
onAnomalyResolved
in interface StateMachine
localController
- The local controllerpublic org.inria.myriads.snoozecommon.communication.virtualcluster.submission.VirtualMachineSubmissionResponse getVirtualMachineSubmissionResponse(String taskIdentifier)
getVirtualMachineSubmissionResponse
in interface StateMachine
taskIdentifier
- The task identifierpublic boolean startMigration(org.inria.myriads.snoozecommon.communication.virtualcluster.migration.MigrationRequest migrationRequest)
startMigration
in interface StateMachine
migrationRequest
- migrationRequestpublic org.inria.myriads.snoozecommon.communication.virtualcluster.VirtualMachineMetaData resizeVirtualMachine(org.inria.myriads.snoozecommon.communication.virtualmachine.ResizeRequest resizeRequest)
StateMachine
resizeVirtualMachine
in interface StateMachine
resizeRequest
- The resize requestCopyright © 2013. All Rights Reserved.