1
mirror of https://github.com/jakejarvis/npqueue.git synced 2025-04-26 06:55:21 -04:00

error handling

This commit is contained in:
Jake Jarvis 2019-07-01 10:20:31 -04:00
parent dc356da4c4
commit 4f62c714fa
No known key found for this signature in database
GPG Key ID: D36CB66F4002B25B

42
main.go
View File

@ -81,9 +81,10 @@ func getPlayerList() (err error) {
func getServerQueue() (err error) { func getServerQueue() (err error) {
serverData := make([]byte, 256) serverData := make([]byte, 256)
serverConnection, err := net.Dial("udp", ServerAddress) serverConnection, err := net.Dial("udp", ServerAddress)
defer serverConnection.Close()
if err != nil { if err != nil {
return err return err
} else {
defer serverConnection.Close()
} }
// UDP voodoo to get server info -- https://github.com/LiquidObsidian/fivereborn-query/blob/master/index.js#L54 // UDP voodoo to get server info -- https://github.com/LiquidObsidian/fivereborn-query/blob/master/index.js#L54
@ -167,10 +168,33 @@ func getPlayerNoPixelInformation(id string) (p NoPixelPlayer) {
// List handler for /api/list route // List handler for /api/list route
func ListHandler(c *gin.Context) { func ListHandler(c *gin.Context) {
loadPlayersJSON() // Load players JSON
getPlayerList() err := loadPlayersJSON()
getServerQueue() if err != nil {
parsePlayers() log.Fatalf("Failed to load players JSON: %v", err)
return
}
// Get player list
err = getPlayerList()
if err != nil {
log.Fatalf("Failed to get player list: %v", err)
return
}
// Get server queue count
err = getServerQueue()
if err != nil {
log.Fatalf("Failed to get server queue count: %v", err)
return
}
// Parse players JSON
err = parsePlayers()
if err != nil {
log.Fatalf("Failed to parse players JSON: %v", err)
return
}
c.Header("Content-Type", "application/json") c.Header("Content-Type", "application/json")
c.Header("Access-Control-Allow-Origin", "*") c.Header("Access-Control-Allow-Origin", "*")
@ -198,6 +222,10 @@ func main() {
// List handler for /api/list // List handler for /api/list
api.GET("/list", ListHandler) api.GET("/list", ListHandler)
router.Run(port) // Run the Gin router
log.Printf("Listening on %s...\n", port) if err := router.Run(port); err != nil {
log.Fatalf("Gin fatal error: %v", err)
} else {
log.Printf("Listening on %s...\n", port)
}
} }