mirror of
https://github.com/aykhans/oh-my-url.git
synced 2025-04-17 02:23:13 +00:00
54 lines
1.1 KiB
Go
54 lines
1.1 KiB
Go
package main
|
|
|
|
import (
|
|
"log"
|
|
"net/http"
|
|
"sync"
|
|
|
|
"github.com/aykhans/oh-my-url/app/config"
|
|
"github.com/aykhans/oh-my-url/app/db"
|
|
"github.com/aykhans/oh-my-url/app/http_handlers"
|
|
)
|
|
|
|
func main() {
|
|
appConfig := config.GetAppConfig()
|
|
dbCreate := db.GetDB()
|
|
dbCreate.Init()
|
|
handlerCreate := httpHandlers.HandlerCreate{DB: dbCreate}
|
|
urlCreateMux := http.NewServeMux()
|
|
urlCreateMux.HandleFunc("/", handlerCreate.UrlCreate)
|
|
urlCreateMux.HandleFunc("/favicon.ico", httpHandlers.FaviconHandler)
|
|
|
|
dbRead := db.GetDB()
|
|
handlerForward := httpHandlers.HandlerForward{DB: dbRead}
|
|
urlReadMux := http.NewServeMux()
|
|
urlReadMux.HandleFunc("/", handlerForward.UrlForward)
|
|
urlReadMux.HandleFunc("/favicon.ico", httpHandlers.FaviconHandler)
|
|
|
|
var wg sync.WaitGroup
|
|
wg.Add(2)
|
|
go func() {
|
|
defer wg.Done()
|
|
for {
|
|
err := http.ListenAndServe(":"+appConfig.LISTEN_PORT_CREATE, urlCreateMux)
|
|
if err != nil {
|
|
log.Println(err)
|
|
continue
|
|
}
|
|
break
|
|
}
|
|
}()
|
|
go func() {
|
|
defer wg.Done()
|
|
for {
|
|
err := http.ListenAndServe(":"+appConfig.LISTEN_PORT_FORWARD, urlReadMux)
|
|
if err != nil {
|
|
log.Println(err)
|
|
continue
|
|
}
|
|
break
|
|
}
|
|
}()
|
|
wg.Wait()
|
|
}
|