-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapi.go
31 lines (25 loc) · 797 Bytes
/
api.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package server
import (
"net/http"
"strconv"
"github.com/urfave/negroni"
"gopkg.in/tylerb/graceful.v1"
"nipun.io/message_queue/appcontext"
"nipun.io/message_queue/config"
"nipun.io/message_queue/logger"
r "nipun.io/message_queue/server/router"
)
func listenServer(apiServer *graceful.Server) {
logger.Logger.Info().Msgf("starting api server on address : %s", apiServer.Addr)
if err := apiServer.ListenAndServe(); err != nil && err != http.ErrServerClosed {
logger.Logger.Fatal().Err(err)
}
}
func StartApiServer(dependencies *appcontext.Instance) {
logger.Logger.Info().Msg("Starting API server")
router := r.Router(dependencies)
n := negroni.New(negroni.NewRecovery())
n.UseHandlerFunc(router.ServeHTTP)
portInfo := ":" + strconv.Itoa(config.AppPort())
n.Run(portInfo)
}