From e8db174d3e464a5764a9f4bfd82172261bd50519 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sat, 21 Feb 2026 10:29:21 +0900 Subject: refactor(api): separate business logic into game, tournament, session packages MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Extract business logic from api/handler.go into dedicated service packages: - session: context helpers (resolves admin → api import dependency) - game: game state, code submission, ranking, watch logic - tournament: bracket construction and seed ordering - api/convert.go: domain → API type conversion functions api/handler.go is now a thin adapter that delegates to services and maps domain errors to HTTP status codes. Co-Authored-By: Claude Opus 4.6 --- backend/admin/handler.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'backend/admin/handler.go') diff --git a/backend/admin/handler.go b/backend/admin/handler.go index 8eac425..09303ac 100644 --- a/backend/admin/handler.go +++ b/backend/admin/handler.go @@ -14,9 +14,9 @@ import ( "github.com/labstack/echo/v4" "albatross-2026-backend/account" - "albatross-2026-backend/api" "albatross-2026-backend/config" "albatross-2026-backend/db" + "albatross-2026-backend/session" ) var jst = time.FixedZone("Asia/Tokyo", 9*60*60) @@ -39,7 +39,7 @@ func NewHandler(q db.Querier, txm db.TxManager, hub GameHub, conf *config.Config func (h *Handler) newAdminMiddleware() echo.MiddlewareFunc { return func(next echo.HandlerFunc) echo.HandlerFunc { return func(c echo.Context) error { - user, ok := api.GetUserFromContext(c.Request().Context()) + user, ok := session.GetUserFromContext(c.Request().Context()) if !ok { return c.Redirect(http.StatusSeeOther, h.conf.BasePath+"login") } -- cgit v1.3.1