github.com/circl-dev/go-swagger@v0.31.0/examples/stream-server/restapi/operations/elapse_parameters.go (about) 1 // Code generated by go-swagger; DO NOT EDIT. 2 3 package operations 4 5 // This file was generated by the swagger tool. 6 // Editing this file might prove futile when you re-run the swagger generate command 7 8 import ( 9 "net/http" 10 11 "github.com/go-openapi/errors" 12 "github.com/go-openapi/strfmt" 13 "github.com/go-openapi/swag" 14 "github.com/circl-dev/runtime/middleware" 15 "github.com/circl-dev/validate" 16 ) 17 18 // NewElapseParams creates a new ElapseParams object 19 // 20 // There are no default values defined in the spec. 21 func NewElapseParams() ElapseParams { 22 23 return ElapseParams{} 24 } 25 26 // ElapseParams contains all the bound params for the elapse operation 27 // typically these are obtained from a http.Request 28 // 29 // swagger:parameters elapse 30 type ElapseParams struct { 31 32 // HTTP Request Object 33 HTTPRequest *http.Request `json:"-"` 34 35 /*How many seconds to count down 36 Required: true 37 Maximum: 30 38 Minimum: 2 39 In: path 40 */ 41 Length int64 42 } 43 44 // BindRequest both binds and validates a request, it assumes that complex things implement a Validatable(strfmt.Registry) error interface 45 // for simple values it will use straight method calls. 46 // 47 // To ensure default values, the struct must have been initialized with NewElapseParams() beforehand. 48 func (o *ElapseParams) BindRequest(r *http.Request, route *middleware.MatchedRoute) error { 49 var res []error 50 51 o.HTTPRequest = r 52 53 rLength, rhkLength, _ := route.Params.GetOK("length") 54 if err := o.bindLength(rLength, rhkLength, route.Formats); err != nil { 55 res = append(res, err) 56 } 57 if len(res) > 0 { 58 return errors.CompositeValidationError(res...) 59 } 60 return nil 61 } 62 63 // bindLength binds and validates parameter Length from path. 64 func (o *ElapseParams) bindLength(rawData []string, hasKey bool, formats strfmt.Registry) error { 65 var raw string 66 if len(rawData) > 0 { 67 raw = rawData[len(rawData)-1] 68 } 69 70 // Required: true 71 // Parameter is provided by construction from the route 72 73 value, err := swag.ConvertInt64(raw) 74 if err != nil { 75 return errors.InvalidType("length", "path", "int64", raw) 76 } 77 o.Length = value 78 79 if err := o.validateLength(formats); err != nil { 80 return err 81 } 82 83 return nil 84 } 85 86 // validateLength carries on validations for parameter Length 87 func (o *ElapseParams) validateLength(formats strfmt.Registry) error { 88 89 if err := validate.MinimumInt("length", "path", o.Length, 2, false); err != nil { 90 return err 91 } 92 93 if err := validate.MaximumInt("length", "path", o.Length, 30, false); err != nil { 94 return err 95 } 96 97 return nil 98 }