mirror of
https://github.com/chaitin/MonkeyCode.git
synced 2026-02-02 06:43:23 +08:00
feat: 封装 APIHandler 支持 pro 调用
This commit is contained in:
24
backend/internal/handlers.go
Normal file
24
backend/internal/handlers.go
Normal file
@@ -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
|
||||
}
|
||||
@@ -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,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user