mirror of
https://github.com/MewoLab/AquaDX.git
synced 2026-02-08 21:07:27 +08:00
[+] Push and pull apis
This commit is contained in:
@@ -1,9 +1,6 @@
|
|||||||
package icu.samnyan.aqua.net.transfer
|
package icu.samnyan.aqua.net.transfer
|
||||||
|
|
||||||
import ext.API
|
import ext.*
|
||||||
import ext.RB
|
|
||||||
import ext.logger
|
|
||||||
import ext.toJson
|
|
||||||
import jakarta.servlet.http.HttpServletResponse
|
import jakarta.servlet.http.HttpServletResponse
|
||||||
import org.springframework.web.bind.annotation.RestController
|
import org.springframework.web.bind.annotation.RestController
|
||||||
import java.io.PrintWriter
|
import java.io.PrintWriter
|
||||||
@@ -35,21 +32,41 @@ class TransferApis {
|
|||||||
|
|
||||||
fun PrintWriter.log(m: String) = sendJson(mapOf("message" to m))
|
fun PrintWriter.log(m: String) = sendJson(mapOf("message" to m))
|
||||||
|
|
||||||
@API("/export")
|
@API("/pull")
|
||||||
fun export(@RB allNet: AllNetClient, response: HttpServletResponse) {
|
fun pull(@RB allNet: AllNetClient, response: HttpServletResponse) {
|
||||||
val stream = response.initStream()
|
val stream = response.initStream()
|
||||||
try {
|
try {
|
||||||
log.info("Transfer export: $allNet")
|
log.info("Transfer pull: $allNet")
|
||||||
stream.log("Starting export...")
|
stream.log("Starting pull...")
|
||||||
val broker = allNet.findDataBroker { stream.log(it) }
|
val broker = allNet.findDataBroker { stream.log(it) }
|
||||||
val out = broker.pull()
|
val out = broker.pull()
|
||||||
stream.log("Export complete")
|
stream.log("Pull complete")
|
||||||
stream.sendJson(mapOf("data" to out))
|
stream.sendJson(mapOf("data" to out))
|
||||||
} catch (e: Exception) {
|
} catch (e: Exception) {
|
||||||
log.error("Transfer export error", e)
|
log.error("Transfer pull error", e)
|
||||||
stream.sendJson(mapOf("error" to e.message))
|
stream.sendJson(mapOf("error" to e.message))
|
||||||
} finally {
|
} finally {
|
||||||
stream.close()
|
stream.close()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@API("/push")
|
||||||
|
fun push(@RB allNet: AllNetClient, data: String) = try {
|
||||||
|
log.info("Transfer push: $allNet")
|
||||||
|
val broker = allNet.findDataBroker { log.info(it) }
|
||||||
|
broker.push(data)
|
||||||
|
mapOf("status" to "ok")
|
||||||
|
} catch (e: Exception) {
|
||||||
|
log.error("Transfer push error", e)
|
||||||
|
mapOf("error" to e.message)
|
||||||
|
}
|
||||||
|
|
||||||
|
@API("/info")
|
||||||
|
fun info() = mapOf(
|
||||||
|
"support" to ls("chu3", "mai2"),
|
||||||
|
"game" to mapOf(
|
||||||
|
"chu3" to ls("SDHD", "2.30"),
|
||||||
|
"mai2" to ls("SDGA", "1.50")
|
||||||
|
)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user