38 lines
1.2 KiB
Kotlin
38 lines
1.2 KiB
Kotlin
|
package org.schabi.newpipe.database.feed.model
|
||
|
|
||
|
import androidx.room.ColumnInfo
|
||
|
import androidx.room.Entity
|
||
|
import androidx.room.ForeignKey
|
||
|
import androidx.room.PrimaryKey
|
||
|
import org.schabi.newpipe.database.feed.model.FeedLastUpdatedEntity.Companion.FEED_LAST_UPDATED_TABLE
|
||
|
import org.schabi.newpipe.database.feed.model.FeedLastUpdatedEntity.Companion.SUBSCRIPTION_ID
|
||
|
import org.schabi.newpipe.database.subscription.SubscriptionEntity
|
||
|
import java.time.OffsetDateTime
|
||
|
|
||
|
@Entity(
|
||
|
tableName = FEED_LAST_UPDATED_TABLE,
|
||
|
foreignKeys = [
|
||
|
ForeignKey(
|
||
|
entity = SubscriptionEntity::class,
|
||
|
parentColumns = [SubscriptionEntity.SUBSCRIPTION_UID],
|
||
|
childColumns = [SUBSCRIPTION_ID],
|
||
|
onDelete = ForeignKey.CASCADE, onUpdate = ForeignKey.CASCADE, deferred = true
|
||
|
)
|
||
|
]
|
||
|
)
|
||
|
data class FeedLastUpdatedEntity(
|
||
|
@PrimaryKey
|
||
|
@ColumnInfo(name = SUBSCRIPTION_ID)
|
||
|
var subscriptionId: Long,
|
||
|
|
||
|
@ColumnInfo(name = LAST_UPDATED)
|
||
|
var lastUpdated: OffsetDateTime? = null
|
||
|
) {
|
||
|
companion object {
|
||
|
const val FEED_LAST_UPDATED_TABLE = "feed_last_updated"
|
||
|
|
||
|
const val SUBSCRIPTION_ID = "subscription_id"
|
||
|
const val LAST_UPDATED = "last_updated"
|
||
|
}
|
||
|
}
|