|
|
|
|
@ -1,6 +1,7 @@ |
|
|
|
|
package net.pokeranalytics.android.util.csv |
|
|
|
|
|
|
|
|
|
import io.realm.Realm |
|
|
|
|
import io.realm.kotlin.where |
|
|
|
|
import net.pokeranalytics.android.exceptions.PAIllegalStateException |
|
|
|
|
import net.pokeranalytics.android.model.Limit |
|
|
|
|
import net.pokeranalytics.android.model.TableSize |
|
|
|
|
@ -21,15 +22,15 @@ import java.text.SimpleDateFormat |
|
|
|
|
import java.util.* |
|
|
|
|
|
|
|
|
|
abstract class PACSVDescriptor<T : Identifiable>(source: DataSource, |
|
|
|
|
private var isTournament: Boolean?, |
|
|
|
|
vararg elements: CSVField) |
|
|
|
|
private var isTournament: Boolean?, |
|
|
|
|
vararg elements: CSVField) |
|
|
|
|
: DataCSVDescriptor<T>(source, *elements) { |
|
|
|
|
|
|
|
|
|
var noSessionImport: Boolean = false |
|
|
|
|
private var noSessionImport: Boolean = false |
|
|
|
|
|
|
|
|
|
init { |
|
|
|
|
val realm = Realm.getDefaultInstance() |
|
|
|
|
this.noSessionImport = realm.count(Session::class.java) == 0L |
|
|
|
|
this.noSessionImport = realm.count(Session::class.java) == 0L |
|
|
|
|
realm.close() |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -39,13 +40,20 @@ abstract class PACSVDescriptor<T : Identifiable>(source: DataSource, |
|
|
|
|
|
|
|
|
|
private var dateFormat: DateFormat? = null |
|
|
|
|
|
|
|
|
|
private fun newSession(isTournament: Boolean): Session { |
|
|
|
|
val session = Session() |
|
|
|
|
session.result = Result() |
|
|
|
|
session.type = if (isTournament) Session.Type.TOURNAMENT.ordinal else Session.Type.CASH_GAME.ordinal |
|
|
|
|
return session |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Parses a [record] and return an optional Session |
|
|
|
|
*/ |
|
|
|
|
protected fun parseSession(realm: Realm, record: CSVRecord): Session? { |
|
|
|
|
|
|
|
|
|
val isTournament = isTournament ?: false |
|
|
|
|
val session = Session.newInstance(realm, isTournament) |
|
|
|
|
val session = this.newSession(isTournament) // Session.newInstance(realm, isTournament) |
|
|
|
|
|
|
|
|
|
var startDate: Date? = null |
|
|
|
|
var endDate: Date? = null |
|
|
|
|
@ -277,7 +285,6 @@ abstract class PACSVDescriptor<T : Identifiable>(source: DataSource, |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
managedSession.preCompute() |
|
|
|
|
|
|
|
|
|
return managedSession |
|
|
|
|
} else { |
|
|
|
|
Timber.d("Session already exists(count=$count): sd=$startDate, ed=$endDate, net=$net") |
|
|
|
|
|