first
This commit is contained in:
390
ent/ogent/oas_handlers_gen.go
Normal file
390
ent/ogent/oas_handlers_gen.go
Normal file
@@ -0,0 +1,390 @@
|
||||
// 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
|
||||
)
|
||||
|
||||
// HandleCreateUsersRequest handles createUsers operation.
|
||||
//
|
||||
// POST /users
|
||||
func (s *Server) handleCreateUsersRequest(args [0]string, w http.ResponseWriter, r *http.Request) {
|
||||
startTime := time.Now()
|
||||
otelAttrs := []attribute.KeyValue{
|
||||
otelogen.OperationID("createUsers"),
|
||||
}
|
||||
ctx, span := s.cfg.Tracer.Start(r.Context(), "CreateUsers",
|
||||
trace.WithAttributes(otelAttrs...),
|
||||
trace.WithSpanKind(trace.SpanKindServer),
|
||||
)
|
||||
s.requests.Add(ctx, 1, otelAttrs...)
|
||||
defer span.End()
|
||||
|
||||
var err error
|
||||
request, err := decodeCreateUsersRequest(r, span)
|
||||
if err != nil {
|
||||
s.badRequest(ctx, w, span, otelAttrs, err)
|
||||
return
|
||||
}
|
||||
|
||||
response, err := s.h.CreateUsers(ctx, request)
|
||||
if err != nil {
|
||||
span.RecordError(err)
|
||||
span.SetStatus(codes.Error, "Internal")
|
||||
s.errors.Add(ctx, 1, otelAttrs...)
|
||||
respondError(w, http.StatusInternalServerError, err)
|
||||
return
|
||||
}
|
||||
|
||||
if err := encodeCreateUsersResponse(response, w, span); err != nil {
|
||||
span.RecordError(err)
|
||||
span.SetStatus(codes.Error, "Response")
|
||||
s.errors.Add(ctx, 1, otelAttrs...)
|
||||
return
|
||||
}
|
||||
span.SetStatus(codes.Ok, "Ok")
|
||||
elapsedDuration := time.Since(startTime)
|
||||
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
|
||||
}
|
||||
|
||||
// HandleDeleteUsersRequest handles deleteUsers operation.
|
||||
//
|
||||
// DELETE /users/{id}
|
||||
func (s *Server) handleDeleteUsersRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
|
||||
startTime := time.Now()
|
||||
otelAttrs := []attribute.KeyValue{
|
||||
otelogen.OperationID("deleteUsers"),
|
||||
}
|
||||
ctx, span := s.cfg.Tracer.Start(r.Context(), "DeleteUsers",
|
||||
trace.WithAttributes(otelAttrs...),
|
||||
trace.WithSpanKind(trace.SpanKindServer),
|
||||
)
|
||||
s.requests.Add(ctx, 1, otelAttrs...)
|
||||
defer span.End()
|
||||
|
||||
var err error
|
||||
params, err := decodeDeleteUsersParams(args, r)
|
||||
if err != nil {
|
||||
s.badRequest(ctx, w, span, otelAttrs, err)
|
||||
return
|
||||
}
|
||||
|
||||
response, err := s.h.DeleteUsers(ctx, params)
|
||||
if err != nil {
|
||||
span.RecordError(err)
|
||||
span.SetStatus(codes.Error, "Internal")
|
||||
s.errors.Add(ctx, 1, otelAttrs...)
|
||||
respondError(w, http.StatusInternalServerError, err)
|
||||
return
|
||||
}
|
||||
|
||||
if err := encodeDeleteUsersResponse(response, w, span); err != nil {
|
||||
span.RecordError(err)
|
||||
span.SetStatus(codes.Error, "Response")
|
||||
s.errors.Add(ctx, 1, otelAttrs...)
|
||||
return
|
||||
}
|
||||
span.SetStatus(codes.Ok, "Ok")
|
||||
elapsedDuration := time.Since(startTime)
|
||||
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
|
||||
}
|
||||
|
||||
// HandleDrawDoneRequest handles drawDone operation.
|
||||
//
|
||||
// PUT /users/{id}/d
|
||||
func (s *Server) handleDrawDoneRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
|
||||
startTime := time.Now()
|
||||
otelAttrs := []attribute.KeyValue{
|
||||
otelogen.OperationID("drawDone"),
|
||||
}
|
||||
ctx, span := s.cfg.Tracer.Start(r.Context(), "DrawDone",
|
||||
trace.WithAttributes(otelAttrs...),
|
||||
trace.WithSpanKind(trace.SpanKindServer),
|
||||
)
|
||||
s.requests.Add(ctx, 1, otelAttrs...)
|
||||
defer span.End()
|
||||
|
||||
var err error
|
||||
params, err := decodeDrawDoneParams(args, r)
|
||||
if err != nil {
|
||||
s.badRequest(ctx, w, span, otelAttrs, err)
|
||||
return
|
||||
}
|
||||
|
||||
response, err := s.h.DrawDone(ctx, params)
|
||||
if err != nil {
|
||||
span.RecordError(err)
|
||||
span.SetStatus(codes.Error, "Internal")
|
||||
s.errors.Add(ctx, 1, otelAttrs...)
|
||||
respondError(w, http.StatusInternalServerError, err)
|
||||
return
|
||||
}
|
||||
|
||||
if err := encodeDrawDoneResponse(response, w, span); err != nil {
|
||||
span.RecordError(err)
|
||||
span.SetStatus(codes.Error, "Response")
|
||||
s.errors.Add(ctx, 1, otelAttrs...)
|
||||
return
|
||||
}
|
||||
span.SetStatus(codes.Ok, "Ok")
|
||||
elapsedDuration := time.Since(startTime)
|
||||
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
|
||||
}
|
||||
|
||||
// HandleDrawStartRequest handles drawStart operation.
|
||||
//
|
||||
// PATCH /users/{id}/start
|
||||
func (s *Server) handleDrawStartRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
|
||||
startTime := time.Now()
|
||||
otelAttrs := []attribute.KeyValue{
|
||||
otelogen.OperationID("drawStart"),
|
||||
}
|
||||
ctx, span := s.cfg.Tracer.Start(r.Context(), "DrawStart",
|
||||
trace.WithAttributes(otelAttrs...),
|
||||
trace.WithSpanKind(trace.SpanKindServer),
|
||||
)
|
||||
s.requests.Add(ctx, 1, otelAttrs...)
|
||||
defer span.End()
|
||||
|
||||
var err error
|
||||
params, err := decodeDrawStartParams(args, r)
|
||||
if err != nil {
|
||||
s.badRequest(ctx, w, span, otelAttrs, err)
|
||||
return
|
||||
}
|
||||
|
||||
response, err := s.h.DrawStart(ctx, params)
|
||||
if err != nil {
|
||||
span.RecordError(err)
|
||||
span.SetStatus(codes.Error, "Internal")
|
||||
s.errors.Add(ctx, 1, otelAttrs...)
|
||||
respondError(w, http.StatusInternalServerError, err)
|
||||
return
|
||||
}
|
||||
|
||||
if err := encodeDrawStartResponse(response, w, span); err != nil {
|
||||
span.RecordError(err)
|
||||
span.SetStatus(codes.Error, "Response")
|
||||
s.errors.Add(ctx, 1, otelAttrs...)
|
||||
return
|
||||
}
|
||||
span.SetStatus(codes.Ok, "Ok")
|
||||
elapsedDuration := time.Since(startTime)
|
||||
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
|
||||
}
|
||||
|
||||
// HandleListUsersRequest handles listUsers operation.
|
||||
//
|
||||
// GET /users
|
||||
func (s *Server) handleListUsersRequest(args [0]string, w http.ResponseWriter, r *http.Request) {
|
||||
startTime := time.Now()
|
||||
otelAttrs := []attribute.KeyValue{
|
||||
otelogen.OperationID("listUsers"),
|
||||
}
|
||||
ctx, span := s.cfg.Tracer.Start(r.Context(), "ListUsers",
|
||||
trace.WithAttributes(otelAttrs...),
|
||||
trace.WithSpanKind(trace.SpanKindServer),
|
||||
)
|
||||
s.requests.Add(ctx, 1, otelAttrs...)
|
||||
defer span.End()
|
||||
|
||||
var err error
|
||||
params, err := decodeListUsersParams(args, r)
|
||||
if err != nil {
|
||||
s.badRequest(ctx, w, span, otelAttrs, err)
|
||||
return
|
||||
}
|
||||
|
||||
response, err := s.h.ListUsers(ctx, params)
|
||||
if err != nil {
|
||||
span.RecordError(err)
|
||||
span.SetStatus(codes.Error, "Internal")
|
||||
s.errors.Add(ctx, 1, otelAttrs...)
|
||||
respondError(w, http.StatusInternalServerError, err)
|
||||
return
|
||||
}
|
||||
|
||||
if err := encodeListUsersResponse(response, w, span); err != nil {
|
||||
span.RecordError(err)
|
||||
span.SetStatus(codes.Error, "Response")
|
||||
s.errors.Add(ctx, 1, otelAttrs...)
|
||||
return
|
||||
}
|
||||
span.SetStatus(codes.Ok, "Ok")
|
||||
elapsedDuration := time.Since(startTime)
|
||||
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
|
||||
}
|
||||
|
||||
// HandleReadUsersRequest handles readUsers operation.
|
||||
//
|
||||
// GET /users/{id}
|
||||
func (s *Server) handleReadUsersRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
|
||||
startTime := time.Now()
|
||||
otelAttrs := []attribute.KeyValue{
|
||||
otelogen.OperationID("readUsers"),
|
||||
}
|
||||
ctx, span := s.cfg.Tracer.Start(r.Context(), "ReadUsers",
|
||||
trace.WithAttributes(otelAttrs...),
|
||||
trace.WithSpanKind(trace.SpanKindServer),
|
||||
)
|
||||
s.requests.Add(ctx, 1, otelAttrs...)
|
||||
defer span.End()
|
||||
|
||||
var err error
|
||||
params, err := decodeReadUsersParams(args, r)
|
||||
if err != nil {
|
||||
s.badRequest(ctx, w, span, otelAttrs, err)
|
||||
return
|
||||
}
|
||||
|
||||
response, err := s.h.ReadUsers(ctx, params)
|
||||
if err != nil {
|
||||
span.RecordError(err)
|
||||
span.SetStatus(codes.Error, "Internal")
|
||||
s.errors.Add(ctx, 1, otelAttrs...)
|
||||
respondError(w, http.StatusInternalServerError, err)
|
||||
return
|
||||
}
|
||||
|
||||
if err := encodeReadUsersResponse(response, w, span); err != nil {
|
||||
span.RecordError(err)
|
||||
span.SetStatus(codes.Error, "Response")
|
||||
s.errors.Add(ctx, 1, otelAttrs...)
|
||||
return
|
||||
}
|
||||
span.SetStatus(codes.Ok, "Ok")
|
||||
elapsedDuration := time.Since(startTime)
|
||||
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
|
||||
}
|
||||
|
||||
// HandleUpdateUsersRequest handles updateUsers operation.
|
||||
//
|
||||
// PATCH /users/{id}
|
||||
func (s *Server) handleUpdateUsersRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
|
||||
startTime := time.Now()
|
||||
otelAttrs := []attribute.KeyValue{
|
||||
otelogen.OperationID("updateUsers"),
|
||||
}
|
||||
ctx, span := s.cfg.Tracer.Start(r.Context(), "UpdateUsers",
|
||||
trace.WithAttributes(otelAttrs...),
|
||||
trace.WithSpanKind(trace.SpanKindServer),
|
||||
)
|
||||
s.requests.Add(ctx, 1, otelAttrs...)
|
||||
defer span.End()
|
||||
|
||||
var err error
|
||||
params, err := decodeUpdateUsersParams(args, r)
|
||||
if err != nil {
|
||||
s.badRequest(ctx, w, span, otelAttrs, err)
|
||||
return
|
||||
}
|
||||
request, err := decodeUpdateUsersRequest(r, span)
|
||||
if err != nil {
|
||||
s.badRequest(ctx, w, span, otelAttrs, err)
|
||||
return
|
||||
}
|
||||
|
||||
response, err := s.h.UpdateUsers(ctx, request, params)
|
||||
if err != nil {
|
||||
span.RecordError(err)
|
||||
span.SetStatus(codes.Error, "Internal")
|
||||
s.errors.Add(ctx, 1, otelAttrs...)
|
||||
respondError(w, http.StatusInternalServerError, err)
|
||||
return
|
||||
}
|
||||
|
||||
if err := encodeUpdateUsersResponse(response, w, span); err != nil {
|
||||
span.RecordError(err)
|
||||
span.SetStatus(codes.Error, "Response")
|
||||
s.errors.Add(ctx, 1, otelAttrs...)
|
||||
return
|
||||
}
|
||||
span.SetStatus(codes.Ok, "Ok")
|
||||
elapsedDuration := time.Since(startTime)
|
||||
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
|
||||
}
|
||||
|
||||
func (s *Server) badRequest(ctx context.Context, w http.ResponseWriter, span trace.Span, otelAttrs []attribute.KeyValue, err error) {
|
||||
span.RecordError(err)
|
||||
span.SetStatus(codes.Error, "BadRequest")
|
||||
s.errors.Add(ctx, 1, otelAttrs...)
|
||||
respondError(w, http.StatusBadRequest, err)
|
||||
}
|
||||
|
||||
func respondError(w http.ResponseWriter, code int, err error) {
|
||||
w.Header().Set("Content-Type", "application/json")
|
||||
w.WriteHeader(code)
|
||||
data, writeErr := json.Marshal(struct {
|
||||
ErrorMessage string `json:"error_message"`
|
||||
}{
|
||||
ErrorMessage: err.Error(),
|
||||
})
|
||||
if writeErr == nil {
|
||||
w.Write(data)
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user