org.inria.myriads.snoozenode.database.api.impl.cassandra
public class CassandraRepository extends Object
Modifier and Type | Field and Description |
---|---|
protected static org.slf4j.Logger |
log_
Logger.
|
Constructor and Description |
---|
CassandraRepository(String hosts)
Constructor.
|
CassandraRepository(String hosts,
int ttlGroupManager,
int ttlVirtualMachine)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
protected void |
addAggregatedMonitoringDataCassandra(String localControllerId,
List<AggregatedVirtualMachineData> aggregatedData)
Adds aggregated monitoring data to Cassandra.
|
protected boolean |
addGroupManagerDescriptionCassandra(org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription description,
boolean isGroupLeader,
boolean isAssigned)
Add (serialize) a group manager to cassandra.
|
protected void |
addGroupManagerSummaryInformationCassandra(String groupManagerId,
org.inria.myriads.snoozecommon.communication.groupmanager.summary.GroupManagerSummaryInformation summary)
Add a groupmanager summary information into cassandra.
|
protected boolean |
addLocalControllerDescriptionCassandra(String groupManagerId,
org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription description)
Add (serialize) a local controller to cassandra.
|
protected boolean |
addVirtualMachineCassandra(org.inria.myriads.snoozecommon.communication.virtualcluster.VirtualMachineMetaData virtualMachineMetaData)
Add (serialize) virtual machine to cassandra.
|
protected void |
clear()
Clear to repository.
|
protected boolean |
dropGroupManager(String groupManagerId,
boolean withLocalControllers,
boolean withVirtualMachines)
Drop a group manager from the cassandra cluster.
|
protected void |
fillGroupManagerSummaryInformation(org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription groupManagerDescription,
int numberOfBacklogEntries)
Fills group manager description with summary information.
|
protected void |
fillVirtualMachineMonitoringData(org.inria.myriads.snoozecommon.communication.virtualcluster.VirtualMachineMetaData virtualMachine,
int numberOfMonitoringEntries)
Fills the virtual machine meta data with monitoring datas.
|
protected void |
fillWithLocalControllers(org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription groupManager,
boolean isActiveOnly,
int numberOfMonitoringEntries)
Fill the group manager description with the associated localcontrollers.
|
protected void |
fillWithVirtualMachines(org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription groupManager,
int numberOfMonitoringEntries)
Fills the group manager description with the associated virtual machines.
|
protected void |
fillWithVirtualMachines(org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription localController,
int numberOfMonitoringEntries)
Fills the localcontroller with its virtual machines.
|
protected void |
fillWithVirtualMachines(String groupManagerId,
ArrayList<org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription> localControllers,
int numberOfMonitoringEntries)
Fills the hashmap with virtualmachines.
|
me.prettyprint.hector.api.Cluster |
getCluster() |
protected org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription |
getGroupManagerDescription(me.prettyprint.hector.api.beans.Row<String,String,String> row)
Gets the groupManagerDescription from a row.
|
protected org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription |
getGroupManagerDescriptionCassandra(String groupManagerId,
int numberOfbacklogEntries,
boolean withLocalControllers,
boolean isActiveOnly,
boolean withVirtualMachines,
int numberOfMonitoringEntries)
Gets the groupManagerDescription.
|
protected org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription |
getGroupManagerDescriptionOnly(String groupManagerId,
int numberOfBacklogEntries)
Gets the groupManager description.
|
protected ArrayList<org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription> |
getGroupManagerDescriptionsOnly(String firstGroupManagerId,
int limit,
boolean assignedOnly,
int numberOfBacklogEntries,
List<String> toExclude)
Gets the groupmanager descriptions.
|
me.prettyprint.hector.api.Keyspace |
getKeyspace() |
protected org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription |
getLocalControllerDescription(me.prettyprint.hector.api.beans.Row<String,String,String> row)
Gets local controller from a cassandra row.
|
protected org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription |
getLocalControllerDescriptionCassandra(String localControllerId,
int numberOfHostMonitoringEntries,
boolean withVirtualMachines,
int numberOfMonitoringEntries)
Gets local controller description.
|
protected org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription |
getLocalControllerDescriptionOnly(String localControllerId,
int numberOfMonitoringEntries)
Gets the localcontroller only (without virtual machines).
|
protected ArrayList<org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription> |
getLocalControllerDescriptionsCassandra(String groupManagerId,
int numberOfMonitoringEntries,
boolean isActiveOnly,
boolean withVirtualMachines)
Gets the localcontroller descriptions from the cassandra cluster.
|
protected ArrayList<org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription> |
getLocalControllerDescriptionsOnly(String groupManagerId,
String localControllerStart,
int limit,
int numberOfMonitoringEntries,
boolean isActiveOnly,
boolean onlyAssigned)
Returns the local controller descriptions of a given group manager.
|
protected String |
getLocalControllerId(org.inria.myriads.snoozecommon.communication.NetworkAddress contactInformation)
Gets the local controller id from the mapping column family.
|
protected org.inria.myriads.snoozecommon.communication.virtualcluster.VirtualMachineMetaData |
getVirtualMachineDescriptionOnly(me.prettyprint.hector.api.beans.Row<String,String,String> row)
Gets the virtual machine meta data from a cassandra row.
|
protected org.inria.myriads.snoozecommon.communication.virtualcluster.VirtualMachineMetaData |
getVirtualMachineDescriptionOnly(String virtualMachineId,
int numberOfMonitoringEntries)
Gets the virtual machine descriptions.
|
protected ArrayList<org.inria.myriads.snoozecommon.communication.virtualcluster.VirtualMachineMetaData> |
getVirtualMachineDescriptionsOnly(String groupManagerId,
String localControllerId,
String virtualMachineStart,
int limit,
int numberOfMonitoringEntries,
boolean onlyAssigned)
Gets virtual machine metadatas from cassandra cluster.
|
protected org.inria.myriads.snoozecommon.communication.virtualcluster.VirtualMachineMetaData |
getVirtualMachineMetaDataCassandra(String virtualMachineId,
int numberOfMonitoringEntries)
Get a virtual machine.
|
public CassandraRepository(String hosts, int ttlGroupManager, int ttlVirtualMachine)
hosts
- List of hosts to connect to.ttlGroupManager
- ttl for groupManager monitoring.ttlVirtualMachine
- ttl for virtualMachine monitoring.public CassandraRepository(String hosts)
hosts
- List of hosts to connect to.protected org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription getGroupManagerDescriptionOnly(String groupManagerId, int numberOfBacklogEntries)
groupManagerId
- The groupmanager id.numberOfBacklogEntries
- The number of wanted monitoring values.protected org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription getGroupManagerDescriptionCassandra(String groupManagerId, int numberOfbacklogEntries, boolean withLocalControllers, boolean isActiveOnly, boolean withVirtualMachines, int numberOfMonitoringEntries)
groupManagerId
- The group manager id to retrieve.numberOfbacklogEntries
- The number of wanted monitoring values.withLocalControllers
- True if it must fill with associated localcontrollers.isActiveOnly
- True if wanted only active local controllerswithVirtualMachines
- True if it must fill with associated virtual machines.numberOfMonitoringEntries
- Number of monitoring entries for the virtualmachinesprotected org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription getLocalControllerDescriptionCassandra(String localControllerId, int numberOfHostMonitoringEntries, boolean withVirtualMachines, int numberOfMonitoringEntries)
localControllerId
- The local controller description.numberOfHostMonitoringEntries
- number of monitoring entries (host).withVirtualMachines
- with virtualmachines.numberOfMonitoringEntries
- number of monitoring entries (vms)protected org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription getLocalControllerDescriptionOnly(String localControllerId, int numberOfMonitoringEntries)
localControllerId
- The local controller Id.numberOfMonitoringEntries
- Number of monitoring entries.protected org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription getLocalControllerDescription(me.prettyprint.hector.api.beans.Row<String,String,String> row)
row
- the cassandra rowprotected void fillGroupManagerSummaryInformation(org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription groupManagerDescription, int numberOfBacklogEntries)
groupManagerDescription
- The group manager description to fill.numberOfBacklogEntries
- The number of monitoring entries to use.protected org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription getGroupManagerDescription(me.prettyprint.hector.api.beans.Row<String,String,String> row)
row
- The cassandra row.protected void fillWithLocalControllers(org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription groupManager, boolean isActiveOnly, int numberOfMonitoringEntries)
groupManager
- The group manager description to fillisActiveOnly
- True if only active requested.numberOfMonitoringEntries
- The number of monitoring entriesprotected void fillWithVirtualMachines(String groupManagerId, ArrayList<org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription> localControllers, int numberOfMonitoringEntries)
groupManagerId
- The group manager id.localControllers
- The localcontrollers.numberOfMonitoringEntries
- The number of monitoring entries.protected void fillWithVirtualMachines(org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription groupManager, int numberOfMonitoringEntries)
groupManager
- GroupManager description to fill.numberOfMonitoringEntries
- Number of Monitoring entries.protected void fillWithVirtualMachines(org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription localController, int numberOfMonitoringEntries)
localController
- The localcontroller description.numberOfMonitoringEntries
- Number of monitoring entries.protected ArrayList<org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription> getLocalControllerDescriptionsCassandra(String groupManagerId, int numberOfMonitoringEntries, boolean isActiveOnly, boolean withVirtualMachines)
groupManagerId
- The groupmanager id.numberOfMonitoringEntries
- The number of monitoring entries.isActiveOnly
- True if only active requested.withVirtualMachines
- True if localcontrollers should be filled with its virtualmachinesprotected ArrayList<org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription> getLocalControllerDescriptionsOnly(String groupManagerId, String localControllerStart, int limit, int numberOfMonitoringEntries, boolean isActiveOnly, boolean onlyAssigned)
groupManagerId
- The group manager IdlocalControllerStart
- The local Controller start key (for range)limit
- The total number to fetchnumberOfMonitoringEntries
- Number of monitoring entries to fecthisActiveOnly
- Only gets ACTIVE localControlleronlyAssigned
- Only gets Assigned localcontrollerprotected void fillVirtualMachineMonitoringData(org.inria.myriads.snoozecommon.communication.virtualcluster.VirtualMachineMetaData virtualMachine, int numberOfMonitoringEntries)
virtualMachine
- The virtual machine meta data to fillnumberOfMonitoringEntries
- the number of monitoring entries to fecth.protected org.inria.myriads.snoozecommon.communication.virtualcluster.VirtualMachineMetaData getVirtualMachineDescriptionOnly(me.prettyprint.hector.api.beans.Row<String,String,String> row)
row
- cassandra row.protected boolean dropGroupManager(String groupManagerId, boolean withLocalControllers, boolean withVirtualMachines)
groupManagerId
- The group manager id to dropwithLocalControllers
- True if assigned LocalController must be droppedwithVirtualMachines
- True if assigned virtualMachines must be droppedprotected boolean addVirtualMachineCassandra(org.inria.myriads.snoozecommon.communication.virtualcluster.VirtualMachineMetaData virtualMachineMetaData)
virtualMachineMetaData
- The virtual machine meta data to serialize.protected void addAggregatedMonitoringDataCassandra(String localControllerId, List<AggregatedVirtualMachineData> aggregatedData)
localControllerId
- The localControllerId.aggregatedData
- The aggregated datas.protected boolean addLocalControllerDescriptionCassandra(String groupManagerId, org.inria.myriads.snoozecommon.communication.localcontroller.LocalControllerDescription description)
groupManagerId
- The group manager Id.description
- The local controller description.protected boolean addGroupManagerDescriptionCassandra(org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription description, boolean isGroupLeader, boolean isAssigned)
description
- The group manager description.isGroupLeader
- True iff it is the group leader.isAssigned
- True iff it is assignedprotected void addGroupManagerSummaryInformationCassandra(String groupManagerId, org.inria.myriads.snoozecommon.communication.groupmanager.summary.GroupManagerSummaryInformation summary)
groupManagerId
- The groupManager Id.summary
- The summary to add.protected org.inria.myriads.snoozecommon.communication.virtualcluster.VirtualMachineMetaData getVirtualMachineMetaDataCassandra(String virtualMachineId, int numberOfMonitoringEntries)
virtualMachineId
- The virtual machine id.numberOfMonitoringEntries
- The number of monitoring entries to fetch.protected ArrayList<org.inria.myriads.snoozecommon.communication.groupmanager.GroupManagerDescription> getGroupManagerDescriptionsOnly(String firstGroupManagerId, int limit, boolean assignedOnly, int numberOfBacklogEntries, List<String> toExclude)
firstGroupManagerId
- First groupmanager to fetch.limit
- Limit.assignedOnly
- True will return assigned group manager only.numberOfBacklogEntries
- Number of Back log entries to fetch.toExclude
- id to exclude.protected org.inria.myriads.snoozecommon.communication.virtualcluster.VirtualMachineMetaData getVirtualMachineDescriptionOnly(String virtualMachineId, int numberOfMonitoringEntries)
virtualMachineId
- The virtualMachine Id.numberOfMonitoringEntries
- The number of monitoring entries to fecth.protected ArrayList<org.inria.myriads.snoozecommon.communication.virtualcluster.VirtualMachineMetaData> getVirtualMachineDescriptionsOnly(String groupManagerId, String localControllerId, String virtualMachineStart, int limit, int numberOfMonitoringEntries, boolean onlyAssigned)
groupManagerId
- The groupmanager id.localControllerId
- The localcontroller id.virtualMachineStart
- The first virtual machine to fecthlimit
- Limit.numberOfMonitoringEntries
- Number Of monitoring entries to fetch.onlyAssigned
- True if only assigned requested.protected String getLocalControllerId(org.inria.myriads.snoozecommon.communication.NetworkAddress contactInformation)
contactInformation
- the network addressprotected void clear()
public me.prettyprint.hector.api.Keyspace getKeyspace()
public me.prettyprint.hector.api.Cluster getCluster()
Copyright © 2013. All Rights Reserved.