github.com/circl-dev/go-swagger@v0.31.0/examples/todo-list-strict/restapi/operations/todos/find.go (about) 1 // Code generated by go-swagger; DO NOT EDIT. 2 3 package todos 4 5 // This file was generated by the swagger tool. 6 // Editing this file might prove futile when you re-run the generate command 7 8 import ( 9 "net/http" 10 11 "github.com/circl-dev/runtime/middleware" 12 ) 13 14 // FindHandlerFunc turns a function with the right signature into a find handler 15 type FindHandlerFunc func(FindParams, interface{}) FindResponder 16 17 // Handle executing the request and returning a response 18 func (fn FindHandlerFunc) Handle(params FindParams, principal interface{}) FindResponder { 19 return fn(params, principal) 20 } 21 22 // FindHandler interface for that can handle valid find params 23 type FindHandler interface { 24 Handle(FindParams, interface{}) FindResponder 25 } 26 27 // NewFind creates a new http.Handler for the find operation 28 func NewFind(ctx *middleware.Context, handler FindHandler) *Find { 29 return &Find{Context: ctx, Handler: handler} 30 } 31 32 /*Find swagger:route GET / todos find 33 34 Find find API 35 36 */ 37 type Find struct { 38 Context *middleware.Context 39 Handler FindHandler 40 } 41 42 func (o *Find) ServeHTTP(rw http.ResponseWriter, r *http.Request) { 43 route, rCtx, _ := o.Context.RouteInfo(r) 44 if rCtx != nil { 45 r = rCtx 46 } 47 var Params = NewFindParams() 48 49 uprinc, aCtx, err := o.Context.Authorize(r, route) 50 if err != nil { 51 o.Context.Respond(rw, r, route.Produces, route, err) 52 return 53 } 54 if aCtx != nil { 55 r = aCtx 56 } 57 var principal interface{} 58 if uprinc != nil { 59 principal = uprinc 60 } 61 62 if err := o.Context.BindValidRequest(r, route, &Params); err != nil { // bind params 63 o.Context.Respond(rw, r, route.Produces, route, err) 64 return 65 } 66 67 res := o.Handler.Handle(Params, principal) // actually handle the request 68 69 o.Context.Respond(rw, r, route.Produces, route, res) 70 71 }