1
mirror of https://github.com/jakejarvis/npqueue.git synced 2025-04-26 03:25:22 -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) {
serverData := make([]byte, 256)
serverConnection, err := net.Dial("udp", ServerAddress)
defer serverConnection.Close()
if err != nil {
return err
} else {
defer serverConnection.Close()
}
// 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
func ListHandler(c *gin.Context) {
loadPlayersJSON()
getPlayerList()
getServerQueue()
parsePlayers()
// Load players JSON
err := loadPlayersJSON()
if err != nil {
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("Access-Control-Allow-Origin", "*")
@ -198,6 +222,10 @@ func main() {
// List handler for /api/list
api.GET("/list", ListHandler)
router.Run(port)
log.Printf("Listening on %s...\n", port)
// Run the Gin router
if err := router.Run(port); err != nil {
log.Fatalf("Gin fatal error: %v", err)
} else {
log.Printf("Listening on %s...\n", port)
}
}