mirror of
https://github.com/Suwayomi/Suwayomi-Server.git
synced 2026-07-09 13:54:36 -05:00
Backup creation and restore gql endpoints (#587)
This commit is contained in:
@@ -11,7 +11,9 @@ import io.javalin.http.ContentType
|
||||
import io.javalin.http.Context
|
||||
import io.javalin.websocket.WsConfig
|
||||
import suwayomi.tachidesk.graphql.server.TachideskGraphQLServer
|
||||
import suwayomi.tachidesk.graphql.server.TemporaryFileStorage
|
||||
import suwayomi.tachidesk.server.JavalinSetup.future
|
||||
import kotlin.io.path.inputStream
|
||||
|
||||
object GraphQLController {
|
||||
private val server = TachideskGraphQLServer.create()
|
||||
@@ -30,6 +32,14 @@ object GraphQLController {
|
||||
ctx.result(javaClass.getResourceAsStream("/graphql-playground.html")!!)
|
||||
}
|
||||
|
||||
fun retrieveFile(ctx: Context) {
|
||||
val filename = ctx.pathParam("file")
|
||||
val file = TemporaryFileStorage.retrieveFile(filename)
|
||||
ctx.contentType("application/octet-stream")
|
||||
ctx.header("Content-Disposition", """attachment; filename="$filename"""")
|
||||
ctx.result(file.inputStream())
|
||||
}
|
||||
|
||||
fun webSocket(ws: WsConfig) {
|
||||
ws.onMessage { ctx ->
|
||||
server.handleSubscriptionMessage(ctx)
|
||||
|
||||
Reference in New Issue
Block a user