diff options
author | Allan Wang <me@allanwang.ca> | 2017-06-14 23:39:05 -0700 |
---|---|---|
committer | Allan Wang <me@allanwang.ca> | 2017-06-14 23:39:05 -0700 |
commit | 610c37698ab93b8d51efcaec9f721292cacfd854 (patch) | |
tree | 2bb97be0f43aa5c5d64237e61dc628938e7350b5 /app/src/main/kotlin/com/pitchedapps/frost/dbflow | |
parent | fbbc92e4c98a30e107fb2a63887f8b6d20bffabb (diff) | |
download | frost-610c37698ab93b8d51efcaec9f721292cacfd854.tar.gz frost-610c37698ab93b8d51efcaec9f721292cacfd854.tar.bz2 frost-610c37698ab93b8d51efcaec9f721292cacfd854.zip |
Create notification service framework
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/dbflow')
-rw-r--r-- | app/src/main/kotlin/com/pitchedapps/frost/dbflow/NotificationDb.kt | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/dbflow/NotificationDb.kt b/app/src/main/kotlin/com/pitchedapps/frost/dbflow/NotificationDb.kt new file mode 100644 index 00000000..e71500fc --- /dev/null +++ b/app/src/main/kotlin/com/pitchedapps/frost/dbflow/NotificationDb.kt @@ -0,0 +1,31 @@ +package com.pitchedapps.frost.dbflow + +import com.pitchedapps.frost.utils.L +import com.raizlabs.android.dbflow.annotation.ConflictAction +import com.raizlabs.android.dbflow.annotation.Database +import com.raizlabs.android.dbflow.annotation.PrimaryKey +import com.raizlabs.android.dbflow.annotation.Table +import com.raizlabs.android.dbflow.kotlinextensions.* +import com.raizlabs.android.dbflow.structure.BaseModel + +/** + * Created by Allan Wang on 2017-05-30. + */ + +@Database(name = NotificationDb.NAME, version = NotificationDb.VERSION) +object NotificationDb { + const val NAME = "Notifications" + const val VERSION = 1 +} + +@Table(database = NotificationDb::class, allFields = true, primaryKeyConflict = ConflictAction.REPLACE) +data class NotificationModel(@PrimaryKey var id: Long = -1L, var epoch: Long = -1L) : BaseModel() + +fun lastNotificationTime(id: Long): Long = (select from NotificationModel::class where (NotificationModel_Table.id eq id)).querySingle()?.epoch ?: -1L + +fun saveNotificationTime(notificationModel: NotificationModel, callback: (() -> Unit)? = null) { + notificationModel.async save { + L.d("Fb notification $notificationModel saved") + callback?.invoke() + } +}
\ No newline at end of file |