org.inria.myriads.snoozecommon.communication.rest.api
Interface GroupManagerAPI

All Known Implementing Classes:
RESTletGroupManagerCommunicator

public interface GroupManagerAPI

Group manager resource interface.

Author:
Eugen Feller

Method Summary
 AssignedGroupManager assignLocalController(LocalControllerDescription localControllerDescription)
          Assign local controller to a group manager.
 boolean destroyVirtualMachine(VirtualMachineLocation location)
          Routine to shutdown a virtual machine.
 VirtualMachineDiscoveryResponse discoverVirtualMachine(String virtualMachineId)
          Routine to discover the group manager hosting a virtual machine.
 boolean dropVirtualMachineMetaData(VirtualMachineLocation virtualMachineLocation)
          Drops virtual machine met data.
 GroupLeaderRepositoryInformation getGroupLeaderRepositoryInformation(int numberOfMonitoringEntries)
          Routine the group leader information.
 GroupManagerRepositoryInformation getGroupManagerRepositoryInformation(int numberOfMonitoringEntries)
          Return the group leader information.
 VirtualClusterSubmissionResponse getVirtualClusterResponse(String taskIdentifier)
          Returns the virtual cluster response.
 VirtualMachineMetaData getVirtualMachineMetaData(MetaDataRequest request)
          Routine to get virtual machine meta data.
 VirtualMachineSubmission getVirtualMachineResponse(String virtualMachineId)
          Returns the virtual machine response.
 String hasLocalController(NetworkAddress localControllerAddress)
          Checks if local controller exists.
 boolean hasVirtualMachine(VirtualMachineLocation location)
          Checks if a virtual machine is active on a particular local controller.
 boolean joinGroupLeader(GroupManagerDescription groupManagerDescription)
          Handles the join request of a group manager.
 boolean joinGroupManager(LocalControllerDescription localControllerDescription)
          Routine to join the group manager.
 boolean resumeEnergySaver()
          Resumes the energy saver.
 boolean resumeVirtualMachine(VirtualMachineLocation location)
          Routine to resume a virtual machine.
 String searchVirtualMachine(String virtualMachineId)
          Returns the local controller identifier of a virtual machine.
 boolean shutdownVirtualMachine(VirtualMachineLocation location)
          Routine to shutdown a virtual machine.
 String startVirtualCluster(VirtualClusterSubmissionRequest virtualClusterDescription)
          Dispatches the virtual cluster submission request.
 String startVirtualMachines(VirtualMachineSubmission submissionRequest)
          Starts virtual machines on the group manager.
 boolean suspendEnergySaver()
          Suspends the energy saver.
 boolean suspendVirtualMachine(VirtualMachineLocation location)
          Routine to suspend a virtual machine.
 

Method Detail

startVirtualCluster

@Post(value="?startVirtualCluster")
String startVirtualCluster(VirtualClusterSubmissionRequest virtualClusterDescription)
Dispatches the virtual cluster submission request. (called by the client)

Parameters:
virtualClusterDescription - The virtual cluster description
Returns:
The virtual cluster mapping

getVirtualMachineResponse

@Post(value="?getVirtualMachineResponse")
VirtualMachineSubmission getVirtualMachineResponse(String virtualMachineId)
Returns the virtual machine response.

Parameters:
virtualMachineId - The virtual machine identifier
Returns:
The virtual machine response

getVirtualClusterResponse

@Post(value="?getVirtualClusterResponse")
VirtualClusterSubmissionResponse getVirtualClusterResponse(String taskIdentifier)
Returns the virtual cluster response.

Parameters:
taskIdentifier - The task identifier
Returns:
The virtual cluster response

joinGroupLeader

@Post(value="?joinGroupLeader")
boolean joinGroupLeader(GroupManagerDescription groupManagerDescription)
Handles the join request of a group manager. (called by a group manager)

Parameters:
groupManagerDescription - The group manager description
Returns:
true if everything ok, false otherwise

joinGroupManager

@Post(value="?joinGroupManager")
boolean joinGroupManager(LocalControllerDescription localControllerDescription)
Routine to join the group manager. (called by a local controller)

Parameters:
localControllerDescription - The local controller description
Returns:
true if everything ok, false otherwise

assignLocalController

@Post(value="?assignLocalController")
AssignedGroupManager assignLocalController(LocalControllerDescription localControllerDescription)
Assign local controller to a group manager. (called by the local controller)

Parameters:
localControllerDescription - The local controller description
Returns:
The local controller assignment

discoverVirtualMachine

@Post(value="?discoverVirtualMachine")
VirtualMachineDiscoveryResponse discoverVirtualMachine(String virtualMachineId)
Routine to discover the group manager hosting a virtual machine.

Parameters:
virtualMachineId - The virtual machine identifier
Returns:
The local controller information

getGroupLeaderRepositoryInformation

@Post(value="?getGroupLeaderRepositoryInformation")
GroupLeaderRepositoryInformation getGroupLeaderRepositoryInformation(int numberOfMonitoringEntries)
Routine the group leader information.

Parameters:
numberOfMonitoringEntries - The number of monitoring entries
Returns:
The group leader repository information

getGroupManagerRepositoryInformation

@Post(value="?getGroupManagerRepositoryInformation")
GroupManagerRepositoryInformation getGroupManagerRepositoryInformation(int numberOfMonitoringEntries)
Return the group leader information.

Parameters:
numberOfMonitoringEntries - The number of monitoring entries
Returns:
The group manager repository information

startVirtualMachines

@Post(value="?startVirtualMachines")
String startVirtualMachines(VirtualMachineSubmission submissionRequest)
Starts virtual machines on the group manager.

Parameters:
submissionRequest - The virtual machine submission request
Returns:
The task identifier

suspendVirtualMachine

@Post(value="?suspendVirtualMachine")
boolean suspendVirtualMachine(VirtualMachineLocation location)
Routine to suspend a virtual machine.

Parameters:
location - The virtual machine location
Returns:
true if everything ok, false otherwise

resumeVirtualMachine

@Post(value="?resumeVirtualMachine")
boolean resumeVirtualMachine(VirtualMachineLocation location)
Routine to resume a virtual machine.

Parameters:
location - The virtual machine location
Returns:
true if everything ok, false otherwise

shutdownVirtualMachine

@Post(value="?shutdownVirtualMachine")
boolean shutdownVirtualMachine(VirtualMachineLocation location)
Routine to shutdown a virtual machine.

Parameters:
location - The virtual machine location
Returns:
true if everything ok, false otherwise

destroyVirtualMachine

@Post(value="?destroyVirtualMachine")
boolean destroyVirtualMachine(VirtualMachineLocation location)
Routine to shutdown a virtual machine.

Parameters:
location - The management request
Returns:
true if everything ok, false otherwise

searchVirtualMachine

@Post(value="?getLocalControllerDescription")
String searchVirtualMachine(String virtualMachineId)
Returns the local controller identifier of a virtual machine.

Parameters:
virtualMachineId - The virtual machine identifier
Returns:
The local controller identifier

hasVirtualMachine

@Post(value="?hasVirtualMachine")
boolean hasVirtualMachine(VirtualMachineLocation location)
Checks if a virtual machine is active on a particular local controller.

Parameters:
location - The virtual machine location
Returns:
true if everything ok, false otherwise

getVirtualMachineMetaData

@Post(value="?getVirtualMachineMetaData")
VirtualMachineMetaData getVirtualMachineMetaData(MetaDataRequest request)
Routine to get virtual machine meta data.

Parameters:
request - The meta data request
Returns:
The virtual machine information

suspendEnergySaver

@Get(value="?suspendEnergySaver")
boolean suspendEnergySaver()
Suspends the energy saver.

Returns:
true if everything ok, false otherwise

resumeEnergySaver

@Get(value="?resumeEnergySaver")
boolean resumeEnergySaver()
Resumes the energy saver.

Returns:
true if everything ok, false otherwise

dropVirtualMachineMetaData

@Post(value="?dropVirtualMachineMetaData")
boolean dropVirtualMachineMetaData(VirtualMachineLocation virtualMachineLocation)
Drops virtual machine met data.

Parameters:
virtualMachineLocation - The virtual machine location
Returns:
true if everything ok, false otherwise

hasLocalController

@Post(value="?hasLocalController")
String hasLocalController(NetworkAddress localControllerAddress)
Checks if local controller exists.

Parameters:
localControllerAddress - The lcoal controller address
Returns:
The previous identifier, null otherwise


Copyright © 2012. All Rights Reserved.