Refactoring the update of channel information.
This commit is contained in:
@@ -20,11 +20,8 @@ class PublicChatChannel(idHex: String) : Channel(idHex) {
|
|||||||
var info = ChannelCreateEvent.ChannelData(null, null, null)
|
var info = ChannelCreateEvent.ChannelData(null, null, null)
|
||||||
|
|
||||||
fun updateChannelInfo(creator: User, channelInfo: ChannelCreateEvent.ChannelData, updatedAt: Long) {
|
fun updateChannelInfo(creator: User, channelInfo: ChannelCreateEvent.ChannelData, updatedAt: Long) {
|
||||||
this.creator = creator
|
|
||||||
this.info = channelInfo
|
this.info = channelInfo
|
||||||
this.updatedMetadataAt = updatedAt
|
super.updateChannelInfo(creator, updatedAt)
|
||||||
|
|
||||||
live.invalidateData()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun toBestDisplayName(): String {
|
override fun toBestDisplayName(): String {
|
||||||
|
|||||||
@@ -781,7 +781,7 @@ object LocalCache {
|
|||||||
|
|
||||||
fun consume(event: ChannelMetadataEvent) {
|
fun consume(event: ChannelMetadataEvent) {
|
||||||
val channelId = event.channel()
|
val channelId = event.channel()
|
||||||
// Log.d("MT", "New User ${users.size} ${event.contactMetaData.name}")
|
// Log.d("MT", "New PublicChatMetadata ${event.channelInfo()}")
|
||||||
if (channelId.isNullOrBlank()) return
|
if (channelId.isNullOrBlank()) return
|
||||||
|
|
||||||
// new event
|
// new event
|
||||||
@@ -789,10 +789,8 @@ object LocalCache {
|
|||||||
|
|
||||||
val author = getOrCreateUser(event.pubKey)
|
val author = getOrCreateUser(event.pubKey)
|
||||||
if (event.createdAt > oldChannel.updatedMetadataAt) {
|
if (event.createdAt > oldChannel.updatedMetadataAt) {
|
||||||
if (oldChannel.creator == null || oldChannel.creator == author) {
|
if (oldChannel is PublicChatChannel) {
|
||||||
if (oldChannel is PublicChatChannel) {
|
oldChannel.updateChannelInfo(author, event.channelInfo(), event.createdAt)
|
||||||
oldChannel.updateChannelInfo(author, event.channelInfo(), event.createdAt)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Log.d("MT","Relay sent a previous Metadata Event ${oldUser.toBestDisplayName()} ${formattedDateTime(event.createdAt)} > ${formattedDateTime(oldUser.updatedAt)}")
|
// Log.d("MT","Relay sent a previous Metadata Event ${oldUser.toBestDisplayName()} ${formattedDateTime(event.createdAt)} > ${formattedDateTime(oldUser.updatedAt)}")
|
||||||
|
|||||||
Reference in New Issue
Block a user