forked from SteamWar/SteamWar
Revert "Add EventCache for efficient retrieval of event groups and teams"
This reverts commit8b4f864f99. Revert "Refactor EventFights and Fight classes to improve player initialization and retrieval" This reverts commit8d705e7a84. Revert "Refactor EventFights and Fight classes to improve player initialization and retrieval" This reverts commit78352a3e67.
This commit is contained in:
@@ -20,9 +20,7 @@
|
||||
package de.steamwar.routes
|
||||
|
||||
import de.steamwar.ResponseError
|
||||
import de.steamwar.data.EventCache
|
||||
import de.steamwar.sql.*
|
||||
import de.steamwar.sql.internal.useDb
|
||||
import io.ktor.http.*
|
||||
import io.ktor.server.application.*
|
||||
import io.ktor.server.request.*
|
||||
@@ -43,55 +41,19 @@ data class ResponseEventFight(
|
||||
val ergebnis: Int,
|
||||
val spectatePort: Int?,
|
||||
val group: ResponseGroups?,
|
||||
val hasFinished: Boolean,
|
||||
val fightData: FightData? = null
|
||||
val hasFinished: Boolean
|
||||
) {
|
||||
constructor(eventFight: EventFight, cache: EventCache = EventCache()) : this(
|
||||
constructor(eventFight: EventFight) : this(
|
||||
eventFight.fightID,
|
||||
eventFight.spielmodus,
|
||||
eventFight.map,
|
||||
cache.getTeam(eventFight.teamBlue),
|
||||
cache.getTeam(eventFight.teamRed),
|
||||
ResponseTeam(Team.byId(eventFight.teamBlue)),
|
||||
ResponseTeam(Team.byId(eventFight.teamRed)),
|
||||
eventFight.startTime.time,
|
||||
eventFight.ergebnis,
|
||||
eventFight.spectatePort,
|
||||
eventFight.groupId?.let { cache.getGroup(it.value) },
|
||||
eventFight.hasFinished(),
|
||||
eventFight.fight?.let { FightData(Fight.getById(it)) }
|
||||
)
|
||||
}
|
||||
|
||||
@Serializable
|
||||
data class FightData(
|
||||
val id: Int,
|
||||
val gamemode: String,
|
||||
val server: String,
|
||||
val start: Long,
|
||||
val duration: Int,
|
||||
val blueLeader: ResponseUser,
|
||||
val redLeader: ResponseUser,
|
||||
val blueSchem: String?,
|
||||
val redSchem: String?,
|
||||
val win: String,
|
||||
val winCondition: String,
|
||||
|
||||
val bluePlayers: List<ResponseUser>,
|
||||
val redPlayers: List<ResponseUser>,
|
||||
) {
|
||||
constructor(fight: Fight, players: List<FightPlayer> = FightPlayer.getFight(fight.fightID)) : this(
|
||||
fight.id.value,
|
||||
fight.gameMode,
|
||||
fight.server,
|
||||
fight.startTime.time,
|
||||
fight.duration,
|
||||
ResponseUser.get(fight.blueLeader),
|
||||
ResponseUser.get(fight.redLeader),
|
||||
fight.blueSchem?.let { SchematicNode.getSchematicNode(it.value)?.name },
|
||||
fight.redSchem?.let { SchematicNode.getSchematicNode(it.value)?.name },
|
||||
fight.winner.name,
|
||||
fight.winCondition,
|
||||
players.filter { it.team == 1 }.map { ResponseUser.get(it.userID) },
|
||||
players.filter { it.team == 2 }.map { ResponseUser.get(it.userID) },
|
||||
eventFight.group.orElse(null)?.let { ResponseGroups(it, short = true) },
|
||||
eventFight.hasFinished()
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
@@ -20,7 +20,6 @@
|
||||
package de.steamwar.routes
|
||||
|
||||
import de.steamwar.ResponseError
|
||||
import de.steamwar.data.EventCache
|
||||
import de.steamwar.plugins.SWPermissionCheck
|
||||
import de.steamwar.sql.*
|
||||
import de.steamwar.sql.EventGroup.EventGroupType
|
||||
@@ -114,10 +113,10 @@ data class ExtendedResponseEvent(
|
||||
val referees: List<ResponseUser>,
|
||||
val relations: List<ResponseRelation>
|
||||
) {
|
||||
constructor(event: Event, cache: EventCache = EventCache()) : this(
|
||||
constructor(event: Event) : this(
|
||||
ResponseEvent(event),
|
||||
TeamTeilnahme.getTeams(event.eventID).map { cache.convertTeam(it) },
|
||||
EventGroup.get(event).map { cache.convertGroup(it) },
|
||||
TeamTeilnahme.getTeams(event.eventID).map { ResponseTeam(it) },
|
||||
EventGroup.get(event).map { ResponseGroups(it) },
|
||||
EventFight.getEvent(event.eventID).map { ResponseEventFight(it) },
|
||||
Referee.get(event.eventID).map { ResponseUser.get(SteamwarUser.byId(it)!!) },
|
||||
EventRelation.get(event).map { ResponseRelation(it) }
|
||||
|
||||
Reference in New Issue
Block a user