From 4017c3cb8cf5ce9eab8f62344f6d811b1a8e745c Mon Sep 17 00:00:00 2001 From: Kenneth Endfinger Date: Fri, 24 Dec 2021 02:49:53 -0500 Subject: [PATCH] Heimdall: Add id column to player session tracking. --- .../cloud/kubelet/foundation/heimdall/event/PlayerSession.kt | 1 + .../kubelet/foundation/heimdall/table/PlayerSessionTable.kt | 1 + foundation-heimdall/src/main/resources/init.sql | 3 ++- 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/foundation-heimdall/src/main/kotlin/cloud/kubelet/foundation/heimdall/event/PlayerSession.kt b/foundation-heimdall/src/main/kotlin/cloud/kubelet/foundation/heimdall/event/PlayerSession.kt index 80af280..d31fb4b 100644 --- a/foundation-heimdall/src/main/kotlin/cloud/kubelet/foundation/heimdall/event/PlayerSession.kt +++ b/foundation-heimdall/src/main/kotlin/cloud/kubelet/foundation/heimdall/event/PlayerSession.kt @@ -15,6 +15,7 @@ class PlayerSession( override fun store(transaction: Transaction) { transaction.apply { PlayerSessionTable.insert { + it[id] = UUID.randomUUID() it[player] = playerUniqueIdentity it[name] = playerName it[startTime] = startTimeInstant diff --git a/foundation-heimdall/src/main/kotlin/cloud/kubelet/foundation/heimdall/table/PlayerSessionTable.kt b/foundation-heimdall/src/main/kotlin/cloud/kubelet/foundation/heimdall/table/PlayerSessionTable.kt index 2f1cdab..8bce120 100644 --- a/foundation-heimdall/src/main/kotlin/cloud/kubelet/foundation/heimdall/table/PlayerSessionTable.kt +++ b/foundation-heimdall/src/main/kotlin/cloud/kubelet/foundation/heimdall/table/PlayerSessionTable.kt @@ -4,6 +4,7 @@ import org.jetbrains.exposed.sql.* import org.jetbrains.exposed.sql.javatime.timestamp object PlayerSessionTable : Table("player_sessions") { + val id = uuid("id") val player = uuid("player") val name = text("name") val startTime = timestamp("start") diff --git a/foundation-heimdall/src/main/resources/init.sql b/foundation-heimdall/src/main/resources/init.sql index 79c140d..a865f76 100644 --- a/foundation-heimdall/src/main/resources/init.sql +++ b/foundation-heimdall/src/main/resources/init.sql @@ -46,11 +46,12 @@ create table if not exists heimdall.block_places ( select create_hypertable('heimdall.block_places', 'time', 'player', 4, if_not_exists => TRUE); -- create table if not exists heimdall.player_sessions ( + id uuid not null, player uuid not null, name text not null, "start" timestamp not null, "end" timestamp not null, - PRIMARY KEY (player, start) + primary key (id, player, start) ); -- select create_hypertable('heimdall.player_sessions', 'start', 'player', 4, if_not_exists => TRUE);