diff --git a/backend/internal/handlers.go b/backend/internal/handlers.go new file mode 100644 index 0000000..d39f449 --- /dev/null +++ b/backend/internal/handlers.go @@ -0,0 +1,24 @@ +package internal + +import ( + billingv1 "github.com/chaitin/MonkeyCode/backend/internal/billing/handler/http/v1" + codesnippetv1 "github.com/chaitin/MonkeyCode/backend/internal/codesnippet/handler/http/v1" + dashv1 "github.com/chaitin/MonkeyCode/backend/internal/dashboard/handler/v1" + modelv1 "github.com/chaitin/MonkeyCode/backend/internal/model/handler/http/v1" + v1 "github.com/chaitin/MonkeyCode/backend/internal/openai/handler/v1" + sockethandler "github.com/chaitin/MonkeyCode/backend/internal/socket/handler" + userV1 "github.com/chaitin/MonkeyCode/backend/internal/user/handler/v1" + workspacehandlerv1 "github.com/chaitin/MonkeyCode/backend/internal/workspace/handler/http/v1" +) + +// APIHandlers 包含所有API处理器 +type APIHandlers struct { + OpenAIV1Handler *v1.V1Handler + UserHandler *userV1.UserHandler + ModelHandler *modelv1.ModelHandler + DashboardHandler *dashv1.DashboardHandler + CodeSnippetHandler *codesnippetv1.CodeSnippetHandler + SocketHandler *sockethandler.SocketHandler + BillingHandler *billingv1.BillingHandler + WorkspaceFileHandler *workspacehandlerv1.WorkspaceFileHandler +} diff --git a/backend/internal/provider.go b/backend/internal/provider.go index fc19ae9..0274b1f 100644 --- a/backend/internal/provider.go +++ b/backend/internal/provider.go @@ -36,6 +36,29 @@ import ( "github.com/chaitin/MonkeyCode/backend/pkg/version" ) +// NewAPIHandlers 创建 APIHandlers 实例 +func NewAPIHandlers( + openaiV1 *v1.V1Handler, + userV1 *userV1.UserHandler, + modelV1 *modelv1.ModelHandler, + dashboardV1 *dashv1.DashboardHandler, + codeSnippetV1 *codesnippetv1.CodeSnippetHandler, + socketH *sockethandler.SocketHandler, + billingV1 *billingv1.BillingHandler, + workspaceFileV1 *workspacehandlerv1.WorkspaceFileHandler, +) *APIHandlers { + return &APIHandlers{ + OpenAIV1Handler: openaiV1, + UserHandler: userV1, + ModelHandler: modelV1, + DashboardHandler: dashboardV1, + CodeSnippetHandler: codeSnippetV1, + SocketHandler: socketH, + BillingHandler: billingV1, + WorkspaceFileHandler: workspaceFileV1, + } +} + var Provider = wire.NewSet( proxy.NewLLMProxy, v1.NewV1Handler, @@ -73,4 +96,5 @@ var Provider = wire.NewSet( codesnippetrepo.NewCodeSnippetRepo, codesnippetusecase.NewCodeSnippetUsecase, codesnippetv1.NewCodeSnippetHandler, + NewAPIHandlers, )