org.inria.myriads.snoozenode.database.api.impl.memory
public final class GroupLeaderMemoryRepository extends Object implements GroupLeaderRepository
Constructor and Description |
---|
GroupLeaderMemoryRepository(org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription groupLeaderDescription,
String[] virtualMachineSubnets,
int maxCapacity)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
boolean |
addGroupManagerDescription(org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription groupManager)
Adds a group manager description.
|
void |
addGroupManagerSummaryInformation(String groupManagerId,
org.inria.myriads.snoozecommon.communication.groupmanager.summary.GroupManagerSummaryInformation summary)
Adds group manager data.
|
boolean |
addIpAddress(String ipAddress)
Adds an IP address based on a string.
|
boolean |
dropGroupManager(String groupManagerId)
Removes a group manager from the repository.
|
protected List<String> |
generateAddressPool(String[] virtualMachineSubnets)
Generates the address pool.
|
org.inria.myriads.snoozecommon.communication.localcontroller.AssignedGroupManager |
getAssignedGroupManager(org.inria.myriads.snoozecommon.communication.NetworkAddress contactInformation)
Gets the group manager assigned to the localcontroller identified by its contact information.
|
String |
getFreeIpAddress()
Returns a free IP address.
|
org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription |
getGroupManagerDescription(String groupManagerId,
int numberOfBacklogEntries)
Returns the group manager description.
|
ArrayList<org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription> |
getGroupManagerDescriptions(int numberOfBacklogEntries)
Returns the group manager descriptions.
|
org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription |
getLocalControllerDescription(String localControllerId)
Gets the localController description.
|
ArrayList<org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription> |
getLocalControllerList()
Returns the local controllers list.
|
boolean |
removeIpAddress(String ipAddress)
Removes an IP address from the pool.
|
boolean |
updateLocation(org.inria.myriads.snoozecommon.communication.virtualcluster.submission.VirtualMachineLocation location)
Given a local controller location updates the location with the proper groupmanager.
|
public GroupLeaderMemoryRepository(org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription groupLeaderDescription, String[] virtualMachineSubnets, int maxCapacity)
groupLeaderDescription
- virtualMachineSubnets
- The virtual machine subnetmaxCapacity
- The maximum capacityprotected List<String> generateAddressPool(String[] virtualMachineSubnets)
virtualMachineSubnets
- The virtual machine subnetpublic boolean addIpAddress(String ipAddress)
addIpAddress
in interface GroupLeaderRepository
ipAddress
- The ip addresspublic boolean removeIpAddress(String ipAddress)
removeIpAddress
in interface GroupLeaderRepository
ipAddress
- The ip addresspublic String getFreeIpAddress()
getFreeIpAddress
in interface GroupLeaderRepository
public boolean addGroupManagerDescription(org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription groupManager)
addGroupManagerDescription
in interface GroupLeaderRepository
groupManager
- The group manager descriptionpublic ArrayList<org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription> getGroupManagerDescriptions(int numberOfBacklogEntries)
getGroupManagerDescriptions
in interface GroupLeaderRepository
numberOfBacklogEntries
- The number of backlog entriespublic org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription getGroupManagerDescription(String groupManagerId, int numberOfBacklogEntries)
GroupLeaderRepository
getGroupManagerDescription
in interface GroupLeaderRepository
groupManagerId
- The group manager idnumberOfBacklogEntries
- The number of backlog entriespublic void addGroupManagerSummaryInformation(String groupManagerId, org.inria.myriads.snoozecommon.communication.groupmanager.summary.GroupManagerSummaryInformation summary)
addGroupManagerSummaryInformation
in interface GroupLeaderRepository
groupManagerId
- The group manager identifiersummary
- The group manager data transporterpublic boolean dropGroupManager(String groupManagerId)
dropGroupManager
in interface GroupLeaderRepository
groupManagerId
- The group manager identifierpublic ArrayList<org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription> getLocalControllerList()
getLocalControllerList
in interface GroupLeaderRepository
public org.inria.myriads.snoozecommon.communication.localcontroller.AssignedGroupManager getAssignedGroupManager(org.inria.myriads.snoozecommon.communication.NetworkAddress contactInformation)
getAssignedGroupManager
in interface GroupLeaderRepository
contactInformation
- the contact address/port of the local controller.public boolean updateLocation(org.inria.myriads.snoozecommon.communication.virtualcluster.submission.VirtualMachineLocation location)
GroupLeaderRepository
updateLocation
in interface GroupLeaderRepository
location
- location.public org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription getLocalControllerDescription(String localControllerId)
GroupLeaderRepository
getLocalControllerDescription
in interface GroupLeaderRepository
localControllerId
- Localcontroller Id.Copyright © 2013. All Rights Reserved.