Ignore SSE send failures
All checks were successful
build-and-deploy / build-deploy (push) Successful in 33s

This commit is contained in:
androidlover5842
2026-01-31 11:10:21 +05:30
parent b7b1975c5c
commit 0771631b5a

View File

@@ -1,7 +1,6 @@
package com.android.trisolarisserver.component package com.android.trisolarisserver.component
import org.springframework.web.servlet.mvc.method.annotation.SseEmitter import org.springframework.web.servlet.mvc.method.annotation.SseEmitter
import java.io.IOException
import java.util.concurrent.ConcurrentHashMap import java.util.concurrent.ConcurrentHashMap
import java.util.concurrent.CopyOnWriteArrayList import java.util.concurrent.CopyOnWriteArrayList
@@ -19,7 +18,7 @@ class SseHub<K>(
emitter.onError { emitters[key]?.remove(emitter) } emitter.onError { emitters[key]?.remove(emitter) }
try { try {
emitter.send(SseEmitter.event().name(eventName).data(snapshot(key))) emitter.send(SseEmitter.event().name(eventName).data(snapshot(key)))
} catch (_: IOException) { } catch (_: Exception) {
emitters[key]?.remove(emitter) emitters[key]?.remove(emitter)
} }
return emitter return emitter
@@ -32,7 +31,7 @@ class SseHub<K>(
for (emitter in list) { for (emitter in list) {
try { try {
emitter.send(SseEmitter.event().name(eventName).data(data)) emitter.send(SseEmitter.event().name(eventName).data(data))
} catch (_: IOException) { } catch (_: Exception) {
dead.add(emitter) dead.add(emitter)
} }
} }
@@ -47,7 +46,7 @@ class SseHub<K>(
for (emitter in list) { for (emitter in list) {
try { try {
emitter.send(SseEmitter.event().name("ping").data("ok")) emitter.send(SseEmitter.event().name("ping").data("ok"))
} catch (_: IOException) { } catch (_: Exception) {
dead.add(emitter) dead.add(emitter)
} }
} }