Skip to content
Snippets Groups Projects
Commit bb34a8ee authored by Kamal Bramwell's avatar Kamal Bramwell
Browse files

WIP: Updated Group model object, added GroupMembersList model class

parent 9973ba1c
No related branches found
No related tags found
No related merge requests found
package io.elixxir.xxclient.group package io.elixxir.xxclient.group
import io.elixxir.xxclient.models.BindingsModel.Companion.decodeArray import io.elixxir.xxclient.models.BindingsModel.Companion.decode
import io.elixxir.xxclient.models.GroupMember import io.elixxir.xxclient.models.GroupMembersList
import bindings.Group as GroupBindings import bindings.Group as GroupBindings
interface Group { interface Group {
...@@ -9,7 +9,7 @@ interface Group { ...@@ -9,7 +9,7 @@ interface Group {
val createdNano: Long val createdNano: Long
val id: ByteArray val id: ByteArray
val initMessage: ByteArray val initMessage: ByteArray
val membership: List<GroupMember> val membership: GroupMembersList
val name: ByteArray val name: ByteArray
val serialize: ByteArray val serialize: ByteArray
} }
...@@ -25,11 +25,10 @@ open class GroupAdapter( ...@@ -25,11 +25,10 @@ open class GroupAdapter(
get() = group.id get() = group.id
override val initMessage: ByteArray override val initMessage: ByteArray
get() = group.initMessage get() = group.initMessage
override val membership: List<GroupMember> override val membership: GroupMembersList
get() = decodeArray(group.membership) get() = decode(group.membership) ?: GroupMembersList(listOf())
override val name: ByteArray override val name: ByteArray
get() = group.name get() = group.name
override val serialize: ByteArray override val serialize: ByteArray by lazy { group.serialize() }
get() = group.serialize()
} }
package io.elixxir.xxclient.models package io.elixxir.xxclient.models
import com.google.gson.annotations.SerializedName
data class GroupMembersList(
val members: List<GroupMember>
) : BindingsModel
data class GroupMember( data class GroupMember(
@SerializedName("ID")
val id: ByteArray, val id: ByteArray,
@SerializedName("DHKey")
val dhKey: DHKey val dhKey: DHKey
) : BindingsModel ) : BindingsModel {
data class DHKey( data class DHKey(
@SerializedName("Value")
val value: String, val value: String,
@SerializedName("Fingerprint")
val fingerprint: Int val fingerprint: Int
) : BindingsModel ) : BindingsModel
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment