1
0
api/ent/ogent/oas_req_dec_gen.go
2022-08-31 15:18:14 +09:00

160 lines
3.3 KiB
Go

// Code generated by ogen, DO NOT EDIT.
package ogent
import (
"bytes"
"context"
"fmt"
"io"
"math"
"math/big"
"math/bits"
"net"
"net/http"
"net/url"
"regexp"
"sort"
"strconv"
"strings"
"sync"
"time"
"github.com/go-faster/errors"
"github.com/go-faster/jx"
"github.com/google/uuid"
"github.com/ogen-go/ogen/conv"
ht "github.com/ogen-go/ogen/http"
"github.com/ogen-go/ogen/json"
"github.com/ogen-go/ogen/otelogen"
"github.com/ogen-go/ogen/uri"
"github.com/ogen-go/ogen/validate"
"go.opentelemetry.io/otel"
"go.opentelemetry.io/otel/attribute"
"go.opentelemetry.io/otel/codes"
"go.opentelemetry.io/otel/metric"
"go.opentelemetry.io/otel/trace"
)
// No-op definition for keeping imports.
var (
_ = context.Background()
_ = fmt.Stringer(nil)
_ = strings.Builder{}
_ = errors.Is
_ = sort.Ints
_ = http.MethodGet
_ = io.Copy
_ = json.Marshal
_ = bytes.NewReader
_ = strconv.ParseInt
_ = time.Time{}
_ = conv.ToInt32
_ = uuid.UUID{}
_ = uri.PathEncoder{}
_ = url.URL{}
_ = math.Mod
_ = bits.LeadingZeros64
_ = big.Rat{}
_ = validate.Int{}
_ = ht.NewRequest
_ = net.IP{}
_ = otelogen.Version
_ = attribute.KeyValue{}
_ = trace.TraceIDFromHex
_ = otel.GetTracerProvider
_ = metric.NewNoopMeterProvider
_ = regexp.MustCompile
_ = jx.Null
_ = sync.Pool{}
_ = codes.Unset
)
func decodeCreateUsersRequest(r *http.Request, span trace.Span) (req CreateUsersReq, err error) {
switch ct := r.Header.Get("Content-Type"); ct {
case "application/json":
if r.ContentLength == 0 {
return req, validate.ErrBodyRequired
}
var request CreateUsersReq
buf := getBuf()
defer putBuf(buf)
written, err := io.Copy(buf, r.Body)
if err != nil {
return req, err
}
if written == 0 {
return req, validate.ErrBodyRequired
}
d := jx.GetDecoder()
defer jx.PutDecoder(d)
d.ResetBytes(buf.Bytes())
if err := func() error {
if err := request.Decode(d); err != nil {
return err
}
return nil
}(); err != nil {
return req, errors.Wrap(err, "decode CreateUsers:application/json request")
}
if err := func() error {
if err := request.Validate(); err != nil {
return err
}
return nil
}(); err != nil {
return req, errors.Wrap(err, "validate CreateUsers request")
}
return request, nil
default:
return req, validate.InvalidContentType(ct)
}
}
func decodeUpdateUsersRequest(r *http.Request, span trace.Span) (req UpdateUsersReq, err error) {
switch ct := r.Header.Get("Content-Type"); ct {
case "application/json":
if r.ContentLength == 0 {
return req, validate.ErrBodyRequired
}
var request UpdateUsersReq
buf := getBuf()
defer putBuf(buf)
written, err := io.Copy(buf, r.Body)
if err != nil {
return req, err
}
if written == 0 {
return req, validate.ErrBodyRequired
}
d := jx.GetDecoder()
defer jx.PutDecoder(d)
d.ResetBytes(buf.Bytes())
if err := func() error {
if err := request.Decode(d); err != nil {
return err
}
return nil
}(); err != nil {
return req, errors.Wrap(err, "decode UpdateUsers:application/json request")
}
if err := func() error {
if err := request.Validate(); err != nil {
return err
}
return nil
}(); err != nil {
return req, errors.Wrap(err, "validate UpdateUsers request")
}
return request, nil
default:
return req, validate.InvalidContentType(ct)
}
}