parent
f419fa9468
commit
ceaff5b02c
@ -1,5 +1,33 @@ |
|||||||
package net.pokeranalytics.android.model.filter |
package net.pokeranalytics.android.model.filter |
||||||
|
|
||||||
|
import io.realm.Realm |
||||||
|
import io.realm.RealmObject |
||||||
|
import io.realm.RealmQuery |
||||||
|
import net.pokeranalytics.android.model.realm.Session |
||||||
|
|
||||||
enum class FilterComponent { |
enum class FilterComponent { |
||||||
|
|
||||||
} |
} |
||||||
|
|
||||||
|
enum class SessionFilterable(var fieldName:String? = null) : Filterable { |
||||||
|
LIVE("bankroll.live"), |
||||||
|
CASH("type"), |
||||||
|
ONLINE, |
||||||
|
TOURNAMENT |
||||||
|
; |
||||||
|
|
||||||
|
override fun filter(realm: Realm): RealmQuery<*> { |
||||||
|
return when (this) { |
||||||
|
LIVE -> realm.where(this.relatedEntity).equalTo(this.fieldName, true) |
||||||
|
CASH -> realm.where(this.relatedEntity).equalTo(this.fieldName, Session.Type.CASH_GAME.ordinal) |
||||||
|
ONLINE -> LIVE.filter(realm).not() |
||||||
|
TOURNAMENT -> CASH.filter(realm).not() |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
override val relatedEntity: Class<out RealmObject> |
||||||
|
get() { |
||||||
|
return Session::class.java |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
Loading…
Reference in new issue