// Code generated by go-swagger; DO NOT EDIT. package companies // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command import ( "net/http" "github.com/go-openapi/errors" "github.com/go-openapi/runtime" "github.com/go-openapi/runtime/middleware" "github.com/go-openapi/swag" "github.com/go-openapi/validate" strfmt "github.com/go-openapi/strfmt" ) // NewGetCompaniesParams creates a new GetCompaniesParams object // with the default values initialized. func NewGetCompaniesParams() GetCompaniesParams { var ( // initialize parameters with default values pageDefault = int64(1) perPageDefault = int64(200) sortDefault = string("id") ) return GetCompaniesParams{ Page: &pageDefault, PerPage: &perPageDefault, Sort: &sortDefault, } } // GetCompaniesParams contains all the bound params for the get companies operation // typically these are obtained from a http.Request // // swagger:parameters GetCompanies type GetCompaniesParams struct { // HTTP Request Object HTTPRequest *http.Request `json:"-"` /*Page number Minimum: 1 In: query Default: 1 */ Page *int64 /*Items per page Maximum: 200 Minimum: 1 In: query Default: 200 */ PerPage *int64 /*Sorting column In: query Default: "id" */ Sort *string } // BindRequest both binds and validates a request, it assumes that complex things implement a Validatable(strfmt.Registry) error interface // for simple values it will use straight method calls. // // To ensure default values, the struct must have been initialized with NewGetCompaniesParams() beforehand. func (o *GetCompaniesParams) BindRequest(r *http.Request, route *middleware.MatchedRoute) error { var res []error o.HTTPRequest = r qs := runtime.Values(r.URL.Query()) qPage, qhkPage, _ := qs.GetOK("page") if err := o.bindPage(qPage, qhkPage, route.Formats); err != nil { res = append(res, err) } qPerPage, qhkPerPage, _ := qs.GetOK("per_page") if err := o.bindPerPage(qPerPage, qhkPerPage, route.Formats); err != nil { res = append(res, err) } qSort, qhkSort, _ := qs.GetOK("sort") if err := o.bindSort(qSort, qhkSort, route.Formats); err != nil { res = append(res, err) } if len(res) > 0 { return errors.CompositeValidationError(res...) } return nil } // bindPage binds and validates parameter Page from query. func (o *GetCompaniesParams) bindPage(rawData []string, hasKey bool, formats strfmt.Registry) error { var raw string if len(rawData) > 0 { raw = rawData[len(rawData)-1] } // Required: false // AllowEmptyValue: false if raw == "" { // empty values pass all other validations // Default values have been previously initialized by NewGetCompaniesParams() return nil } value, err := swag.ConvertInt64(raw) if err != nil { return errors.InvalidType("page", "query", "int64", raw) } o.Page = &value if err := o.validatePage(formats); err != nil { return err } return nil } // validatePage carries on validations for parameter Page func (o *GetCompaniesParams) validatePage(formats strfmt.Registry) error { if err := validate.MinimumInt("page", "query", int64(*o.Page), 1, false); err != nil { return err } return nil } // bindPerPage binds and validates parameter PerPage from query. func (o *GetCompaniesParams) bindPerPage(rawData []string, hasKey bool, formats strfmt.Registry) error { var raw string if len(rawData) > 0 { raw = rawData[len(rawData)-1] } // Required: false // AllowEmptyValue: false if raw == "" { // empty values pass all other validations // Default values have been previously initialized by NewGetCompaniesParams() return nil } value, err := swag.ConvertInt64(raw) if err != nil { return errors.InvalidType("per_page", "query", "int64", raw) } o.PerPage = &value if err := o.validatePerPage(formats); err != nil { return err } return nil } // validatePerPage carries on validations for parameter PerPage func (o *GetCompaniesParams) validatePerPage(formats strfmt.Registry) error { if err := validate.MinimumInt("per_page", "query", int64(*o.PerPage), 1, false); err != nil { return err } if err := validate.MaximumInt("per_page", "query", int64(*o.PerPage), 200, false); err != nil { return err } return nil } // bindSort binds and validates parameter Sort from query. func (o *GetCompaniesParams) bindSort(rawData []string, hasKey bool, formats strfmt.Registry) error { var raw string if len(rawData) > 0 { raw = rawData[len(rawData)-1] } // Required: false // AllowEmptyValue: false if raw == "" { // empty values pass all other validations // Default values have been previously initialized by NewGetCompaniesParams() return nil } o.Sort = &raw if err := o.validateSort(formats); err != nil { return err } return nil } // validateSort carries on validations for parameter Sort func (o *GetCompaniesParams) validateSort(formats strfmt.Registry) error { if err := validate.Enum("sort", "query", *o.Sort, []interface{}{"id", "id:asc", "id:desc", "name", "name:asc", "name:desc"}); err != nil { return err } return nil }