Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- fun main(args: Array<String>) {
- assert(Prefs2.lastLogin == "")
- assert(Prefs2.updateDate == 0L)
- Prefs2.lastLogin = "some login"
- Prefs2.updateDate = 12345L
- assert(Prefs2.lastLogin == "some login")
- assert(Prefs2.updateDate == 12345L)
- }
- val preferenceImitator2 = mutableMapOf<String, Any>()
- object Prefs2 {
- private const val UPDATE_DATE_KEY = "update_date"
- private const val UPDATE_DATE_DEFAULT = 0L
- private const val LAST_LOGIN_KEY = "Last_login"
- private const val LAST_LOGIN_DEFAULT = ""
- var updateDate: Long
- get() {
- val temp = preferenceImitator2.getLong(UPDATE_DATE_KEY, UPDATE_DATE_DEFAULT)
- println("Get value '$temp' with key '$UPDATE_DATE_KEY'")
- return temp
- }
- set(value) {
- preferenceImitator2.putLong(UPDATE_DATE_KEY, value)
- println("Set value '$value' with key '$UPDATE_DATE_KEY'")
- }
- var lastLogin: String
- get() {
- val temp = preferenceImitator2.getString(LAST_LOGIN_KEY, LAST_LOGIN_DEFAULT)
- println("Get value '$temp' with key '$LAST_LOGIN_KEY'")
- return temp
- }
- set(value) {
- preferenceImitator2.putString(LAST_LOGIN_KEY, value)
- println("Set value '$value' with key '$LAST_LOGIN_KEY'")
- }
- private fun Map<String, Any>.getLong(key: String, default: Long) = this[key] as? Long ?: default
- private fun MutableMap<String, Any>.putLong(key: String, value: Long) { this[key] = value as Any }
- private fun Map<String, Any>.getString(key: String, default: String) = this[key] as? String ?: default
- private fun MutableMap<String, Any>.putString(key: String, value: String) { this[key] = value as Any }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement