package gr.grnet.aquarium.simulation
import java.util.Date
-import gr.grnet.aquarium.store.RecordID
import math.Ordering
-import gr.grnet.aquarium.event.ResourceEvent
+import gr.grnet.aquarium.event.model.resource.ResourceEventModel
/**
* A simulator for a user.
* @author Christos KK Loverdos <loverdos@gmail.com>
*/
-case class UserSim(userId: String, userCreationDate: Date, aquarium: AquariumSim) { userSelf ⇒
+case class UserSim(userID: String, userCreationDate: Date, aquarium: AquariumSim) { userSelf ⇒
private[this]
def resourceEventStore = aquarium.resourceEventStore
private[simulation]
- def _addResourceEvent(resourceEvent: ResourceEvent): RecordID = {
- resourceEventStore.storeResourceEvent(resourceEvent)
+ def _addResourceEvent(resourceEvent: ResourceEventModel): ResourceEventModel = {
+ resourceEventStore.insertResourceEvent(resourceEvent)
}
- def myResourceEvents: List[ResourceEvent] = {
- resourceEventStore.findResourceEventsByUserId(userId)(None)
+ def myResourceEvents: List[ResourceEventModel] = {
+ resourceEventStore.findResourceEventsByUserId(userID)(None)
}
- def myResourceEventsByReceivedDate: List[ResourceEvent] = {
- myResourceEvents.sorted(new Ordering[ResourceEvent] {
- def compare(x: ResourceEvent, y: ResourceEvent) = {
+ def myResourceEventsByReceivedDate: List[ResourceEventModel] = {
+ myResourceEvents.sorted(new Ordering[ResourceEventModel] {
+ def compare(x: ResourceEventModel, y: ResourceEventModel) = {
if(x.receivedMillis < y.receivedMillis)
-1
else if(x.receivedMillis == y.receivedMillis)
})
}
- def myResourceEventsByOccurredDate: List[ResourceEvent] = {
- myResourceEvents.sorted(new Ordering[ResourceEvent] {
- def compare(x: ResourceEvent, y: ResourceEvent) = {
+ def myResourceEventsByOccurredDate: List[ResourceEventModel] = {
+ myResourceEvents.sorted(new Ordering[ResourceEventModel] {
+ def compare(x: ResourceEventModel, y: ResourceEventModel) = {
if(x.occurredMillis < y.occurredMillis)
-1
else if(x.occurredMillis == y.occurredMillis)