github.com/emreu/go-swagger@v0.22.1/examples/task-tracker/restapi/operations/tasks/upload_task_file.go (about) 1 // Code generated by go-swagger; DO NOT EDIT. 2 3 package tasks 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 middleware "github.com/go-openapi/runtime/middleware" 12 ) 13 14 // UploadTaskFileHandlerFunc turns a function with the right signature into a upload task file handler 15 type UploadTaskFileHandlerFunc func(UploadTaskFileParams, interface{}) middleware.Responder 16 17 // Handle executing the request and returning a response 18 func (fn UploadTaskFileHandlerFunc) Handle(params UploadTaskFileParams, principal interface{}) middleware.Responder { 19 return fn(params, principal) 20 } 21 22 // UploadTaskFileHandler interface for that can handle valid upload task file params 23 type UploadTaskFileHandler interface { 24 Handle(UploadTaskFileParams, interface{}) middleware.Responder 25 } 26 27 // NewUploadTaskFile creates a new http.Handler for the upload task file operation 28 func NewUploadTaskFile(ctx *middleware.Context, handler UploadTaskFileHandler) *UploadTaskFile { 29 return &UploadTaskFile{Context: ctx, Handler: handler} 30 } 31 32 /*UploadTaskFile swagger:route POST /tasks/{id}/files tasks uploadTaskFile 33 34 Adds a file to a task. 35 36 The file can't be larger than **5MB** 37 38 */ 39 type UploadTaskFile struct { 40 Context *middleware.Context 41 Handler UploadTaskFileHandler 42 } 43 44 func (o *UploadTaskFile) ServeHTTP(rw http.ResponseWriter, r *http.Request) { 45 route, rCtx, _ := o.Context.RouteInfo(r) 46 if rCtx != nil { 47 r = rCtx 48 } 49 var Params = NewUploadTaskFileParams() 50 51 uprinc, aCtx, err := o.Context.Authorize(r, route) 52 if err != nil { 53 o.Context.Respond(rw, r, route.Produces, route, err) 54 return 55 } 56 if aCtx != nil { 57 r = aCtx 58 } 59 var principal interface{} 60 if uprinc != nil { 61 principal = uprinc 62 } 63 64 if err := o.Context.BindValidRequest(r, route, &Params); err != nil { // bind params 65 o.Context.Respond(rw, r, route.Produces, route, err) 66 return 67 } 68 69 res := o.Handler.Handle(Params, principal) // actually handle the request 70 71 o.Context.Respond(rw, r, route.Produces, route, res) 72 73 }