From 1cc87ec8a7990e5ff624a96d403f941147e44395 Mon Sep 17 00:00:00 2001 From: AzenKain Date: Tue, 14 Apr 2026 09:38:19 +0700 Subject: [PATCH] UPDATE: Add raster tiles --- cmd/api/main.go | 10 +++++++++- cmd/api/server.go | 13 ++++++++++++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/cmd/api/main.go b/cmd/api/main.go index 012ed46..eb9fa35 100644 --- a/cmd/api/main.go +++ b/cmd/api/main.go @@ -67,6 +67,14 @@ func StartServer() { } defer sqlTile.Close() + + sqlRasterTile, err := mbtiles.NewMBTilesDB("data/raster.mbtiles") + if err != nil { + log.Error().Msg(err.Error()) + panic(err) + } + defer sqlRasterTile.Close() + redisClient, err := cache.NewRedisClient() if err != nil { log.Error().Msg(err.Error()) @@ -96,7 +104,7 @@ func StartServer() { } serverHttp := NewHttpServer() - serverHttp.SetupServer(poolPg, sqlTile, redisClient, storageClient, googleOAuthConfig) + serverHttp.SetupServer(poolPg, sqlTile, sqlRasterTile, redisClient, storageClient, googleOAuthConfig) Singleton = serverHttp done := make(chan bool, 1) diff --git a/cmd/api/server.go b/cmd/api/server.go index cd37b2c..19be360 100644 --- a/cmd/api/server.go +++ b/cmd/api/server.go @@ -56,7 +56,14 @@ func NewHttpServer() *FiberServer { return server } -func (s *FiberServer) SetupServer(sqlPg sqlc.DBTX, sqlTile *sql.DB, redis cache.Cache, sclient storage.Storage, oauth *oauth2.Config) { +func (s *FiberServer) SetupServer( + sqlPg sqlc.DBTX, + sqlTile *sql.DB, + sqlRasterTile *sql.DB, + redis cache.Cache, + sclient storage.Storage, + oauth *oauth2.Config, +) { // Apply CORS middleware s.App.Use(cors.New(cors.Config{ AllowOrigins: []string{ @@ -75,6 +82,7 @@ func (s *FiberServer) SetupServer(sqlPg sqlc.DBTX, sqlTile *sql.DB, redis cache. userRepo := repositories.NewUserRepository(sqlPg, redis) roleRepo := repositories.NewRoleRepository(sqlPg, redis) tileRepo := repositories.NewTileRepository(sqlTile, redis) + rasterTileRepo := repositories.NewRasterTileRepository(sqlRasterTile, redis) tokenRepo := repositories.NewTokenRepository(redis) mediaRepo := repositories.NewMediaRepository(sqlPg, redis) verificationRepo := repositories.NewVerificationRepository(sqlPg, redis) @@ -84,6 +92,7 @@ func (s *FiberServer) SetupServer(sqlPg sqlc.DBTX, sqlTile *sql.DB, redis cache. userService := services.NewUserService(userRepo, roleRepo, redis) roleService := services.NewRoleService(roleRepo) tileService := services.NewTileService(tileRepo) + rasterTileService := services.NewRasterTileService(rasterTileRepo) mediaService := services.NewMediaService(mediaRepo, tokenRepo, sclient, redis) verificationService := services.NewVerificationService(verificationRepo, mediaRepo, userRepo, roleRepo, redis) @@ -91,6 +100,7 @@ func (s *FiberServer) SetupServer(sqlPg sqlc.DBTX, sqlTile *sql.DB, redis cache. authController := controllers.NewAuthController(authService, oauth) userController := controllers.NewUserController(userService, mediaService, verificationService) tileController := controllers.NewTileController(tileService) + rasterTileController := controllers.NewRasterTileController(rasterTileService) roleController := controllers.NewRoleController(roleService) mediaController := controllers.NewMediaController(mediaService) verificationController := controllers.NewVerificationController(verificationService) @@ -102,5 +112,6 @@ func (s *FiberServer) SetupServer(sqlPg sqlc.DBTX, sqlTile *sql.DB, redis cache. routes.RoleRoutes(s.App, roleController, userRepo) routes.VerificationRoutes(s.App, verificationController, userRepo) routes.TileRoutes(s.App, tileController) + routes.RasterTileRoutes(s.App, rasterTileController) routes.NotFoundRoute(s.App) }