chore(base): resolved merge-conflict

#5 [Story] Create User Sessions
This commit is contained in:
2025-10-26 11:24:05 +01:00
parent bef96ba7e3
commit d87348f13f
13 changed files with 114 additions and 44 deletions

View File

@@ -0,0 +1,37 @@
package logic
import de.knockoutwhist.utils.events.SimpleEvent
import model.sessions.PlayerSession
import java.util.UUID
import scala.collection.mutable
object PodGameManager {
private val sessions: mutable.Map[UUID, PlayerSession] = mutable.Map()
def addSession(session: PlayerSession): Unit = {
sessions.put(session.id, session)
}
def clearSessions(): Unit = {
sessions.clear()
}
def identify(id: UUID): Option[PlayerSession] = {
sessions.get(id)
}
def transmit(id: UUID, event: SimpleEvent): Unit = {
identify(id).foreach(_.updatePlayer(event))
}
def transmitAll(event: SimpleEvent): Unit = {
sessions.foreach(session => session._2.updatePlayer(event))
}
def listSessions(): List[PlayerSession] = {
sessions.values.toList
}
}

View File

@@ -0,0 +1,11 @@
package logic.user
import model.users.User
trait SessionManager {
def createSession(user: User): String
def getUserBySession(sessionId: String): Option[User]
def invalidateSession(sessionId: String): Unit
}

View File

@@ -0,0 +1,10 @@
package logic.user
trait UserManager {
def addUser(name: String, password: String): Boolean
def authenticate(name: String, password: String): Boolean
def userExists(name: String): Boolean
def removeUser(name: String): Boolean
}