Skip to content

Commit 531ffb3

Browse files
committed
Add some logging for links
1 parent 2a7e651 commit 531ffb3

File tree

1 file changed

+13
-3
lines changed
  • src/main/kotlin/dev/arbjerg/lavalink/client

1 file changed

+13
-3
lines changed

src/main/kotlin/dev/arbjerg/lavalink/client/Link.kt

+13-3
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package dev.arbjerg.lavalink.client
33
import dev.arbjerg.lavalink.client.player.LavalinkPlayer
44
import dev.arbjerg.lavalink.client.player.PlayerUpdateBuilder
55
import dev.arbjerg.lavalink.protocol.v4.VoiceState
6+
import org.slf4j.LoggerFactory
67
import java.time.Duration
78
import java.util.function.Consumer
89

@@ -15,6 +16,8 @@ class Link(
1516
val guildId: Long,
1617
node: LavalinkNode
1718
) {
19+
private var logger = LoggerFactory.getLogger(Link::class.java)
20+
1821
var node = node
1922
private set
2023

@@ -58,11 +61,15 @@ class Link(
5861
val player = node.getCachedPlayer(guildId)
5962

6063
if (player != null) {
61-
node.removeCachedPlayer(guildId)
6264
newNode.createOrUpdatePlayer(guildId)
6365
.applyBuilder(player.stateToBuilder())
6466
.delaySubscription(delay)
65-
.subscribe()
67+
.subscribe({
68+
node.removeCachedPlayer(guildId)
69+
}) {
70+
state = LinkState.DISCONNECTED
71+
logger.error("Failed to transfer player to new node: ${newNode.name}", it)
72+
}
6673
}
6774

6875
node = newNode
@@ -73,7 +80,10 @@ class Link(
7380
state = LinkState.CONNECTING
7481
node.createOrUpdatePlayer(guildId)
7582
.setVoiceState(newVoiceState)
76-
.subscribe()
83+
.subscribe(null) {
84+
state = LinkState.DISCONNECTED
85+
logger.error("Failed to update voice state to $newVoiceState", it)
86+
}
7787
}
7888
}
7989

0 commit comments

Comments
 (0)