2019-11-26 14:55:04 -06:00
|
|
|
/*
|
|
|
|
* Copyright (c) Kuba Szczodrzyński 2019-11-26.
|
|
|
|
*/
|
|
|
|
|
|
|
|
package pl.szczodrzynski.edziennik.config
|
|
|
|
|
2019-11-28 14:45:27 -06:00
|
|
|
import pl.szczodrzynski.edziennik.config.utils.get
|
|
|
|
import pl.szczodrzynski.edziennik.config.utils.set
|
|
|
|
|
2019-11-26 14:55:04 -06:00
|
|
|
class ConfigSync(val config: Config) {
|
|
|
|
private var mSyncEnabled: Boolean? = null
|
|
|
|
var enabled: Boolean
|
|
|
|
get() { mSyncEnabled = mSyncEnabled ?: config.values.get("syncEnabled", true); return mSyncEnabled ?: true }
|
2019-11-28 14:45:27 -06:00
|
|
|
set(value) { config.set("syncEnabled", value); mSyncEnabled = value }
|
2019-11-26 14:55:04 -06:00
|
|
|
|
|
|
|
private var mSyncOnlyWifi: Boolean? = null
|
|
|
|
var onlyWifi: Boolean
|
|
|
|
get() { mSyncOnlyWifi = mSyncOnlyWifi ?: config.values.get("syncOnlyWifi", false); return mSyncOnlyWifi ?: notifyAboutUpdates }
|
2019-11-28 14:45:27 -06:00
|
|
|
set(value) { config.set("syncOnlyWifi", value); mSyncOnlyWifi = value }
|
2019-11-26 14:55:04 -06:00
|
|
|
|
|
|
|
private var mSyncInterval: Int? = null
|
|
|
|
var interval: Int
|
|
|
|
get() { mSyncInterval = mSyncInterval ?: config.values.get("syncInterval", 60*60); return mSyncInterval ?: 60*60 }
|
2019-11-28 14:45:27 -06:00
|
|
|
set(value) { config.set("syncInterval", value); mSyncInterval = value }
|
2019-11-26 14:55:04 -06:00
|
|
|
|
|
|
|
private var mNotifyAboutUpdates: Boolean? = null
|
|
|
|
var notifyAboutUpdates: Boolean
|
|
|
|
get() { mNotifyAboutUpdates = mNotifyAboutUpdates ?: config.values.get("notifyAboutUpdates", true); return mNotifyAboutUpdates ?: true }
|
2019-11-28 14:45:27 -06:00
|
|
|
set(value) { config.set("notifyAboutUpdates", value); mNotifyAboutUpdates = value }
|
2019-11-26 14:55:04 -06:00
|
|
|
}
|