// package main // import "fmt" // func main() { // fmt.Println("Hello!") // } package main import ( "log" "net/http" "github.com/gorilla/handlers" dashapi "github.com/moustachioed/dash/backend/dashapi" database "github.com/moustachioed/dash/backend/database" mapping "github.com/moustachioed/dash/backend/mapping" service "github.com/moustachioed/dash/backend/service" ) func main() { db, err := database.NewPgDatabase("localhost", "dash", "dash", "dash", 15432) if err != nil { log.Fatal(err) } mapper := mapping.NewMapperImpl() JournalApiService := service.NewJournalApiService(db, mapper) JournalApiController := dashapi.NewJournalApiController(JournalApiService) PlanApiService := service.NewPlanApiService(db, mapper) PlanApiController := dashapi.NewPlanApiController(PlanApiService) cors := handlers.CORS( // handlers.AllowedMethods([]string{"GET", "POST", "DELETE"}), handlers.AllowedHeaders([]string{"Accept", "Accept-Language", "Content-Type", "Content-Language", "Origin"}), handlers.AllowedOrigins([]string{"*"}), ) router := dashapi.NewRouter(JournalApiController, PlanApiController) router.Methods("GET", "POST", "DELETE", "OPTIONS") log.Printf("Starting server.") // TODO remove listening on all interfaces log.Fatal(http.ListenAndServe("0.0.0.0:8080", cors(router))) }