session-android/libsession/src/main/java/org/session/libsession/messaging/messages/Message.kt

26 lines
825 B
Kotlin
Raw Normal View History

package org.session.libsession.messaging.messages
2020-11-25 02:06:41 +01:00
import org.session.libsignal.service.internal.push.SignalServiceProtos
abstract class Message {
2021-01-20 06:29:52 +01:00
var id: Long? = null
2021-01-11 23:58:38 +01:00
var threadID: Long? = null
var sentTimestamp: Long? = null
var receivedTimestamp: Long? = null
var recipient: String? = null
var sender: String? = null
var groupPublicKey: String? = null
var openGroupServerMessageID: Long? = null
open val ttl: Long = 2 * 24 * 60 * 60 * 1000
2020-12-02 06:21:38 +01:00
// validation
open fun isValid(): Boolean {
sentTimestamp = if (sentTimestamp!! > 0) sentTimestamp else return false
receivedTimestamp = if (receivedTimestamp!! > 0) receivedTimestamp else return false
return sender != null && recipient != null
}
abstract fun toProto(): SignalServiceProtos.Content?
2020-11-25 02:06:41 +01:00
}