472 lines
10 KiB
Go
472 lines
10 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{{Name: "Page", Required: true}, {Name: "Limit", Required: 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{{Name: "StyleID", Required: false}, {Name: "GameID", Required: false}, {Name: "ModeID", Required: false}, {Name: "Sort", Required: 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{{Name: "Page", Required: true}, {Name: "Limit", Required: 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{{Name: "ID", Required: false}, {Name: "Time", Required: false}, {Name: "UserID", Required: false}, {Name: "MapID", Required: false}, {Name: "StyleID", Required: false}, {Name: "ModeID", Required: false}, {Name: "GameID", Required: 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
|
|
}
|