diff --git a/lib/src/main/java/de/kuschku/libquassel/protocol/primitive/serializer/MessageSerializer.kt b/lib/src/main/java/de/kuschku/libquassel/protocol/primitive/serializer/MessageSerializer.kt index 115533fccd10596263b9b9937a27cb6788f3df5a..3445fb7ae1d9236bb36553e08a90bb7604679b43 100644 --- a/lib/src/main/java/de/kuschku/libquassel/protocol/primitive/serializer/MessageSerializer.kt +++ b/lib/src/main/java/de/kuschku/libquassel/protocol/primitive/serializer/MessageSerializer.kt @@ -29,8 +29,7 @@ import java.nio.ByteBuffer object MessageSerializer : Serializer<Message> { override fun serialize(buffer: ChainedByteBuffer, data: Message, features: QuasselFeatures) { SignedId64Serializer.serialize(buffer, data.messageId, features) - if (features.hasFeature(ExtendedFeature.LongMessageTime) || - features.hasFeature(ExtendedFeature.LongTime)) + if (features.hasFeature(ExtendedFeature.LongTime)) LongSerializer.serialize(buffer, data.time.toEpochMilli(), features) else IntSerializer.serialize(buffer, data.time.epochSecond.toInt(), features) @@ -50,8 +49,7 @@ object MessageSerializer : Serializer<Message> { override fun deserialize(buffer: ByteBuffer, features: QuasselFeatures): Message { return Message( messageId = SignedId64Serializer.deserialize(buffer, features), - time = if (features.hasFeature(ExtendedFeature.LongMessageTime) || - features.hasFeature(ExtendedFeature.LongTime)) + time = if (features.hasFeature(ExtendedFeature.LongTime)) Instant.ofEpochMilli(LongSerializer.deserialize(buffer, features)) else Instant.ofEpochSecond(IntSerializer.deserialize(buffer, features).toLong()), diff --git a/lib/src/main/java/de/kuschku/libquassel/quassel/ExtendedFeature.kt b/lib/src/main/java/de/kuschku/libquassel/quassel/ExtendedFeature.kt index a61f6d2629100f57ef8ebb9ffc51b6a6a44bc355..d6f918de50b68a8cd38fd7c35b506450e1ab2737 100644 --- a/lib/src/main/java/de/kuschku/libquassel/quassel/ExtendedFeature.kt +++ b/lib/src/main/java/de/kuschku/libquassel/quassel/ExtendedFeature.kt @@ -49,13 +49,14 @@ enum class ExtendedFeature { ExtendedFeatures, /** Serialize message time as 64-bit */ LongTime, - LongMessageTime, /** Real Name and Avatar URL in backlog */ RichMessages, /** Backlogmanager supports filtering backlog by messagetype */ BacklogFilterType, /** 64-bit IDs for messages */ - LongMessageId; + LongMessageId, + /** CoreInfo dynamically updated using signals */ + SyncedCoreInfo; companion object { private val map = values().associateBy(ExtendedFeature::name)