github.com/cilium/cilium@v1.16.2/api/v1/server/restapi/ipam/post_ipam.go (about) 1 // Code generated by go-swagger; DO NOT EDIT. 2 3 // Copyright Authors of Cilium 4 // SPDX-License-Identifier: Apache-2.0 5 6 package ipam 7 8 // This file was generated by the swagger tool. 9 // Editing this file might prove futile when you re-run the generate command 10 11 import ( 12 "net/http" 13 14 "github.com/go-openapi/runtime/middleware" 15 ) 16 17 // PostIpamHandlerFunc turns a function with the right signature into a post ipam handler 18 type PostIpamHandlerFunc func(PostIpamParams) middleware.Responder 19 20 // Handle executing the request and returning a response 21 func (fn PostIpamHandlerFunc) Handle(params PostIpamParams) middleware.Responder { 22 return fn(params) 23 } 24 25 // PostIpamHandler interface for that can handle valid post ipam params 26 type PostIpamHandler interface { 27 Handle(PostIpamParams) middleware.Responder 28 } 29 30 // NewPostIpam creates a new http.Handler for the post ipam operation 31 func NewPostIpam(ctx *middleware.Context, handler PostIpamHandler) *PostIpam { 32 return &PostIpam{Context: ctx, Handler: handler} 33 } 34 35 /* 36 PostIpam swagger:route POST /ipam ipam postIpam 37 38 Allocate an IP address 39 */ 40 type PostIpam struct { 41 Context *middleware.Context 42 Handler PostIpamHandler 43 } 44 45 func (o *PostIpam) ServeHTTP(rw http.ResponseWriter, r *http.Request) { 46 route, rCtx, _ := o.Context.RouteInfo(r) 47 if rCtx != nil { 48 *r = *rCtx 49 } 50 var Params = NewPostIpamParams() 51 if err := o.Context.BindValidRequest(r, route, &Params); err != nil { // bind params 52 o.Context.Respond(rw, r, route.Produces, route, err) 53 return 54 } 55 56 res := o.Handler.Handle(Params) // actually handle the request 57 o.Context.Respond(rw, r, route.Produces, route, res) 58 59 }