// 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) } }