@@ -10,40 +10,40 @@ import (
10
10
"github.com/go-fuego/fuego/internal"
11
11
)
12
12
13
- func GetGin (s * fuego.OpenAPI , e gin.IRouter , path string , handler gin.HandlerFunc , options ... func (* fuego.BaseRoute )) * fuego.Route [any , any ] {
14
- return handleGin (s , e , http .MethodGet , path , handler , options ... )
13
+ func GetGin (engine * fuego.Engine , ginRouter gin.IRouter , path string , handler gin.HandlerFunc , options ... func (* fuego.BaseRoute )) * fuego.Route [any , any ] {
14
+ return handleGin (engine , ginRouter , http .MethodGet , path , handler , options ... )
15
15
}
16
16
17
- func PostGin (s * fuego.OpenAPI , e gin.IRouter , path string , handler gin.HandlerFunc , options ... func (* fuego.BaseRoute )) * fuego.Route [any , any ] {
18
- return handleGin (s , e , http .MethodPost , path , handler , options ... )
17
+ func PostGin (engine * fuego.Engine , ginRouter gin.IRouter , path string , handler gin.HandlerFunc , options ... func (* fuego.BaseRoute )) * fuego.Route [any , any ] {
18
+ return handleGin (engine , ginRouter , http .MethodPost , path , handler , options ... )
19
19
}
20
20
21
- func Get [T , B any ](s * fuego.OpenAPI , e gin.IRouter , path string , handler func (c fuego.ContextWithBody [B ]) (T , error ), options ... func (* fuego.BaseRoute )) * fuego.Route [T , B ] {
22
- return handleFuego (s , e , http .MethodGet , path , handler , options ... )
21
+ func Get [T , B any ](engine * fuego.Engine , ginRouter gin.IRouter , path string , handler func (c fuego.ContextWithBody [B ]) (T , error ), options ... func (* fuego.BaseRoute )) * fuego.Route [T , B ] {
22
+ return handleFuego (engine , ginRouter , http .MethodGet , path , handler , options ... )
23
23
}
24
24
25
- func Post [T , B any ](s * fuego.OpenAPI , e gin.IRouter , path string , handler func (c fuego.ContextWithBody [B ]) (T , error ), options ... func (* fuego.BaseRoute )) * fuego.Route [T , B ] {
26
- return handleFuego (s , e , http .MethodPost , path , handler , options ... )
25
+ func Post [T , B any ](engine * fuego.Engine , ginRouter gin.IRouter , path string , handler func (c fuego.ContextWithBody [B ]) (T , error ), options ... func (* fuego.BaseRoute )) * fuego.Route [T , B ] {
26
+ return handleFuego (engine , ginRouter , http .MethodPost , path , handler , options ... )
27
27
}
28
28
29
- func handleFuego [T , B any ](openapi * fuego.OpenAPI , e gin.IRouter , method , path string , fuegoHandler func (c fuego.ContextWithBody [B ]) (T , error ), options ... func (* fuego.BaseRoute )) * fuego.Route [T , B ] {
30
- baseRoute := fuego .NewBaseRoute (method , path , fuegoHandler , openapi , options ... )
31
- return handle (openapi , e , & fuego.Route [T , B ]{BaseRoute : baseRoute }, GinHandler (fuegoHandler ))
29
+ func handleFuego [T , B any ](engine * fuego.Engine , ginRouter gin.IRouter , method , path string , fuegoHandler func (c fuego.ContextWithBody [B ]) (T , error ), options ... func (* fuego.BaseRoute )) * fuego.Route [T , B ] {
30
+ baseRoute := fuego .NewBaseRoute (method , path , fuegoHandler , engine . OpenAPI , options ... )
31
+ return handle (engine , ginRouter , & fuego.Route [T , B ]{BaseRoute : baseRoute }, GinHandler (fuegoHandler ))
32
32
}
33
33
34
- func handleGin (openapi * fuego.OpenAPI , e gin.IRouter , method , path string , ginHandler gin.HandlerFunc , options ... func (* fuego.BaseRoute )) * fuego.Route [any , any ] {
35
- baseRoute := fuego .NewBaseRoute (method , path , ginHandler , openapi , options ... )
36
- return handle (openapi , e , & fuego.Route [any , any ]{BaseRoute : baseRoute }, ginHandler )
34
+ func handleGin (engine * fuego.Engine , ginRouter gin.IRouter , method , path string , ginHandler gin.HandlerFunc , options ... func (* fuego.BaseRoute )) * fuego.Route [any , any ] {
35
+ baseRoute := fuego .NewBaseRoute (method , path , ginHandler , engine . OpenAPI , options ... )
36
+ return handle (engine , ginRouter , & fuego.Route [any , any ]{BaseRoute : baseRoute }, ginHandler )
37
37
}
38
38
39
- func handle [T , B any ](openapi * fuego.OpenAPI , e gin.IRouter , route * fuego.Route [T , B ], fuegoHandler gin.HandlerFunc ) * fuego.Route [T , B ] {
40
- if _ , ok := e .(* gin.RouterGroup ); ok {
41
- route .Path = e .(* gin.RouterGroup ).BasePath () + route .Path
39
+ func handle [T , B any ](engine * fuego.Engine , ginRouter gin.IRouter , route * fuego.Route [T , B ], fuegoHandler gin.HandlerFunc ) * fuego.Route [T , B ] {
40
+ if _ , ok := ginRouter .(* gin.RouterGroup ); ok {
41
+ route .Path = ginRouter .(* gin.RouterGroup ).BasePath () + route .Path
42
42
}
43
43
44
- e .Handle (route .Method , route .Path , fuegoHandler )
44
+ ginRouter .Handle (route .Method , route .Path , fuegoHandler )
45
45
46
- err := route .RegisterOpenAPIOperation (openapi )
46
+ err := route .RegisterOpenAPIOperation (engine . OpenAPI )
47
47
if err != nil {
48
48
slog .Warn ("error documenting openapi operation" , "error" , err )
49
49
}
0 commit comments