refactor(model): Docs/indent/companion

parent 14592d03
......@@ -20,9 +20,13 @@ package fr.plnech.lifelogger.model
import java.util.*
import kotlin.collections.HashMap
private const val NONE: Int = Int.MIN_VALUE
data class DataPoint(val date: Date = Date(), private val metadata: HashMap<String, Any> = HashMap()) {
/**
* An event tracked with some associated metadata.
*/
data class DataPoint(
val date: Date = Date(),
private val metadata: HashMap<String, Any> = HashMap()
) {
constructor(name: String, count: Int = NONE) : this() {
metadata["name"] = name
......@@ -35,11 +39,15 @@ data class DataPoint(val date: Date = Date(), private val metadata: HashMap<Stri
private val count: Int?
get() = metadata["count"].let {
if (it == NONE) null else it
} as Int?
} as Int?
override fun toString(): String {
val b = StringBuilder(name)
count?.let { b.append("($count)")}
count?.let { b.append("($count)") }
return b.toString()
}
companion object {
const val NONE: Int = Int.MIN_VALUE
}
}
\ No newline at end of file
......@@ -17,7 +17,13 @@
package fr.plnech.lifelogger.model
class Log(val name: String, private val dataPoints : ArrayList<DataPoint> = ArrayList()) {
/**
* A Log of events to track.
*/
class Log(
val name: String,
private val dataPoints: ArrayList<DataPoint> = ArrayList()
) {
fun addPoint(dataPoint: DataPoint) {
dataPoints.add(dataPoint)
......@@ -25,7 +31,7 @@ class Log(val name: String, private val dataPoints : ArrayList<DataPoint> = Arra
override fun toString(): String {
val b = StringBuilder("$name: ")
dataPoints.forEach({b.append(it).append(" | ")})
dataPoints.forEach({ b.append(it).append(" | ") })
return b.removeSuffix("| ").toString()
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment