github.com/circl-dev/go-swagger@v0.31.0/examples/oauth2/restapi/operations/customers/get_id.go (about) 1 // Code generated by go-swagger; DO NOT EDIT. 2 3 package customers 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 "github.com/circl-dev/go-swagger/examples/oauth2/models" 14 ) 15 16 // GetIDHandlerFunc turns a function with the right signature into a get Id handler 17 type GetIDHandlerFunc func(GetIDParams, *models.Principal) middleware.Responder 18 19 // Handle executing the request and returning a response 20 func (fn GetIDHandlerFunc) Handle(params GetIDParams, principal *models.Principal) middleware.Responder { 21 return fn(params, principal) 22 } 23 24 // GetIDHandler interface for that can handle valid get Id params 25 type GetIDHandler interface { 26 Handle(GetIDParams, *models.Principal) middleware.Responder 27 } 28 29 // NewGetID creates a new http.Handler for the get Id operation 30 func NewGetID(ctx *middleware.Context, handler GetIDHandler) *GetID { 31 return &GetID{Context: ctx, Handler: handler} 32 } 33 34 /* GetID swagger:route GET /customers customers getId 35 36 Get a customerId given an SSN 37 38 */ 39 type GetID struct { 40 Context *middleware.Context 41 Handler GetIDHandler 42 } 43 44 func (o *GetID) 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 = NewGetIDParams() 50 uprinc, aCtx, err := o.Context.Authorize(r, route) 51 if err != nil { 52 o.Context.Respond(rw, r, route.Produces, route, err) 53 return 54 } 55 if aCtx != nil { 56 *r = *aCtx 57 } 58 var principal *models.Principal 59 if uprinc != nil { 60 principal = uprinc.(*models.Principal) // this is really a models.Principal, I promise 61 } 62 63 if err := o.Context.BindValidRequest(r, route, &Params); err != nil { // bind params 64 o.Context.Respond(rw, r, route.Produces, route, err) 65 return 66 } 67 68 res := o.Handler.Handle(Params, principal) // actually handle the request 69 o.Context.Respond(rw, r, route.Produces, route, res) 70 71 }