BayernMessenger/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/database/model/EventEntity.kt

40 lines
1.4 KiB
Kotlin
Raw Normal View History

2018-10-12 14:50:54 +00:00
package im.vector.matrix.android.internal.database.model
2018-10-15 17:42:13 +00:00
import io.realm.RealmObject
import io.realm.RealmResults
import io.realm.annotations.LinkingObjects
import io.realm.annotations.PrimaryKey
import java.util.*
2018-10-15 17:42:13 +00:00
internal open class EventEntity(@PrimaryKey var localId: String = UUID.randomUUID().toString(),
var eventId: String = "",
var type: String = "",
var content: String? = null,
var prevContent: String? = null,
var stateKey: String? = null,
var originServerTs: Long? = null,
var sender: String? = null,
var age: Long? = 0,
var redacts: String? = null,
var stateIndex: Int = 0,
var displayIndex: Int = 0,
var isUnlinked: Boolean = false
2018-10-15 17:42:13 +00:00
) : RealmObject() {
2018-11-29 17:35:24 +00:00
enum class LinkFilterMode {
LINKED_ONLY,
UNLINKED_ONLY,
BOTH
}
companion object {
const val DEFAULT_STATE_INDEX = Int.MIN_VALUE
}
2018-10-15 17:42:13 +00:00
@LinkingObjects("events")
val chunk: RealmResults<ChunkEntity>? = null
@LinkingObjects("untimelinedStateEvents")
val room: RealmResults<RoomEntity>? = null
2018-10-12 14:50:54 +00:00
}