472 lines
9.7 KiB
Go
472 lines
9.7 KiB
Go
|
// Code generated by ogen, DO NOT EDIT.
|
||
|
|
||
|
package api
|
||
|
|
||
|
import (
|
||
|
"net/http"
|
||
|
"net/url"
|
||
|
|
||
|
"github.com/go-faster/errors"
|
||
|
|
||
|
"github.com/ogen-go/ogen/conv"
|
||
|
"github.com/ogen-go/ogen/middleware"
|
||
|
"github.com/ogen-go/ogen/ogenerrors"
|
||
|
"github.com/ogen-go/ogen/uri"
|
||
|
"github.com/ogen-go/ogen/validate"
|
||
|
)
|
||
|
|
||
|
// GetUserParams is parameters of getUser operation.
|
||
|
type GetUserParams struct {
|
||
|
UserID int64
|
||
|
}
|
||
|
|
||
|
func unpackGetUserParams(packed middleware.Parameters) (params GetUserParams) {
|
||
|
{
|
||
|
key := middleware.ParameterKey{
|
||
|
Name: "UserID",
|
||
|
In: "path",
|
||
|
}
|
||
|
params.UserID = packed[key].(int64)
|
||
|
}
|
||
|
return params
|
||
|
}
|
||
|
|
||
|
func decodeGetUserParams(args [1]string, argsEscaped bool, r *http.Request) (params GetUserParams, _ error) {
|
||
|
// Decode path: UserID.
|
||
|
if err := func() error {
|
||
|
param := args[0]
|
||
|
if argsEscaped {
|
||
|
unescaped, err := url.PathUnescape(args[0])
|
||
|
if err != nil {
|
||
|
return errors.Wrap(err, "unescape path")
|
||
|
}
|
||
|
param = unescaped
|
||
|
}
|
||
|
if len(param) > 0 {
|
||
|
d := uri.NewPathDecoder(uri.PathDecoderConfig{
|
||
|
Param: "UserID",
|
||
|
Value: param,
|
||
|
Style: uri.PathStyleSimple,
|
||
|
Explode: false,
|
||
|
})
|
||
|
|
||
|
if err := func() error {
|
||
|
val, err := d.DecodeValue()
|
||
|
if err != nil {
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
c, err := conv.ToInt64(val)
|
||
|
if err != nil {
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
params.UserID = c
|
||
|
return nil
|
||
|
}(); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
} else {
|
||
|
return validate.ErrFieldRequired
|
||
|
}
|
||
|
return nil
|
||
|
}(); err != nil {
|
||
|
return params, &ogenerrors.DecodeParamError{
|
||
|
Name: "UserID",
|
||
|
In: "path",
|
||
|
Err: err,
|
||
|
}
|
||
|
}
|
||
|
return params, nil
|
||
|
}
|
||
|
|
||
|
// GetUserRankParams is parameters of getUserRank operation.
|
||
|
type GetUserRankParams struct {
|
||
|
UserID int64
|
||
|
StyleID int32
|
||
|
GameID int32
|
||
|
ModeID int32
|
||
|
}
|
||
|
|
||
|
func unpackGetUserRankParams(packed middleware.Parameters) (params GetUserRankParams) {
|
||
|
{
|
||
|
key := middleware.ParameterKey{
|
||
|
Name: "UserID",
|
||
|
In: "path",
|
||
|
}
|
||
|
params.UserID = packed[key].(int64)
|
||
|
}
|
||
|
{
|
||
|
key := middleware.ParameterKey{
|
||
|
Name: "StyleID",
|
||
|
In: "query",
|
||
|
}
|
||
|
params.StyleID = packed[key].(int32)
|
||
|
}
|
||
|
{
|
||
|
key := middleware.ParameterKey{
|
||
|
Name: "GameID",
|
||
|
In: "query",
|
||
|
}
|
||
|
params.GameID = packed[key].(int32)
|
||
|
}
|
||
|
{
|
||
|
key := middleware.ParameterKey{
|
||
|
Name: "ModeID",
|
||
|
In: "query",
|
||
|
}
|
||
|
params.ModeID = packed[key].(int32)
|
||
|
}
|
||
|
return params
|
||
|
}
|
||
|
|
||
|
func decodeGetUserRankParams(args [1]string, argsEscaped bool, r *http.Request) (params GetUserRankParams, _ error) {
|
||
|
q := uri.NewQueryDecoder(r.URL.Query())
|
||
|
// Decode path: UserID.
|
||
|
if err := func() error {
|
||
|
param := args[0]
|
||
|
if argsEscaped {
|
||
|
unescaped, err := url.PathUnescape(args[0])
|
||
|
if err != nil {
|
||
|
return errors.Wrap(err, "unescape path")
|
||
|
}
|
||
|
param = unescaped
|
||
|
}
|
||
|
if len(param) > 0 {
|
||
|
d := uri.NewPathDecoder(uri.PathDecoderConfig{
|
||
|
Param: "UserID",
|
||
|
Value: param,
|
||
|
Style: uri.PathStyleSimple,
|
||
|
Explode: false,
|
||
|
})
|
||
|
|
||
|
if err := func() error {
|
||
|
val, err := d.DecodeValue()
|
||
|
if err != nil {
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
c, err := conv.ToInt64(val)
|
||
|
if err != nil {
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
params.UserID = c
|
||
|
return nil
|
||
|
}(); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
} else {
|
||
|
return validate.ErrFieldRequired
|
||
|
}
|
||
|
return nil
|
||
|
}(); err != nil {
|
||
|
return params, &ogenerrors.DecodeParamError{
|
||
|
Name: "UserID",
|
||
|
In: "path",
|
||
|
Err: err,
|
||
|
}
|
||
|
}
|
||
|
// Decode query: StyleID.
|
||
|
if err := func() error {
|
||
|
cfg := uri.QueryParameterDecodingConfig{
|
||
|
Name: "StyleID",
|
||
|
Style: uri.QueryStyleForm,
|
||
|
Explode: true,
|
||
|
}
|
||
|
|
||
|
if err := q.HasParam(cfg); err == nil {
|
||
|
if err := q.DecodeParam(cfg, func(d uri.Decoder) error {
|
||
|
val, err := d.DecodeValue()
|
||
|
if err != nil {
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
c, err := conv.ToInt32(val)
|
||
|
if err != nil {
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
params.StyleID = c
|
||
|
return nil
|
||
|
}); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
} else {
|
||
|
return validate.ErrFieldRequired
|
||
|
}
|
||
|
return nil
|
||
|
}(); err != nil {
|
||
|
return params, &ogenerrors.DecodeParamError{
|
||
|
Name: "StyleID",
|
||
|
In: "query",
|
||
|
Err: err,
|
||
|
}
|
||
|
}
|
||
|
// Decode query: GameID.
|
||
|
if err := func() error {
|
||
|
cfg := uri.QueryParameterDecodingConfig{
|
||
|
Name: "GameID",
|
||
|
Style: uri.QueryStyleForm,
|
||
|
Explode: true,
|
||
|
}
|
||
|
|
||
|
if err := q.HasParam(cfg); err == nil {
|
||
|
if err := q.DecodeParam(cfg, func(d uri.Decoder) error {
|
||
|
val, err := d.DecodeValue()
|
||
|
if err != nil {
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
c, err := conv.ToInt32(val)
|
||
|
if err != nil {
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
params.GameID = c
|
||
|
return nil
|
||
|
}); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
} else {
|
||
|
return validate.ErrFieldRequired
|
||
|
}
|
||
|
return nil
|
||
|
}(); err != nil {
|
||
|
return params, &ogenerrors.DecodeParamError{
|
||
|
Name: "GameID",
|
||
|
In: "query",
|
||
|
Err: err,
|
||
|
}
|
||
|
}
|
||
|
// Decode query: ModeID.
|
||
|
if err := func() error {
|
||
|
cfg := uri.QueryParameterDecodingConfig{
|
||
|
Name: "ModeID",
|
||
|
Style: uri.QueryStyleForm,
|
||
|
Explode: true,
|
||
|
}
|
||
|
|
||
|
if err := q.HasParam(cfg); err == nil {
|
||
|
if err := q.DecodeParam(cfg, func(d uri.Decoder) error {
|
||
|
val, err := d.DecodeValue()
|
||
|
if err != nil {
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
c, err := conv.ToInt32(val)
|
||
|
if err != nil {
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
params.ModeID = c
|
||
|
return nil
|
||
|
}); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
} else {
|
||
|
return validate.ErrFieldRequired
|
||
|
}
|
||
|
return nil
|
||
|
}(); err != nil {
|
||
|
return params, &ogenerrors.DecodeParamError{
|
||
|
Name: "ModeID",
|
||
|
In: "query",
|
||
|
Err: err,
|
||
|
}
|
||
|
}
|
||
|
return params, nil
|
||
|
}
|
||
|
|
||
|
// ListRanksParams is parameters of listRanks operation.
|
||
|
type ListRanksParams struct {
|
||
|
Page Pagination
|
||
|
Filter OptRankFilter
|
||
|
}
|
||
|
|
||
|
func unpackListRanksParams(packed middleware.Parameters) (params ListRanksParams) {
|
||
|
{
|
||
|
key := middleware.ParameterKey{
|
||
|
Name: "page",
|
||
|
In: "query",
|
||
|
}
|
||
|
params.Page = packed[key].(Pagination)
|
||
|
}
|
||
|
{
|
||
|
key := middleware.ParameterKey{
|
||
|
Name: "filter",
|
||
|
In: "query",
|
||
|
}
|
||
|
if v, ok := packed[key]; ok {
|
||
|
params.Filter = v.(OptRankFilter)
|
||
|
}
|
||
|
}
|
||
|
return params
|
||
|
}
|
||
|
|
||
|
func decodeListRanksParams(args [0]string, argsEscaped bool, r *http.Request) (params ListRanksParams, _ error) {
|
||
|
q := uri.NewQueryDecoder(r.URL.Query())
|
||
|
// Decode query: page.
|
||
|
if err := func() error {
|
||
|
cfg := uri.QueryParameterDecodingConfig{
|
||
|
Name: "page",
|
||
|
Style: uri.QueryStyleForm,
|
||
|
Explode: true,
|
||
|
Fields: []uri.QueryParameterObjectField{{"Page", true}, {"Limit", true}},
|
||
|
}
|
||
|
|
||
|
if err := q.HasParam(cfg); err == nil {
|
||
|
if err := q.DecodeParam(cfg, func(d uri.Decoder) error {
|
||
|
return params.Page.DecodeURI(d)
|
||
|
}); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
if err := func() error {
|
||
|
if err := params.Page.Validate(); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
return nil
|
||
|
}(); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
} else {
|
||
|
return validate.ErrFieldRequired
|
||
|
}
|
||
|
return nil
|
||
|
}(); err != nil {
|
||
|
return params, &ogenerrors.DecodeParamError{
|
||
|
Name: "page",
|
||
|
In: "query",
|
||
|
Err: err,
|
||
|
}
|
||
|
}
|
||
|
// Decode query: filter.
|
||
|
if err := func() error {
|
||
|
cfg := uri.QueryParameterDecodingConfig{
|
||
|
Name: "filter",
|
||
|
Style: uri.QueryStyleForm,
|
||
|
Explode: true,
|
||
|
Fields: []uri.QueryParameterObjectField{{"StyleID", false}, {"GameID", false}, {"ModeID", false}, {"Sort", false}},
|
||
|
}
|
||
|
|
||
|
if err := q.HasParam(cfg); err == nil {
|
||
|
if err := q.DecodeParam(cfg, func(d uri.Decoder) error {
|
||
|
var paramsDotFilterVal RankFilter
|
||
|
if err := func() error {
|
||
|
return paramsDotFilterVal.DecodeURI(d)
|
||
|
}(); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
params.Filter.SetTo(paramsDotFilterVal)
|
||
|
return nil
|
||
|
}); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
}
|
||
|
return nil
|
||
|
}(); err != nil {
|
||
|
return params, &ogenerrors.DecodeParamError{
|
||
|
Name: "filter",
|
||
|
In: "query",
|
||
|
Err: err,
|
||
|
}
|
||
|
}
|
||
|
return params, nil
|
||
|
}
|
||
|
|
||
|
// ListTimesParams is parameters of listTimes operation.
|
||
|
type ListTimesParams struct {
|
||
|
Page Pagination
|
||
|
Filter OptTimeFilter
|
||
|
}
|
||
|
|
||
|
func unpackListTimesParams(packed middleware.Parameters) (params ListTimesParams) {
|
||
|
{
|
||
|
key := middleware.ParameterKey{
|
||
|
Name: "page",
|
||
|
In: "query",
|
||
|
}
|
||
|
params.Page = packed[key].(Pagination)
|
||
|
}
|
||
|
{
|
||
|
key := middleware.ParameterKey{
|
||
|
Name: "filter",
|
||
|
In: "query",
|
||
|
}
|
||
|
if v, ok := packed[key]; ok {
|
||
|
params.Filter = v.(OptTimeFilter)
|
||
|
}
|
||
|
}
|
||
|
return params
|
||
|
}
|
||
|
|
||
|
func decodeListTimesParams(args [0]string, argsEscaped bool, r *http.Request) (params ListTimesParams, _ error) {
|
||
|
q := uri.NewQueryDecoder(r.URL.Query())
|
||
|
// Decode query: page.
|
||
|
if err := func() error {
|
||
|
cfg := uri.QueryParameterDecodingConfig{
|
||
|
Name: "page",
|
||
|
Style: uri.QueryStyleForm,
|
||
|
Explode: true,
|
||
|
Fields: []uri.QueryParameterObjectField{{"Page", true}, {"Limit", true}},
|
||
|
}
|
||
|
|
||
|
if err := q.HasParam(cfg); err == nil {
|
||
|
if err := q.DecodeParam(cfg, func(d uri.Decoder) error {
|
||
|
return params.Page.DecodeURI(d)
|
||
|
}); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
if err := func() error {
|
||
|
if err := params.Page.Validate(); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
return nil
|
||
|
}(); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
} else {
|
||
|
return validate.ErrFieldRequired
|
||
|
}
|
||
|
return nil
|
||
|
}(); err != nil {
|
||
|
return params, &ogenerrors.DecodeParamError{
|
||
|
Name: "page",
|
||
|
In: "query",
|
||
|
Err: err,
|
||
|
}
|
||
|
}
|
||
|
// Decode query: filter.
|
||
|
if err := func() error {
|
||
|
cfg := uri.QueryParameterDecodingConfig{
|
||
|
Name: "filter",
|
||
|
Style: uri.QueryStyleForm,
|
||
|
Explode: true,
|
||
|
Fields: []uri.QueryParameterObjectField{{"ID", false}, {"Time", false}, {"UserID", false}, {"MapID", false}, {"StyleID", false}, {"ModeID", false}, {"GameID", false}},
|
||
|
}
|
||
|
|
||
|
if err := q.HasParam(cfg); err == nil {
|
||
|
if err := q.DecodeParam(cfg, func(d uri.Decoder) error {
|
||
|
var paramsDotFilterVal TimeFilter
|
||
|
if err := func() error {
|
||
|
return paramsDotFilterVal.DecodeURI(d)
|
||
|
}(); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
params.Filter.SetTo(paramsDotFilterVal)
|
||
|
return nil
|
||
|
}); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
}
|
||
|
return nil
|
||
|
}(); err != nil {
|
||
|
return params, &ogenerrors.DecodeParamError{
|
||
|
Name: "filter",
|
||
|
In: "query",
|
||
|
Err: err,
|
||
|
}
|
||
|
}
|
||
|
return params, nil
|
||
|
}
|