Adds Poker Analytics CSV descriptor

csv
Laurent 6 years ago
parent 07e61e9839
commit 6366c6194c
  1. 1
      app/src/main/java/net/pokeranalytics/android/util/csv/CSVDescriptor.kt
  2. 26
      app/src/main/java/net/pokeranalytics/android/util/csv/ProductCSVDescriptors.kt
  3. 17
      app/src/main/java/net/pokeranalytics/android/util/csv/SessionField.kt

@ -14,6 +14,7 @@ import timber.log.Timber
* The various sources of CSV
*/
enum class DataSource {
POKER_ANALYTICS,
POKER_INCOME,
POKER_BANKROLL_TRACKER,
RUNGOOD

@ -62,6 +62,32 @@ class ProductCSVDescriptors {
SessionField.TableSize("tablesize")
)
val iOSPokerAnalytics: CSVDescriptor = SessionCSVDescriptor(
DataSource.POKER_ANALYTICS,
true,
SessionField.Start("Start date", dateFormat = "MM/dd/yy HH:mm"),
SessionField.End("End date", dateFormat = "MM/dd/yy HH:mm"),
SessionField.SessionType("Type"),
SessionField.Stakes("Stakes"),
SessionField.Game("Game"),
SessionField.Live("Live/Room"),
SessionField.Location("Location"),
SessionField.NumberOfTables("Number of tables"),
SessionField.TableSize("Table size"),
SessionField.Bankroll("Bankroll"),
SessionField.CurrencyCode("Currency"),
SessionField.CurrencyRate("Rate"),
SessionField.Comment("Comment"),
SessionField.Buyin("Buy-in"),
SessionField.CashedOut("Net result"),
SessionField.Break("breakminutes"),
SessionField.LimitType("limit"),
SessionField.Tips("expensesfromstack"),
SessionField.TournamentNumberOfPlayers("player"),
SessionField.TournamentPosition("place")
)
val runGoodTournaments: CSVDescriptor = SessionCSVDescriptor(
DataSource.RUNGOOD,
true,

@ -16,7 +16,7 @@ sealed class MappedCustomCVSField {
override var header: String,
override var callback: ((String) -> CustomFieldEntry?)? = null,
override var customField: CustomField) : CustomEntryCSVField
}
sealed class TransactionField {
@ -123,9 +123,16 @@ sealed class SessionField {
override val numberFormat: String? = null
) : NumberCSVField
data class NumberOfTables(
override var header: String,
override var callback: ((String) -> Double?)? = null,
override val numberFormat: String? = null
) : NumberCSVField
data class Blind(override var header: String, override var callback: ((String) -> Pair<Double, Double>?)? = null) :
BlindCSVField
data class Stakes(override var header: String) : CSVField
data class Game(override var header: String) : CSVField
data class Location(override var header: String) : CSVField
data class LocationType(override var header: String) : CSVField
@ -138,6 +145,14 @@ sealed class SessionField {
data class TournamentName(override var header: String) : CSVField
data class TournamentType(override var header: String) : CSVField
data class Live(override var header: String,
override var callback: ((String) -> Boolean?)? = null) : TypedCSVField<Boolean> {
override fun parse(value: String): Boolean? {
return true
}
}
data class CurrencyRate(
override var header: String,
override var callback: ((String) -> Double?)? = null,

Loading…
Cancel
Save