diff options
author | Runxi Yu <me@runxiyu.org> | 2025-08-17 17:47:38 +0800 |
---|---|---|
committer | Runxi Yu <me@runxiyu.org> | 2025-08-17 18:04:34 +0800 |
commit | f58f56701d047398cc8d7a6433719de1b6070242 (patch) | |
tree | eddba41fc84549f8532af4da040cb227a0304f65 /forged/internal/incoming/web/handler.go | |
parent | gofumpt (diff) | |
download | forge-f58f56701d047398cc8d7a6433719de1b6070242.tar.gz forge-f58f56701d047398cc8d7a6433719de1b6070242.tar.zst forge-f58f56701d047398cc8d7a6433719de1b6070242.zip |
Refactor handlers structure and add BaseData
Diffstat (limited to 'forged/internal/incoming/web/handler.go')
-rw-r--r-- | forged/internal/incoming/web/handler.go | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/forged/internal/incoming/web/handler.go b/forged/internal/incoming/web/handler.go index 9018547..6341a93 100644 --- a/forged/internal/incoming/web/handler.go +++ b/forged/internal/incoming/web/handler.go @@ -1,9 +1,11 @@ -// internal/incoming/web/handler.go package web import ( "net/http" "path/filepath" + + handlers "go.lindenii.runxiyu.org/forge/forged/internal/incoming/web/handlers" + repoHandlers "go.lindenii.runxiyu.org/forge/forged/internal/incoming/web/handlers/repo" ) type handler struct { @@ -21,24 +23,28 @@ func NewHandler(cfg Config) http.Handler { WithDirIfEmpty("rest"), ) + // Feature handler instances + indexHTTP := handlers.NewIndexHTTP() + repoHTTP := repoHandlers.NewHTTP() + // Index - h.r.GET("/", h.index) + h.r.GET("/", indexHTTP.Index) // Top-level utilities h.r.ANY("-/login", h.notImplemented) h.r.ANY("-/users", h.notImplemented) - // Group index + // Group index (kept local for now; migrate later) h.r.GET("@group/", h.groupIndex) - // Repo index - h.r.GET("@group/-/repos/:repo/", h.repoIndex) + // Repo index (handled by repoHTTP) + h.r.GET("@group/-/repos/:repo/", repoHTTP.Index) - // Repo + // Repo (kept local for now) h.r.ANY("@group/-/repos/:repo/info", h.notImplemented) h.r.ANY("@group/-/repos/:repo/git-upload-pack", h.notImplemented) - // Repo features + // Repo features (kept local for now) h.r.GET("@group/-/repos/:repo/branches/", h.notImplemented) h.r.GET("@group/-/repos/:repo/log/", h.notImplemented) h.r.GET("@group/-/repos/:repo/commit/:commit", h.notImplemented) |