igor.wojda
09/22/2021, 1:36 PMsealed interface WebSocketMessage {
data class Hello(data: String):WebSocketMessage
data class Bye(data: String):WebSocketMessage
}
enum class WebSocketMessageType(val type: String, val kotlinClass: KClass<out WebSocketMessage>) {
HELLO("hello", WebSocketMessage.Hello::class),
BYE("bye", WebSocketMessage.Bye::class),
}
// get message
val webSocketMessageType = enumValues<WebSocketMessageType>().firstOrNull { it == type }
...
I wonder if there is a way to model this using one entity, so adding the new messages types require change in a single place 🤔salah
09/22/2021, 1:41 PMTomasz Krakowiak
09/22/2021, 2:35 PM