refactor(model): Docs/indent/companion

parent 14592d03
...@@ -20,9 +20,13 @@ package fr.plnech.lifelogger.model ...@@ -20,9 +20,13 @@ package fr.plnech.lifelogger.model
import java.util.* import java.util.*
import kotlin.collections.HashMap import kotlin.collections.HashMap
private const val NONE: Int = Int.MIN_VALUE /**
* An event tracked with some associated metadata.
data class DataPoint(val date: Date = Date(), private val metadata: HashMap<String, Any> = HashMap()) { */
data class DataPoint(
val date: Date = Date(),
private val metadata: HashMap<String, Any> = HashMap()
) {
constructor(name: String, count: Int = NONE) : this() { constructor(name: String, count: Int = NONE) : this() {
metadata["name"] = name metadata["name"] = name
...@@ -35,11 +39,15 @@ data class DataPoint(val date: Date = Date(), private val metadata: HashMap<Stri ...@@ -35,11 +39,15 @@ data class DataPoint(val date: Date = Date(), private val metadata: HashMap<Stri
private val count: Int? private val count: Int?
get() = metadata["count"].let { get() = metadata["count"].let {
if (it == NONE) null else it if (it == NONE) null else it
} as Int? } as Int?
override fun toString(): String { override fun toString(): String {
val b = StringBuilder(name) val b = StringBuilder(name)
count?.let { b.append("($count)")} count?.let { b.append("($count)") }
return b.toString() return b.toString()
} }
companion object {
const val NONE: Int = Int.MIN_VALUE
}
} }
\ No newline at end of file
...@@ -17,7 +17,13 @@ ...@@ -17,7 +17,13 @@
package fr.plnech.lifelogger.model 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) { fun addPoint(dataPoint: DataPoint) {
dataPoints.add(dataPoint) dataPoints.add(dataPoint)
...@@ -25,7 +31,7 @@ class Log(val name: String, private val dataPoints : ArrayList<DataPoint> = Arra ...@@ -25,7 +31,7 @@ class Log(val name: String, private val dataPoints : ArrayList<DataPoint> = Arra
override fun toString(): String { override fun toString(): String {
val b = StringBuilder("$name: ") val b = StringBuilder("$name: ")
dataPoints.forEach({b.append(it).append(" | ")}) dataPoints.forEach({ b.append(it).append(" | ") })
return b.removeSuffix("| ").toString() 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