arnaucube
arnaucube/goRecommenderPublic Self-hosted repository
goRecommender/main.go
main.goRaw
 1package main
 2
 3import (
 4	"fmt"
 5	"log"
 6	"net/http"
 7
 8	mgo "gopkg.in/mgo.v2"
 9
10	"github.com/fatih/color"
11)
12
13var userCollection *mgo.Collection
14var itemCollection *mgo.Collection
15
16func main() {
17	fmt.Println("starting")
18
19	//mongodb start
20	readMongodbConfig("./mongodbConfig.json")
21	session, err := getSession()
22	check(err)
23	userCollection = getCollection(session, "users")
24	itemCollection = getCollection(session, "items")
25	color.Green("mongodb connected")
26
27	//read items dataset
28	itemsDataset := readDataset("./itemSamples.data", "\n", ",")
29	items := getItemsFromDataset(itemsDataset)
30	datasetToMongodbIfNotExist(itemCollection, items)
31
32	//http server start
33	readServerConfig("./serverConfig.json")
34	color.Green("server running")
35	router := NewRouter()
36	log.Fatal(http.ListenAndServe(":"+serverConfig.ServerPort, router))
37
38}