2018-10-22 17:36:29 +00:00
|
|
|
package im.vector.matrix.android.api.session.events.model
|
|
|
|
|
2018-10-31 12:03:36 +00:00
|
|
|
import im.vector.matrix.android.api.session.room.model.RoomMember
|
|
|
|
|
2018-12-18 11:13:46 +00:00
|
|
|
data class EnrichedEvent(
|
|
|
|
val root: Event,
|
|
|
|
val localId: String,
|
|
|
|
val roomMember: RoomMember?
|
|
|
|
) {
|
2018-10-22 17:36:29 +00:00
|
|
|
|
2018-10-31 10:22:42 +00:00
|
|
|
val metadata = HashMap<String, Any>()
|
2018-10-22 17:36:29 +00:00
|
|
|
|
2018-11-14 18:32:42 +00:00
|
|
|
fun enrichWith(key: String?, data: Any?) {
|
|
|
|
if (key == null || data == null) {
|
2018-10-22 17:36:29 +00:00
|
|
|
return
|
|
|
|
}
|
2018-10-31 10:22:42 +00:00
|
|
|
if (!metadata.containsKey(key)) {
|
|
|
|
metadata[key] = data
|
|
|
|
}
|
2018-10-22 17:36:29 +00:00
|
|
|
}
|
|
|
|
|
2018-10-31 10:22:42 +00:00
|
|
|
inline fun <reified T> getMetadata(key: String): T? {
|
|
|
|
return metadata[key] as T?
|
2018-10-22 17:36:29 +00:00
|
|
|
}
|
2018-10-31 12:03:36 +00:00
|
|
|
}
|