From 7384642a6dd93f96b88b95635dcdc3e7c82553f4 Mon Sep 17 00:00:00 2001 From: observer Date: Sat, 12 Sep 2026 20:20:31 +0100 Subject: [PATCH] Add numerics to ServerMessages --- .../ferretirc/net/messages/ServerMessage.kt | 22 ++++++++++++++----- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/src/main/kotlin/com/shr4pnel/ferretirc/net/messages/ServerMessage.kt b/src/main/kotlin/com/shr4pnel/ferretirc/net/messages/ServerMessage.kt index e224b10..bad98e2 100644 --- a/src/main/kotlin/com/shr4pnel/ferretirc/net/messages/ServerMessage.kt +++ b/src/main/kotlin/com/shr4pnel/ferretirc/net/messages/ServerMessage.kt @@ -1,10 +1,20 @@ package com.shr4pnel.ferretirc.net.messages +/** + * Representation of responses from the IRC server + */ sealed class ServerMessage { - class Cap() : ServerMessage() - class Pong(val token: String? = null) : ServerMessage() - class Mode(val operatorName: String, val pMask: String): ServerMessage() - class PrivMsg(val targets: List, message: String): ServerMessage() - class Notice(val targets: List, message: String): ServerMessage() - class UNIMPLEMENTED(val msg: String) : ServerMessage() + data class Cap(val placeholder: String? = null) : ServerMessage() + data class Pong(val token: String? = null) : ServerMessage() + data class Mode(val operatorName: String, val pMask: String) : ServerMessage() + data class PrivMsg(val targets: List, val message: String) : ServerMessage() + data class Notice(val targets: List, val message: String) : ServerMessage() + data class UNIMPLEMENTED(val msg: String) : ServerMessage() + + sealed class Numeric(val number: Short) : ServerMessage() { + data class RPL_ISUPPORT(val keypairs: String): Numeric(5) + class RPL_LISTSTART : Numeric(321) + data class RPL_LIST(val chanName: String, val clientCount: Int, val topic: String) : Numeric(322) + class RPL_LISTEND : Numeric(323) + } } \ No newline at end of file