mirror of
https://github.com/fnproject/fn.git
synced 2022-10-28 21:29:17 +03:00
Expose ServeRoute method on Server to allow extensions to plugin custom route handling (#1151)
This commit is contained in:
committed by
Owen Cliffe
parent
8e229ec11d
commit
23fc03c9f4
@@ -53,16 +53,16 @@ func (s *Server) handleFunctionCall2(c *gin.Context) error {
|
|||||||
// gin sets this to 404 on NoRoute, so we'll just ensure it's 200 by default.
|
// gin sets this to 404 on NoRoute, so we'll just ensure it's 200 by default.
|
||||||
c.Status(200) // this doesn't write the header yet
|
c.Status(200) // this doesn't write the header yet
|
||||||
|
|
||||||
return s.serve(c, app, route)
|
return s.ServeRoute(c, app, route)
|
||||||
}
|
}
|
||||||
|
|
||||||
var (
|
var (
|
||||||
bufPool = &sync.Pool{New: func() interface{} { return new(bytes.Buffer) }}
|
bufPool = &sync.Pool{New: func() interface{} { return new(bytes.Buffer) }}
|
||||||
)
|
)
|
||||||
|
|
||||||
// TODO it would be nice if we could make this have nothing to do with the gin.Context but meh
|
// ServeRoute serves an HTTP route for a given app
|
||||||
// TODO make async store an *http.Request? would be sexy until we have different api format...
|
// This is exported to allow extensions to plugin their own route handling
|
||||||
func (s *Server) serve(c *gin.Context, app *models.App, route *models.Route) error {
|
func (s *Server) ServeRoute(c *gin.Context, app *models.App, route *models.Route) error {
|
||||||
buf := bufPool.Get().(*bytes.Buffer)
|
buf := bufPool.Get().(*bytes.Buffer)
|
||||||
buf.Reset()
|
buf.Reset()
|
||||||
writer := syncResponseWriter{
|
writer := syncResponseWriter{
|
||||||
|
|||||||
Reference in New Issue
Block a user