cellMapVisualizer/main.go
main.goRaw
1package main
2
3import (
4 "fmt"
5 "log"
6 "net/http"
7 "os"
8
9 "github.com/fatih/color"
10 "github.com/gorilla/handlers"
11 mgo "gopkg.in/mgo.v2"
12)
13
14var cellCollection *mgo.Collection
15
16func main() {
17 //connect with mongodb
18 readMongodbConfig("./mongodbConfig.json")
19 session, err := getSession()
20 check(err)
21 cellCollection = getCollection(session, "cells")
22
23 if len(os.Args) > 1 {
24 if os.Args[1] == "-dataset" {
25 color.Blue("starting to read dataset")
26 readDataset("dataModel_head.csv")
27 color.Blue("finished reading dataset")
28 }
29 }
30
31 //http server start
32 readServerConfig("./serverConfig.json")
33 color.Green("server running")
34 fmt.Print("port: ")
35 color.Green(serverConfig.ServerPort)
36 router := NewRouter()
37
38 headersOk := handlers.AllowedHeaders([]string{"X-Requested-With", "Access-Control-Allow-Origin"})
39 originsOk := handlers.AllowedOrigins([]string{"*"})
40 methodsOk := handlers.AllowedMethods([]string{"GET", "HEAD", "POST", "PUT", "OPTIONS"})
41 log.Fatal(http.ListenAndServe(":"+serverConfig.ServerPort, handlers.CORS(originsOk, headersOk, methodsOk)(router)))
42}