* @author Christos KK Loverdos <loverdos@gmail.com>
*/
-abstract class AquariumEvent(val id: String, val timestamp: Long)
+abstract class AquariumEvent(val id: String, val occurredMillis: Long)
extends JsonSupport with XmlSupport with Loggable {
def validate: Boolean
userId: String,
clientId: String,
resource: String,
- override val timestamp: Long,
+ override val occurredMillis: Long,
eventVersion: String,
value: Float,
var aqTimestamp: Long = 0,
details: Map[String, String]
-) extends AquariumEvent(id, timestamp) {
+) extends AquariumEvent(id, occurredMillis) {
def validate() : Boolean = {
*/
case class UserEvent(
override val id: String,
- override val timestamp: Long,
+ override val occurredMillis: Long,
var aqTimestamp: Long = 0,
userId: String,
eventVersion: Short,
idp: String,
tenant: String,
roles: Array[String]
- ) extends AquariumEvent(id, timestamp) {
+ ) extends AquariumEvent(id, occurredMillis) {
assert(eventType == 1 || eventType == 2)
assert(state.equalsIgnoreCase("ACTIVE") ||
/**
*
* @author Georgios Gousios <gousiosg@gmail.com>
+ * @author Christos KK Loverdos <loverdos@gmail.com>
*/
case class WalletEntry(override val id: String,
- override val timestamp: Long,
- related: Array[String],
+ override val occurredMillis: Long,
+ sourceEventIDs: Array[String], // The events that triggered this WalletEntry
value: Float,
reason: String,
userId: String,
finalized: Boolean)
- extends AquariumEvent(id, timestamp) {
+ extends AquariumEvent(id, occurredMillis) {
- assert(timestamp > 0)
+ assert(occurredMillis > 0)
assert(value > 0F)
assert(!userId.isEmpty)
}
private[this] def _sortByTimestampAsc[A <: AquariumEvent](one: A, two: A): Boolean = {
- if (one.timestamp > two.timestamp) false
- else if (one.timestamp < two.timestamp) true
+ if (one.occurredMillis > two.occurredMillis) false
+ else if (one.occurredMillis < two.occurredMillis) true
else true
}
private[this] def _sortByTimestampDesc[A <: AquariumEvent](one: A, two: A): Boolean = {
- if (one.timestamp < two.timestamp) false
- else if (one.timestamp > two.timestamp) true
+ if (one.occurredMillis < two.occurredMillis) false
+ else if (one.occurredMillis > two.occurredMillis) true
else true
}