diff options
author | 2017-11-19 21:10:04 -0800 | |
---|---|---|
committer | 2017-11-19 22:01:46 -0800 | |
commit | 8ffb773f43c8dc54801ca1d111854e7e881c93c9 (patch) | |
tree | 38133a2fc612597a75fed1d13e5b4042f58a2b7e /server/server.go | |
download | v2-8ffb773f43c8dc54801ca1d111854e7e881c93c9.tar.gz v2-8ffb773f43c8dc54801ca1d111854e7e881c93c9.tar.zst v2-8ffb773f43c8dc54801ca1d111854e7e881c93c9.zip |
First commit
Diffstat (limited to 'server/server.go')
-rw-r--r-- | server/server.go | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/server/server.go b/server/server.go new file mode 100644 index 00000000..ec32329f --- /dev/null +++ b/server/server.go @@ -0,0 +1,33 @@ +// Copyright 2017 Frédéric Guillot. All rights reserved. +// Use of this source code is governed by the Apache 2.0 +// license that can be found in the LICENSE file. + +package server + +import ( + "github.com/miniflux/miniflux2/config" + "github.com/miniflux/miniflux2/reader/feed" + "github.com/miniflux/miniflux2/storage" + "log" + "net/http" + "time" +) + +func NewServer(cfg *config.Config, store *storage.Storage, feedHandler *feed.Handler) *http.Server { + server := &http.Server{ + ReadTimeout: 5 * time.Second, + WriteTimeout: 10 * time.Second, + IdleTimeout: 60 * time.Second, + Addr: cfg.Get("LISTEN_ADDR", "127.0.0.1:8080"), + Handler: getRoutes(store, feedHandler), + } + + go func() { + log.Printf("Listening on %s\n", server.Addr) + if err := server.ListenAndServe(); err != nil { + log.Fatal(err) + } + }() + + return server +} |