1
0
api/ent/ogent/oas_handlers_gen.go

4355 lines
99 KiB
Go
Raw Permalink Normal View History

2022-08-31 06:18:14 +00:00
// Code generated by ogen, DO NOT EDIT.
package ogent
import (
"context"
"net/http"
"time"
"go.opentelemetry.io/otel/attribute"
"go.opentelemetry.io/otel/codes"
2022-08-31 07:49:08 +00:00
semconv "go.opentelemetry.io/otel/semconv/v1.17.0"
2022-08-31 06:18:14 +00:00
"go.opentelemetry.io/otel/trace"
2022-08-31 07:49:08 +00:00
"github.com/ogen-go/ogen/middleware"
"github.com/ogen-go/ogen/ogenerrors"
"github.com/ogen-go/ogen/otelogen"
2022-08-31 06:18:14 +00:00
)
2022-08-31 07:49:08 +00:00
// handleCreateCardRequest handles createCard operation.
2022-08-31 06:18:14 +00:00
//
2022-08-31 07:49:08 +00:00
// Creates a new Card and persists it to storage.
//
// POST /cards
func (s *Server) handleCreateCardRequest(args [0]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("createCard"),
semconv.HTTPMethodKey.String("POST"),
semconv.HTTPRouteKey.String("/cards"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "CreateCard",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
2022-08-31 06:18:14 +00:00
startTime := time.Now()
2022-08-31 07:49:08 +00:00
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "CreateCard",
ID: "createCard",
}
)
request, close, err := s.decodeCreateCardRequest(r)
if err != nil {
err = &ogenerrors.DecodeRequestError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeRequest", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
defer func() {
if err := close(); err != nil {
recordError("CloseRequest", err)
}
}()
var response CreateCardRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "CreateCard",
OperationID: "createCard",
Body: request,
Params: middleware.Parameters{},
Raw: r,
}
type (
Request = *CreateCardReq
Params = struct{}
Response = CreateCardRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
nil,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.CreateCard(ctx, request)
return response, err
},
)
} else {
response, err = s.h.CreateCard(ctx, request)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeCreateCardResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
// handleCreateGroupRequest handles createGroup operation.
//
// Creates a new Group and persists it to storage.
//
// POST /groups
func (s *Server) handleCreateGroupRequest(args [0]string, w http.ResponseWriter, r *http.Request) {
2022-08-31 06:18:14 +00:00
otelAttrs := []attribute.KeyValue{
2022-08-31 07:49:08 +00:00
otelogen.OperationID("createGroup"),
semconv.HTTPMethodKey.String("POST"),
semconv.HTTPRouteKey.String("/groups"),
2022-08-31 06:18:14 +00:00
}
2022-08-31 07:49:08 +00:00
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "CreateGroup",
2022-08-31 06:18:14 +00:00
trace.WithAttributes(otelAttrs...),
2022-08-31 07:49:08 +00:00
serverSpanKind,
2022-08-31 06:18:14 +00:00
)
2022-08-31 07:49:08 +00:00
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
2022-08-31 06:18:14 +00:00
s.requests.Add(ctx, 1, otelAttrs...)
2022-08-31 07:49:08 +00:00
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "CreateGroup",
ID: "createGroup",
}
)
request, close, err := s.decodeCreateGroupRequest(r)
if err != nil {
err = &ogenerrors.DecodeRequestError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeRequest", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
defer func() {
if err := close(); err != nil {
recordError("CloseRequest", err)
}
}()
var response CreateGroupRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "CreateGroup",
OperationID: "createGroup",
Body: request,
Params: middleware.Parameters{},
Raw: r,
}
type (
Request = *CreateGroupReq
Params = struct{}
Response = CreateGroupRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
nil,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.CreateGroup(ctx, request)
return response, err
},
)
} else {
response, err = s.h.CreateGroup(ctx, request)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeCreateGroupResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2023-04-05 06:05:14 +00:00
// handleCreateMaRequest handles createMa operation.
//
// Creates a new Ma and persists it to storage.
//
// POST /mas
func (s *Server) handleCreateMaRequest(args [0]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("createMa"),
semconv.HTTPMethodKey.String("POST"),
semconv.HTTPRouteKey.String("/mas"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "CreateMa",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "CreateMa",
ID: "createMa",
}
)
request, close, err := s.decodeCreateMaRequest(r)
if err != nil {
err = &ogenerrors.DecodeRequestError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeRequest", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
defer func() {
if err := close(); err != nil {
recordError("CloseRequest", err)
}
}()
var response CreateMaRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "CreateMa",
OperationID: "createMa",
Body: request,
Params: middleware.Parameters{},
Raw: r,
}
type (
Request = *CreateMaReq
Params = struct{}
Response = CreateMaRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
nil,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.CreateMa(ctx, request)
return response, err
},
)
} else {
response, err = s.h.CreateMa(ctx, request)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeCreateMaResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2024-04-10 21:11:26 +00:00
// handleCreateSevRequest handles createSev operation.
//
// Creates a new Sev and persists it to storage.
//
// POST /sevs
func (s *Server) handleCreateSevRequest(args [0]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("createSev"),
semconv.HTTPMethodKey.String("POST"),
semconv.HTTPRouteKey.String("/sevs"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "CreateSev",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "CreateSev",
ID: "createSev",
}
)
request, close, err := s.decodeCreateSevRequest(r)
if err != nil {
err = &ogenerrors.DecodeRequestError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeRequest", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
defer func() {
if err := close(); err != nil {
recordError("CloseRequest", err)
}
}()
var response CreateSevRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "CreateSev",
OperationID: "createSev",
Body: request,
Params: middleware.Parameters{},
Raw: r,
}
type (
Request = *CreateSevReq
Params = struct{}
Response = CreateSevRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
nil,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.CreateSev(ctx, request)
return response, err
},
)
} else {
response, err = s.h.CreateSev(ctx, request)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeCreateSevResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2023-04-05 06:05:14 +00:00
// handleCreateUeRequest handles createUe operation.
//
// Creates a new Ue and persists it to storage.
//
// POST /ues
func (s *Server) handleCreateUeRequest(args [0]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("createUe"),
semconv.HTTPMethodKey.String("POST"),
semconv.HTTPRouteKey.String("/ues"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "CreateUe",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "CreateUe",
ID: "createUe",
}
)
request, close, err := s.decodeCreateUeRequest(r)
if err != nil {
err = &ogenerrors.DecodeRequestError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeRequest", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
defer func() {
if err := close(); err != nil {
recordError("CloseRequest", err)
}
}()
var response CreateUeRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "CreateUe",
OperationID: "createUe",
Body: request,
Params: middleware.Parameters{},
Raw: r,
}
type (
Request = *CreateUeReq
Params = struct{}
Response = CreateUeRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
nil,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.CreateUe(ctx, request)
return response, err
},
)
} else {
response, err = s.h.CreateUe(ctx, request)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeCreateUeResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2022-08-31 07:49:08 +00:00
// handleCreateUserRequest handles createUser operation.
//
// Creates a new User and persists it to storage.
//
// POST /users
func (s *Server) handleCreateUserRequest(args [0]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("createUser"),
semconv.HTTPMethodKey.String("POST"),
semconv.HTTPRouteKey.String("/users"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "CreateUser",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
2022-08-31 06:18:14 +00:00
defer span.End()
2022-08-31 07:49:08 +00:00
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "CreateUser",
ID: "createUser",
}
)
request, close, err := s.decodeCreateUserRequest(r)
2022-08-31 06:18:14 +00:00
if err != nil {
2022-08-31 07:49:08 +00:00
err = &ogenerrors.DecodeRequestError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeRequest", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
2022-08-31 07:49:08 +00:00
defer func() {
if err := close(); err != nil {
recordError("CloseRequest", err)
}
}()
2022-08-31 06:18:14 +00:00
2022-08-31 07:49:08 +00:00
var response CreateUserRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "CreateUser",
OperationID: "createUser",
Body: request,
Params: middleware.Parameters{},
Raw: r,
}
type (
Request = *CreateUserReq
Params = struct{}
Response = CreateUserRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
nil,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.CreateUser(ctx, request)
return response, err
},
)
} else {
response, err = s.h.CreateUser(ctx, request)
}
2022-08-31 06:18:14 +00:00
if err != nil {
2022-08-31 07:49:08 +00:00
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
2022-08-31 07:49:08 +00:00
if err := encodeCreateUserResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
}
2022-08-31 07:49:08 +00:00
// handleDeleteCardRequest handles deleteCard operation.
2022-08-31 06:18:14 +00:00
//
2022-08-31 07:49:08 +00:00
// Deletes the Card with the requested ID.
//
// DELETE /cards/{id}
func (s *Server) handleDeleteCardRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("deleteCard"),
semconv.HTTPMethodKey.String("DELETE"),
semconv.HTTPRouteKey.String("/cards/{id}"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "DeleteCard",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
2022-08-31 06:18:14 +00:00
startTime := time.Now()
2022-08-31 07:49:08 +00:00
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "DeleteCard",
ID: "deleteCard",
}
)
params, err := decodeDeleteCardParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response DeleteCardRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "DeleteCard",
OperationID: "deleteCard",
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = struct{}
Params = DeleteCardParams
Response = DeleteCardRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackDeleteCardParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.DeleteCard(ctx, params)
return response, err
},
)
} else {
response, err = s.h.DeleteCard(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeDeleteCardResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
// handleDeleteGroupRequest handles deleteGroup operation.
//
// Deletes the Group with the requested ID.
//
// DELETE /groups/{id}
func (s *Server) handleDeleteGroupRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
2022-08-31 06:18:14 +00:00
otelAttrs := []attribute.KeyValue{
2022-08-31 07:49:08 +00:00
otelogen.OperationID("deleteGroup"),
semconv.HTTPMethodKey.String("DELETE"),
semconv.HTTPRouteKey.String("/groups/{id}"),
2022-08-31 06:18:14 +00:00
}
2022-08-31 07:49:08 +00:00
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "DeleteGroup",
2022-08-31 06:18:14 +00:00
trace.WithAttributes(otelAttrs...),
2022-08-31 07:49:08 +00:00
serverSpanKind,
2022-08-31 06:18:14 +00:00
)
2022-08-31 07:49:08 +00:00
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
2022-08-31 06:18:14 +00:00
s.requests.Add(ctx, 1, otelAttrs...)
2022-08-31 07:49:08 +00:00
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "DeleteGroup",
ID: "deleteGroup",
}
)
params, err := decodeDeleteGroupParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response DeleteGroupRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "DeleteGroup",
OperationID: "deleteGroup",
Body: nil,
Params: middleware.Parameters{
{
2023-04-05 06:05:14 +00:00
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = struct{}
Params = DeleteGroupParams
Response = DeleteGroupRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackDeleteGroupParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.DeleteGroup(ctx, params)
return response, err
},
)
} else {
response, err = s.h.DeleteGroup(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeDeleteGroupResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
// handleDeleteMaRequest handles deleteMa operation.
//
// Deletes the Ma with the requested ID.
//
// DELETE /mas/{id}
func (s *Server) handleDeleteMaRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("deleteMa"),
semconv.HTTPMethodKey.String("DELETE"),
semconv.HTTPRouteKey.String("/mas/{id}"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "DeleteMa",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "DeleteMa",
ID: "deleteMa",
}
)
params, err := decodeDeleteMaParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response DeleteMaRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "DeleteMa",
OperationID: "deleteMa",
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = struct{}
Params = DeleteMaParams
Response = DeleteMaRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackDeleteMaParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.DeleteMa(ctx, params)
return response, err
},
)
} else {
response, err = s.h.DeleteMa(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeDeleteMaResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2024-04-10 21:11:26 +00:00
// handleDeleteSevRequest handles deleteSev operation.
//
// Deletes the Sev with the requested ID.
//
// DELETE /sevs/{id}
func (s *Server) handleDeleteSevRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("deleteSev"),
semconv.HTTPMethodKey.String("DELETE"),
semconv.HTTPRouteKey.String("/sevs/{id}"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "DeleteSev",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "DeleteSev",
ID: "deleteSev",
}
)
params, err := decodeDeleteSevParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response DeleteSevRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "DeleteSev",
OperationID: "deleteSev",
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = struct{}
Params = DeleteSevParams
Response = DeleteSevRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackDeleteSevParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.DeleteSev(ctx, params)
return response, err
},
)
} else {
response, err = s.h.DeleteSev(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeDeleteSevResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2023-04-05 06:05:14 +00:00
// handleDeleteUeRequest handles deleteUe operation.
//
// Deletes the Ue with the requested ID.
//
// DELETE /ues/{id}
func (s *Server) handleDeleteUeRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("deleteUe"),
semconv.HTTPMethodKey.String("DELETE"),
semconv.HTTPRouteKey.String("/ues/{id}"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "DeleteUe",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "DeleteUe",
ID: "deleteUe",
}
)
params, err := decodeDeleteUeParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response DeleteUeRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "DeleteUe",
OperationID: "deleteUe",
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = struct{}
Params = DeleteUeParams
Response = DeleteUeRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackDeleteUeParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.DeleteUe(ctx, params)
return response, err
},
)
} else {
response, err = s.h.DeleteUe(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeDeleteUeResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
// handleDeleteUserRequest handles deleteUser operation.
//
// Deletes the User with the requested ID.
//
// DELETE /users/{id}
func (s *Server) handleDeleteUserRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("deleteUser"),
semconv.HTTPMethodKey.String("DELETE"),
semconv.HTTPRouteKey.String("/users/{id}"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "DeleteUser",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "DeleteUser",
ID: "deleteUser",
}
)
params, err := decodeDeleteUserParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response DeleteUserRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "DeleteUser",
OperationID: "deleteUser",
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = struct{}
Params = DeleteUserParams
Response = DeleteUserRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackDeleteUserParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.DeleteUser(ctx, params)
return response, err
},
)
} else {
response, err = s.h.DeleteUser(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeDeleteUserResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
// handleDrawDoneRequest handles drawDone operation.
//
// Draws a card item as done.
//
// PUT /cards/{id}/d
func (s *Server) handleDrawDoneRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("drawDone"),
semconv.HTTPMethodKey.String("PUT"),
semconv.HTTPRouteKey.String("/cards/{id}/d"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "DrawDone",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "DrawDone",
ID: "drawDone",
}
)
params, err := decodeDrawDoneParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response *DrawDoneNoContent
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "DrawDone",
OperationID: "drawDone",
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = struct{}
Params = DrawDoneParams
Response = *DrawDoneNoContent
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackDrawDoneParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
err = s.h.DrawDone(ctx, params)
return response, err
},
)
} else {
err = s.h.DrawDone(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeDrawDoneResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
// handleDrawStartRequest handles drawStart operation.
//
// Draws a card item as done.
//
// PATCH /users/{id}/card/start
func (s *Server) handleDrawStartRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("drawStart"),
semconv.HTTPMethodKey.String("PATCH"),
semconv.HTTPRouteKey.String("/users/{id}/card/start"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "DrawStart",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "DrawStart",
ID: "drawStart",
}
)
params, err := decodeDrawStartParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response *DrawStartNoContent
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "DrawStart",
OperationID: "drawStart",
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = struct{}
Params = DrawStartParams
Response = *DrawStartNoContent
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackDrawStartParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
err = s.h.DrawStart(ctx, params)
return response, err
},
)
} else {
err = s.h.DrawStart(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeDrawStartResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
// handleListCardRequest handles listCard operation.
//
// List Cards.
//
// GET /cards
func (s *Server) handleListCardRequest(args [0]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("listCard"),
semconv.HTTPMethodKey.String("GET"),
semconv.HTTPRouteKey.String("/cards"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "ListCard",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "ListCard",
ID: "listCard",
}
)
params, err := decodeListCardParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response ListCardRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "ListCard",
OperationID: "listCard",
Body: nil,
Params: middleware.Parameters{
{
Name: "page",
In: "query",
}: params.Page,
{
Name: "itemsPerPage",
In: "query",
}: params.ItemsPerPage,
},
Raw: r,
}
type (
Request = struct{}
Params = ListCardParams
Response = ListCardRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackListCardParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.ListCard(ctx, params)
return response, err
},
)
} else {
response, err = s.h.ListCard(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeListCardResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
// handleListGroupRequest handles listGroup operation.
//
// List Groups.
//
// GET /groups
func (s *Server) handleListGroupRequest(args [0]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("listGroup"),
semconv.HTTPMethodKey.String("GET"),
semconv.HTTPRouteKey.String("/groups"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "ListGroup",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "ListGroup",
ID: "listGroup",
}
)
params, err := decodeListGroupParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response ListGroupRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "ListGroup",
OperationID: "listGroup",
Body: nil,
Params: middleware.Parameters{
{
Name: "page",
In: "query",
}: params.Page,
{
Name: "itemsPerPage",
In: "query",
}: params.ItemsPerPage,
},
Raw: r,
}
type (
Request = struct{}
Params = ListGroupParams
Response = ListGroupRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackListGroupParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.ListGroup(ctx, params)
return response, err
},
)
} else {
response, err = s.h.ListGroup(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeListGroupResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
// handleListGroupUsersRequest handles listGroupUsers operation.
//
// List attached Users.
//
// GET /groups/{id}/users
func (s *Server) handleListGroupUsersRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("listGroupUsers"),
semconv.HTTPMethodKey.String("GET"),
semconv.HTTPRouteKey.String("/groups/{id}/users"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "ListGroupUsers",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "ListGroupUsers",
ID: "listGroupUsers",
}
)
params, err := decodeListGroupUsersParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response ListGroupUsersRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "ListGroupUsers",
OperationID: "listGroupUsers",
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
{
Name: "page",
In: "query",
}: params.Page,
{
Name: "itemsPerPage",
In: "query",
}: params.ItemsPerPage,
},
Raw: r,
}
type (
Request = struct{}
Params = ListGroupUsersParams
Response = ListGroupUsersRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackListGroupUsersParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.ListGroupUsers(ctx, params)
return response, err
},
)
} else {
response, err = s.h.ListGroupUsers(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeListGroupUsersResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
// handleListMaRequest handles listMa operation.
//
// List Mas.
//
// GET /mas
func (s *Server) handleListMaRequest(args [0]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("listMa"),
semconv.HTTPMethodKey.String("GET"),
semconv.HTTPRouteKey.String("/mas"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "ListMa",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "ListMa",
ID: "listMa",
}
)
params, err := decodeListMaParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response ListMaRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "ListMa",
OperationID: "listMa",
Body: nil,
Params: middleware.Parameters{
{
Name: "page",
In: "query",
}: params.Page,
{
Name: "itemsPerPage",
In: "query",
}: params.ItemsPerPage,
},
Raw: r,
}
type (
Request = struct{}
Params = ListMaParams
Response = ListMaRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackListMaParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.ListMa(ctx, params)
return response, err
},
)
} else {
response, err = s.h.ListMa(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeListMaResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2024-04-10 21:11:26 +00:00
// handleListSevRequest handles listSev operation.
//
// List Sevs.
//
// GET /sevs
func (s *Server) handleListSevRequest(args [0]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("listSev"),
semconv.HTTPMethodKey.String("GET"),
semconv.HTTPRouteKey.String("/sevs"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "ListSev",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "ListSev",
ID: "listSev",
}
)
params, err := decodeListSevParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response ListSevRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "ListSev",
OperationID: "listSev",
Body: nil,
Params: middleware.Parameters{
{
Name: "page",
In: "query",
}: params.Page,
{
Name: "itemsPerPage",
In: "query",
}: params.ItemsPerPage,
},
Raw: r,
}
type (
Request = struct{}
Params = ListSevParams
Response = ListSevRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackListSevParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.ListSev(ctx, params)
return response, err
},
)
} else {
response, err = s.h.ListSev(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeListSevResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2023-04-05 06:05:14 +00:00
// handleListUeRequest handles listUe operation.
//
// List Ues.
//
// GET /ues
func (s *Server) handleListUeRequest(args [0]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("listUe"),
semconv.HTTPMethodKey.String("GET"),
semconv.HTTPRouteKey.String("/ues"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "ListUe",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "ListUe",
ID: "listUe",
}
)
params, err := decodeListUeParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response ListUeRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "ListUe",
OperationID: "listUe",
Body: nil,
Params: middleware.Parameters{
{
Name: "page",
In: "query",
}: params.Page,
{
Name: "itemsPerPage",
In: "query",
}: params.ItemsPerPage,
},
Raw: r,
}
type (
Request = struct{}
Params = ListUeParams
Response = ListUeRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackListUeParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.ListUe(ctx, params)
return response, err
},
)
} else {
response, err = s.h.ListUe(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeListUeResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
// handleListUserRequest handles listUser operation.
//
// List Users.
//
// GET /users
func (s *Server) handleListUserRequest(args [0]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("listUser"),
semconv.HTTPMethodKey.String("GET"),
semconv.HTTPRouteKey.String("/users"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "ListUser",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "ListUser",
ID: "listUser",
}
)
params, err := decodeListUserParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response ListUserRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "ListUser",
OperationID: "listUser",
Body: nil,
Params: middleware.Parameters{
{
Name: "page",
In: "query",
}: params.Page,
{
Name: "itemsPerPage",
In: "query",
}: params.ItemsPerPage,
},
Raw: r,
}
type (
Request = struct{}
Params = ListUserParams
Response = ListUserRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackListUserParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.ListUser(ctx, params)
return response, err
},
)
} else {
response, err = s.h.ListUser(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeListUserResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
// handleListUserCardRequest handles listUserCard operation.
//
// List attached Cards.
//
// GET /users/{id}/card
func (s *Server) handleListUserCardRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("listUserCard"),
semconv.HTTPMethodKey.String("GET"),
semconv.HTTPRouteKey.String("/users/{id}/card"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "ListUserCard",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "ListUserCard",
ID: "listUserCard",
}
)
params, err := decodeListUserCardParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response ListUserCardRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "ListUserCard",
OperationID: "listUserCard",
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
{
Name: "page",
In: "query",
}: params.Page,
{
Name: "itemsPerPage",
In: "query",
}: params.ItemsPerPage,
2022-08-31 07:49:08 +00:00
},
Raw: r,
}
type (
Request = struct{}
2023-04-05 06:05:14 +00:00
Params = ListUserCardParams
Response = ListUserCardRes
2022-08-31 07:49:08 +00:00
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
2023-04-05 06:05:14 +00:00
unpackListUserCardParams,
2022-08-31 07:49:08 +00:00
func(ctx context.Context, request Request, params Params) (response Response, err error) {
2023-04-05 06:05:14 +00:00
response, err = s.h.ListUserCard(ctx, params)
2022-08-31 07:49:08 +00:00
return response, err
},
)
} else {
2023-04-05 06:05:14 +00:00
response, err = s.h.ListUserCard(ctx, params)
2022-08-31 07:49:08 +00:00
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
if err := encodeListUserCardResponse(response, w, span); err != nil {
2022-08-31 07:49:08 +00:00
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2023-04-05 06:05:14 +00:00
// handleListUserMaRequest handles listUserMa operation.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// List attached Mas.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// GET /users/{id}/ma
func (s *Server) handleListUserMaRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
2022-08-31 07:49:08 +00:00
otelAttrs := []attribute.KeyValue{
2023-04-05 06:05:14 +00:00
otelogen.OperationID("listUserMa"),
semconv.HTTPMethodKey.String("GET"),
semconv.HTTPRouteKey.String("/users/{id}/ma"),
2022-08-31 07:49:08 +00:00
}
// Start a span for this request.
2023-04-05 06:05:14 +00:00
ctx, span := s.cfg.Tracer.Start(r.Context(), "ListUserMa",
2022-08-31 07:49:08 +00:00
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
2022-08-31 06:18:14 +00:00
defer span.End()
2022-08-31 07:49:08 +00:00
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
2023-04-05 06:05:14 +00:00
Name: "ListUserMa",
ID: "listUserMa",
2022-08-31 07:49:08 +00:00
}
)
2023-04-05 06:05:14 +00:00
params, err := decodeListUserMaParams(args, r)
2022-08-31 06:18:14 +00:00
if err != nil {
2022-08-31 07:49:08 +00:00
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
2023-04-05 06:05:14 +00:00
var response ListUserMaRes
2022-08-31 07:49:08 +00:00
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
2023-04-05 06:05:14 +00:00
OperationName: "ListUserMa",
OperationID: "listUserMa",
2022-08-31 07:49:08 +00:00
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
2023-04-05 06:05:14 +00:00
{
Name: "page",
In: "query",
}: params.Page,
{
Name: "itemsPerPage",
In: "query",
}: params.ItemsPerPage,
2022-08-31 07:49:08 +00:00
},
Raw: r,
}
type (
Request = struct{}
2023-04-05 06:05:14 +00:00
Params = ListUserMaParams
Response = ListUserMaRes
2022-08-31 07:49:08 +00:00
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
2023-04-05 06:05:14 +00:00
unpackListUserMaParams,
2022-08-31 07:49:08 +00:00
func(ctx context.Context, request Request, params Params) (response Response, err error) {
2023-04-05 06:05:14 +00:00
response, err = s.h.ListUserMa(ctx, params)
2022-08-31 07:49:08 +00:00
return response, err
},
)
} else {
2023-04-05 06:05:14 +00:00
response, err = s.h.ListUserMa(ctx, params)
2022-08-31 07:49:08 +00:00
}
2022-08-31 06:18:14 +00:00
if err != nil {
2022-08-31 07:49:08 +00:00
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
2023-04-05 06:05:14 +00:00
if err := encodeListUserMaResponse(response, w, span); err != nil {
2022-08-31 07:49:08 +00:00
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
}
2024-04-10 21:11:26 +00:00
// handleListUserSevRequest handles listUserSev operation.
2022-08-31 07:49:08 +00:00
//
2024-04-10 21:11:26 +00:00
// List attached Sevs.
//
// GET /users/{id}/sev
func (s *Server) handleListUserSevRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("listUserSev"),
semconv.HTTPMethodKey.String("GET"),
semconv.HTTPRouteKey.String("/users/{id}/sev"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "ListUserSev",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "ListUserSev",
ID: "listUserSev",
}
)
params, err := decodeListUserSevParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response ListUserSevRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "ListUserSev",
OperationID: "listUserSev",
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
{
Name: "page",
In: "query",
}: params.Page,
{
Name: "itemsPerPage",
In: "query",
}: params.ItemsPerPage,
},
Raw: r,
}
type (
Request = struct{}
Params = ListUserSevParams
Response = ListUserSevRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackListUserSevParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.ListUserSev(ctx, params)
return response, err
},
)
} else {
response, err = s.h.ListUserSev(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeListUserSevResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
// handleListUserUeRequest handles listUserUe operation.
//
// List attached Ues.
2022-08-31 06:18:14 +00:00
//
2023-04-05 06:05:14 +00:00
// GET /users/{id}/ue
func (s *Server) handleListUserUeRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
2022-08-31 06:18:14 +00:00
otelAttrs := []attribute.KeyValue{
2023-04-05 06:05:14 +00:00
otelogen.OperationID("listUserUe"),
semconv.HTTPMethodKey.String("GET"),
semconv.HTTPRouteKey.String("/users/{id}/ue"),
2022-08-31 06:18:14 +00:00
}
2022-08-31 07:49:08 +00:00
// Start a span for this request.
2023-04-05 06:05:14 +00:00
ctx, span := s.cfg.Tracer.Start(r.Context(), "ListUserUe",
2022-08-31 06:18:14 +00:00
trace.WithAttributes(otelAttrs...),
2022-08-31 07:49:08 +00:00
serverSpanKind,
2022-08-31 06:18:14 +00:00
)
defer span.End()
2022-08-31 07:49:08 +00:00
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
2023-04-05 06:05:14 +00:00
Name: "ListUserUe",
ID: "listUserUe",
2022-08-31 07:49:08 +00:00
}
)
2023-04-05 06:05:14 +00:00
params, err := decodeListUserUeParams(args, r)
2022-08-31 06:18:14 +00:00
if err != nil {
2022-08-31 07:49:08 +00:00
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
2023-04-05 06:05:14 +00:00
var response ListUserUeRes
2022-08-31 07:49:08 +00:00
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
2023-04-05 06:05:14 +00:00
OperationName: "ListUserUe",
OperationID: "listUserUe",
2022-08-31 07:49:08 +00:00
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
2023-04-05 06:05:14 +00:00
{
Name: "page",
In: "query",
}: params.Page,
{
Name: "itemsPerPage",
In: "query",
}: params.ItemsPerPage,
2022-08-31 07:49:08 +00:00
},
Raw: r,
}
type (
Request = struct{}
2023-04-05 06:05:14 +00:00
Params = ListUserUeParams
Response = ListUserUeRes
2022-08-31 07:49:08 +00:00
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
2023-04-05 06:05:14 +00:00
unpackListUserUeParams,
2022-08-31 07:49:08 +00:00
func(ctx context.Context, request Request, params Params) (response Response, err error) {
2023-04-05 06:05:14 +00:00
response, err = s.h.ListUserUe(ctx, params)
2022-08-31 07:49:08 +00:00
return response, err
},
)
} else {
2023-04-05 06:05:14 +00:00
response, err = s.h.ListUserUe(ctx, params)
2022-08-31 07:49:08 +00:00
}
2022-08-31 06:18:14 +00:00
if err != nil {
2022-08-31 07:49:08 +00:00
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
2023-04-05 06:05:14 +00:00
if err := encodeListUserUeResponse(response, w, span); err != nil {
2022-08-31 07:49:08 +00:00
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
}
2023-04-05 06:05:14 +00:00
// handleReadCardRequest handles readCard operation.
2022-08-31 06:18:14 +00:00
//
2023-04-05 06:05:14 +00:00
// Finds the Card with the requested ID and returns it.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// GET /cards/{id}
func (s *Server) handleReadCardRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
2022-08-31 06:18:14 +00:00
otelAttrs := []attribute.KeyValue{
2023-04-05 06:05:14 +00:00
otelogen.OperationID("readCard"),
semconv.HTTPMethodKey.String("GET"),
semconv.HTTPRouteKey.String("/cards/{id}"),
2022-08-31 06:18:14 +00:00
}
2022-08-31 07:49:08 +00:00
// Start a span for this request.
2023-04-05 06:05:14 +00:00
ctx, span := s.cfg.Tracer.Start(r.Context(), "ReadCard",
2022-08-31 06:18:14 +00:00
trace.WithAttributes(otelAttrs...),
2022-08-31 07:49:08 +00:00
serverSpanKind,
2022-08-31 06:18:14 +00:00
)
defer span.End()
2022-08-31 07:49:08 +00:00
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
2023-04-05 06:05:14 +00:00
Name: "ReadCard",
ID: "readCard",
2022-08-31 07:49:08 +00:00
}
)
2023-04-05 06:05:14 +00:00
params, err := decodeReadCardParams(args, r)
2022-08-31 06:18:14 +00:00
if err != nil {
2022-08-31 07:49:08 +00:00
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
2023-04-05 06:05:14 +00:00
var response ReadCardRes
2022-08-31 07:49:08 +00:00
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
2023-04-05 06:05:14 +00:00
OperationName: "ReadCard",
OperationID: "readCard",
2022-08-31 07:49:08 +00:00
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = struct{}
2023-04-05 06:05:14 +00:00
Params = ReadCardParams
Response = ReadCardRes
2022-08-31 07:49:08 +00:00
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
2023-04-05 06:05:14 +00:00
unpackReadCardParams,
2022-08-31 07:49:08 +00:00
func(ctx context.Context, request Request, params Params) (response Response, err error) {
2023-04-05 06:05:14 +00:00
response, err = s.h.ReadCard(ctx, params)
2022-08-31 07:49:08 +00:00
return response, err
},
)
} else {
2023-04-05 06:05:14 +00:00
response, err = s.h.ReadCard(ctx, params)
2022-08-31 07:49:08 +00:00
}
2022-08-31 06:18:14 +00:00
if err != nil {
2022-08-31 07:49:08 +00:00
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
2023-04-05 06:05:14 +00:00
if err := encodeReadCardResponse(response, w, span); err != nil {
2022-08-31 07:49:08 +00:00
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
}
2023-04-05 06:05:14 +00:00
// handleReadCardOwnerRequest handles readCardOwner operation.
2022-08-31 06:18:14 +00:00
//
2023-04-05 06:05:14 +00:00
// Find the attached User of the Card with the given ID.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// GET /cards/{id}/owner
func (s *Server) handleReadCardOwnerRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
2022-08-31 07:49:08 +00:00
otelAttrs := []attribute.KeyValue{
2023-04-05 06:05:14 +00:00
otelogen.OperationID("readCardOwner"),
2022-08-31 07:49:08 +00:00
semconv.HTTPMethodKey.String("GET"),
2023-04-05 06:05:14 +00:00
semconv.HTTPRouteKey.String("/cards/{id}/owner"),
2022-08-31 07:49:08 +00:00
}
// Start a span for this request.
2023-04-05 06:05:14 +00:00
ctx, span := s.cfg.Tracer.Start(r.Context(), "ReadCardOwner",
2022-08-31 07:49:08 +00:00
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
2022-08-31 06:18:14 +00:00
startTime := time.Now()
2022-08-31 07:49:08 +00:00
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
2023-04-05 06:05:14 +00:00
Name: "ReadCardOwner",
ID: "readCardOwner",
2022-08-31 07:49:08 +00:00
}
)
2023-04-05 06:05:14 +00:00
params, err := decodeReadCardOwnerParams(args, r)
2022-08-31 07:49:08 +00:00
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
var response ReadCardOwnerRes
2022-08-31 07:49:08 +00:00
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
2023-04-05 06:05:14 +00:00
OperationName: "ReadCardOwner",
OperationID: "readCardOwner",
2022-08-31 07:49:08 +00:00
Body: nil,
Params: middleware.Parameters{
{
2023-04-05 06:05:14 +00:00
Name: "id",
In: "path",
}: params.ID,
2022-08-31 07:49:08 +00:00
},
Raw: r,
}
type (
Request = struct{}
2023-04-05 06:05:14 +00:00
Params = ReadCardOwnerParams
Response = ReadCardOwnerRes
2022-08-31 07:49:08 +00:00
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
2023-04-05 06:05:14 +00:00
unpackReadCardOwnerParams,
2022-08-31 07:49:08 +00:00
func(ctx context.Context, request Request, params Params) (response Response, err error) {
2023-04-05 06:05:14 +00:00
response, err = s.h.ReadCardOwner(ctx, params)
2022-08-31 07:49:08 +00:00
return response, err
},
)
} else {
2023-04-05 06:05:14 +00:00
response, err = s.h.ReadCardOwner(ctx, params)
2022-08-31 07:49:08 +00:00
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
if err := encodeReadCardOwnerResponse(response, w, span); err != nil {
2022-08-31 07:49:08 +00:00
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2023-04-05 06:05:14 +00:00
// handleReadGroupRequest handles readGroup operation.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// Finds the Group with the requested ID and returns it.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// GET /groups/{id}
func (s *Server) handleReadGroupRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
2022-08-31 06:18:14 +00:00
otelAttrs := []attribute.KeyValue{
2023-04-05 06:05:14 +00:00
otelogen.OperationID("readGroup"),
2022-08-31 07:49:08 +00:00
semconv.HTTPMethodKey.String("GET"),
2023-04-05 06:05:14 +00:00
semconv.HTTPRouteKey.String("/groups/{id}"),
2022-08-31 06:18:14 +00:00
}
2022-08-31 07:49:08 +00:00
// Start a span for this request.
2023-04-05 06:05:14 +00:00
ctx, span := s.cfg.Tracer.Start(r.Context(), "ReadGroup",
2022-08-31 06:18:14 +00:00
trace.WithAttributes(otelAttrs...),
2022-08-31 07:49:08 +00:00
serverSpanKind,
2022-08-31 06:18:14 +00:00
)
2022-08-31 07:49:08 +00:00
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
2022-08-31 06:18:14 +00:00
s.requests.Add(ctx, 1, otelAttrs...)
2022-08-31 07:49:08 +00:00
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
2023-04-05 06:05:14 +00:00
Name: "ReadGroup",
ID: "readGroup",
2022-08-31 07:49:08 +00:00
}
)
2023-04-05 06:05:14 +00:00
params, err := decodeReadGroupParams(args, r)
2022-08-31 07:49:08 +00:00
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
var response ReadGroupRes
2022-08-31 07:49:08 +00:00
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
2023-04-05 06:05:14 +00:00
OperationName: "ReadGroup",
OperationID: "readGroup",
2022-08-31 07:49:08 +00:00
Body: nil,
Params: middleware.Parameters{
{
2023-04-05 06:05:14 +00:00
Name: "id",
In: "path",
}: params.ID,
2022-08-31 07:49:08 +00:00
},
Raw: r,
}
type (
Request = struct{}
2023-04-05 06:05:14 +00:00
Params = ReadGroupParams
Response = ReadGroupRes
2022-08-31 07:49:08 +00:00
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
2023-04-05 06:05:14 +00:00
unpackReadGroupParams,
2022-08-31 07:49:08 +00:00
func(ctx context.Context, request Request, params Params) (response Response, err error) {
2023-04-05 06:05:14 +00:00
response, err = s.h.ReadGroup(ctx, params)
2022-08-31 07:49:08 +00:00
return response, err
},
)
} else {
2023-04-05 06:05:14 +00:00
response, err = s.h.ReadGroup(ctx, params)
2022-08-31 07:49:08 +00:00
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
if err := encodeReadGroupResponse(response, w, span); err != nil {
2022-08-31 07:49:08 +00:00
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2023-04-05 06:05:14 +00:00
// handleReadMaRequest handles readMa operation.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// Finds the Ma with the requested ID and returns it.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// GET /mas/{id}
func (s *Server) handleReadMaRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
2022-08-31 07:49:08 +00:00
otelAttrs := []attribute.KeyValue{
2023-04-05 06:05:14 +00:00
otelogen.OperationID("readMa"),
2022-08-31 07:49:08 +00:00
semconv.HTTPMethodKey.String("GET"),
2023-04-05 06:05:14 +00:00
semconv.HTTPRouteKey.String("/mas/{id}"),
2022-08-31 07:49:08 +00:00
}
// Start a span for this request.
2023-04-05 06:05:14 +00:00
ctx, span := s.cfg.Tracer.Start(r.Context(), "ReadMa",
2022-08-31 07:49:08 +00:00
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
2022-08-31 06:18:14 +00:00
defer span.End()
2022-08-31 07:49:08 +00:00
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
2023-04-05 06:05:14 +00:00
Name: "ReadMa",
ID: "readMa",
2022-08-31 07:49:08 +00:00
}
)
2023-04-05 06:05:14 +00:00
params, err := decodeReadMaParams(args, r)
2022-08-31 06:18:14 +00:00
if err != nil {
2022-08-31 07:49:08 +00:00
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
2023-04-05 06:05:14 +00:00
var response ReadMaRes
2022-08-31 07:49:08 +00:00
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
2023-04-05 06:05:14 +00:00
OperationName: "ReadMa",
OperationID: "readMa",
2022-08-31 07:49:08 +00:00
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = struct{}
2023-04-05 06:05:14 +00:00
Params = ReadMaParams
Response = ReadMaRes
2022-08-31 07:49:08 +00:00
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
2023-04-05 06:05:14 +00:00
unpackReadMaParams,
2022-08-31 07:49:08 +00:00
func(ctx context.Context, request Request, params Params) (response Response, err error) {
2023-04-05 06:05:14 +00:00
response, err = s.h.ReadMa(ctx, params)
2022-08-31 07:49:08 +00:00
return response, err
},
)
} else {
2023-04-05 06:05:14 +00:00
response, err = s.h.ReadMa(ctx, params)
2022-08-31 07:49:08 +00:00
}
2022-08-31 06:18:14 +00:00
if err != nil {
2022-08-31 07:49:08 +00:00
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
2023-04-05 06:05:14 +00:00
if err := encodeReadMaResponse(response, w, span); err != nil {
2022-08-31 07:49:08 +00:00
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
}
2023-04-05 06:05:14 +00:00
// handleReadMaOwnerRequest handles readMaOwner operation.
2022-08-31 06:18:14 +00:00
//
2023-04-05 06:05:14 +00:00
// Find the attached User of the Ma with the given ID.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// GET /mas/{id}/owner
func (s *Server) handleReadMaOwnerRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
2022-08-31 07:49:08 +00:00
otelAttrs := []attribute.KeyValue{
2023-04-05 06:05:14 +00:00
otelogen.OperationID("readMaOwner"),
2022-08-31 07:49:08 +00:00
semconv.HTTPMethodKey.String("GET"),
2023-04-05 06:05:14 +00:00
semconv.HTTPRouteKey.String("/mas/{id}/owner"),
2022-08-31 07:49:08 +00:00
}
// Start a span for this request.
2023-04-05 06:05:14 +00:00
ctx, span := s.cfg.Tracer.Start(r.Context(), "ReadMaOwner",
2022-08-31 07:49:08 +00:00
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
2022-08-31 06:18:14 +00:00
startTime := time.Now()
2022-08-31 07:49:08 +00:00
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
2023-04-05 06:05:14 +00:00
Name: "ReadMaOwner",
ID: "readMaOwner",
2022-08-31 07:49:08 +00:00
}
)
2023-04-05 06:05:14 +00:00
params, err := decodeReadMaOwnerParams(args, r)
2022-08-31 07:49:08 +00:00
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
var response ReadMaOwnerRes
2022-08-31 07:49:08 +00:00
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
2023-04-05 06:05:14 +00:00
OperationName: "ReadMaOwner",
OperationID: "readMaOwner",
2022-08-31 07:49:08 +00:00
Body: nil,
Params: middleware.Parameters{
{
2023-04-05 06:05:14 +00:00
Name: "id",
In: "path",
}: params.ID,
2022-08-31 07:49:08 +00:00
},
Raw: r,
}
type (
Request = struct{}
2023-04-05 06:05:14 +00:00
Params = ReadMaOwnerParams
Response = ReadMaOwnerRes
2022-08-31 07:49:08 +00:00
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
2023-04-05 06:05:14 +00:00
unpackReadMaOwnerParams,
2022-08-31 07:49:08 +00:00
func(ctx context.Context, request Request, params Params) (response Response, err error) {
2023-04-05 06:05:14 +00:00
response, err = s.h.ReadMaOwner(ctx, params)
2022-08-31 07:49:08 +00:00
return response, err
},
)
} else {
2023-04-05 06:05:14 +00:00
response, err = s.h.ReadMaOwner(ctx, params)
2022-08-31 07:49:08 +00:00
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
if err := encodeReadMaOwnerResponse(response, w, span); err != nil {
2022-08-31 07:49:08 +00:00
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2024-04-10 21:11:26 +00:00
// handleReadSevRequest handles readSev operation.
//
// Finds the Sev with the requested ID and returns it.
//
// GET /sevs/{id}
func (s *Server) handleReadSevRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("readSev"),
semconv.HTTPMethodKey.String("GET"),
semconv.HTTPRouteKey.String("/sevs/{id}"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "ReadSev",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "ReadSev",
ID: "readSev",
}
)
params, err := decodeReadSevParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response ReadSevRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "ReadSev",
OperationID: "readSev",
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = struct{}
Params = ReadSevParams
Response = ReadSevRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackReadSevParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.ReadSev(ctx, params)
return response, err
},
)
} else {
response, err = s.h.ReadSev(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeReadSevResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
// handleReadSevOwnerRequest handles readSevOwner operation.
//
// Find the attached User of the Sev with the given ID.
//
// GET /sevs/{id}/owner
func (s *Server) handleReadSevOwnerRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("readSevOwner"),
semconv.HTTPMethodKey.String("GET"),
semconv.HTTPRouteKey.String("/sevs/{id}/owner"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "ReadSevOwner",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "ReadSevOwner",
ID: "readSevOwner",
}
)
params, err := decodeReadSevOwnerParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
var response ReadSevOwnerRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "ReadSevOwner",
OperationID: "readSevOwner",
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = struct{}
Params = ReadSevOwnerParams
Response = ReadSevOwnerRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackReadSevOwnerParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.ReadSevOwner(ctx, params)
return response, err
},
)
} else {
response, err = s.h.ReadSevOwner(ctx, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeReadSevOwnerResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2023-04-05 06:05:14 +00:00
// handleReadUeRequest handles readUe operation.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// Finds the Ue with the requested ID and returns it.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// GET /ues/{id}
func (s *Server) handleReadUeRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
2022-08-31 06:18:14 +00:00
otelAttrs := []attribute.KeyValue{
2023-04-05 06:05:14 +00:00
otelogen.OperationID("readUe"),
2022-08-31 07:49:08 +00:00
semconv.HTTPMethodKey.String("GET"),
2023-04-05 06:05:14 +00:00
semconv.HTTPRouteKey.String("/ues/{id}"),
2022-08-31 06:18:14 +00:00
}
2022-08-31 07:49:08 +00:00
// Start a span for this request.
2023-04-05 06:05:14 +00:00
ctx, span := s.cfg.Tracer.Start(r.Context(), "ReadUe",
2022-08-31 06:18:14 +00:00
trace.WithAttributes(otelAttrs...),
2022-08-31 07:49:08 +00:00
serverSpanKind,
2022-08-31 06:18:14 +00:00
)
2022-08-31 07:49:08 +00:00
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
2022-08-31 06:18:14 +00:00
s.requests.Add(ctx, 1, otelAttrs...)
2022-08-31 07:49:08 +00:00
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
2023-04-05 06:05:14 +00:00
Name: "ReadUe",
ID: "readUe",
2022-08-31 07:49:08 +00:00
}
)
2023-04-05 06:05:14 +00:00
params, err := decodeReadUeParams(args, r)
2022-08-31 07:49:08 +00:00
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
var response ReadUeRes
2022-08-31 07:49:08 +00:00
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
2023-04-05 06:05:14 +00:00
OperationName: "ReadUe",
OperationID: "readUe",
2022-08-31 07:49:08 +00:00
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = struct{}
2023-04-05 06:05:14 +00:00
Params = ReadUeParams
Response = ReadUeRes
2022-08-31 07:49:08 +00:00
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
2023-04-05 06:05:14 +00:00
unpackReadUeParams,
2022-08-31 07:49:08 +00:00
func(ctx context.Context, request Request, params Params) (response Response, err error) {
2023-04-05 06:05:14 +00:00
response, err = s.h.ReadUe(ctx, params)
2022-08-31 07:49:08 +00:00
return response, err
},
)
} else {
2023-04-05 06:05:14 +00:00
response, err = s.h.ReadUe(ctx, params)
2022-08-31 07:49:08 +00:00
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
if err := encodeReadUeResponse(response, w, span); err != nil {
2022-08-31 07:49:08 +00:00
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2023-04-05 06:05:14 +00:00
// handleReadUeOwnerRequest handles readUeOwner operation.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// Find the attached User of the Ue with the given ID.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// GET /ues/{id}/owner
func (s *Server) handleReadUeOwnerRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
2022-08-31 07:49:08 +00:00
otelAttrs := []attribute.KeyValue{
2023-04-05 06:05:14 +00:00
otelogen.OperationID("readUeOwner"),
2022-08-31 07:49:08 +00:00
semconv.HTTPMethodKey.String("GET"),
2023-04-05 06:05:14 +00:00
semconv.HTTPRouteKey.String("/ues/{id}/owner"),
2022-08-31 07:49:08 +00:00
}
// Start a span for this request.
2023-04-05 06:05:14 +00:00
ctx, span := s.cfg.Tracer.Start(r.Context(), "ReadUeOwner",
2022-08-31 07:49:08 +00:00
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
2022-08-31 06:18:14 +00:00
defer span.End()
2022-08-31 07:49:08 +00:00
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
2023-04-05 06:05:14 +00:00
Name: "ReadUeOwner",
ID: "readUeOwner",
2022-08-31 07:49:08 +00:00
}
)
2023-04-05 06:05:14 +00:00
params, err := decodeReadUeOwnerParams(args, r)
2022-08-31 06:18:14 +00:00
if err != nil {
2022-08-31 07:49:08 +00:00
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
2023-04-05 06:05:14 +00:00
var response ReadUeOwnerRes
2022-08-31 07:49:08 +00:00
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
2023-04-05 06:05:14 +00:00
OperationName: "ReadUeOwner",
OperationID: "readUeOwner",
2022-08-31 07:49:08 +00:00
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = struct{}
2023-04-05 06:05:14 +00:00
Params = ReadUeOwnerParams
Response = ReadUeOwnerRes
2022-08-31 07:49:08 +00:00
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
2023-04-05 06:05:14 +00:00
unpackReadUeOwnerParams,
2022-08-31 07:49:08 +00:00
func(ctx context.Context, request Request, params Params) (response Response, err error) {
2023-04-05 06:05:14 +00:00
response, err = s.h.ReadUeOwner(ctx, params)
2022-08-31 07:49:08 +00:00
return response, err
},
)
} else {
2023-04-05 06:05:14 +00:00
response, err = s.h.ReadUeOwner(ctx, params)
2022-08-31 07:49:08 +00:00
}
2022-08-31 06:18:14 +00:00
if err != nil {
2022-08-31 07:49:08 +00:00
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
2023-04-05 06:05:14 +00:00
if err := encodeReadUeOwnerResponse(response, w, span); err != nil {
2022-08-31 07:49:08 +00:00
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
}
2023-04-05 06:05:14 +00:00
// handleReadUserRequest handles readUser operation.
2022-08-31 06:18:14 +00:00
//
2023-04-05 06:05:14 +00:00
// Finds the User with the requested ID and returns it.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// GET /users/{id}
func (s *Server) handleReadUserRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
2022-08-31 07:49:08 +00:00
otelAttrs := []attribute.KeyValue{
2023-04-05 06:05:14 +00:00
otelogen.OperationID("readUser"),
2022-08-31 07:49:08 +00:00
semconv.HTTPMethodKey.String("GET"),
2023-04-05 06:05:14 +00:00
semconv.HTTPRouteKey.String("/users/{id}"),
2022-08-31 07:49:08 +00:00
}
// Start a span for this request.
2023-04-05 06:05:14 +00:00
ctx, span := s.cfg.Tracer.Start(r.Context(), "ReadUser",
2022-08-31 07:49:08 +00:00
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
2022-08-31 06:18:14 +00:00
startTime := time.Now()
2022-08-31 07:49:08 +00:00
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
2023-04-05 06:05:14 +00:00
Name: "ReadUser",
ID: "readUser",
2022-08-31 07:49:08 +00:00
}
)
2023-04-05 06:05:14 +00:00
params, err := decodeReadUserParams(args, r)
2022-08-31 07:49:08 +00:00
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
var response ReadUserRes
2022-08-31 07:49:08 +00:00
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
2023-04-05 06:05:14 +00:00
OperationName: "ReadUser",
OperationID: "readUser",
2022-08-31 07:49:08 +00:00
Body: nil,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = struct{}
2023-04-05 06:05:14 +00:00
Params = ReadUserParams
Response = ReadUserRes
2022-08-31 07:49:08 +00:00
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
2023-04-05 06:05:14 +00:00
unpackReadUserParams,
2022-08-31 07:49:08 +00:00
func(ctx context.Context, request Request, params Params) (response Response, err error) {
2023-04-05 06:05:14 +00:00
response, err = s.h.ReadUser(ctx, params)
2022-08-31 07:49:08 +00:00
return response, err
},
)
} else {
2023-04-05 06:05:14 +00:00
response, err = s.h.ReadUser(ctx, params)
2022-08-31 07:49:08 +00:00
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
if err := encodeReadUserResponse(response, w, span); err != nil {
2022-08-31 07:49:08 +00:00
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2023-04-05 06:05:14 +00:00
// handleUpdateCardRequest handles updateCard operation.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// Updates a Card and persists changes to storage.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// PATCH /cards/{id}
func (s *Server) handleUpdateCardRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
2022-08-31 06:18:14 +00:00
otelAttrs := []attribute.KeyValue{
2023-04-05 06:05:14 +00:00
otelogen.OperationID("updateCard"),
semconv.HTTPMethodKey.String("PATCH"),
semconv.HTTPRouteKey.String("/cards/{id}"),
2022-08-31 06:18:14 +00:00
}
2022-08-31 07:49:08 +00:00
// Start a span for this request.
2023-04-05 06:05:14 +00:00
ctx, span := s.cfg.Tracer.Start(r.Context(), "UpdateCard",
2022-08-31 06:18:14 +00:00
trace.WithAttributes(otelAttrs...),
2022-08-31 07:49:08 +00:00
serverSpanKind,
2022-08-31 06:18:14 +00:00
)
2022-08-31 07:49:08 +00:00
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
2022-08-31 06:18:14 +00:00
s.requests.Add(ctx, 1, otelAttrs...)
2022-08-31 07:49:08 +00:00
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
2023-04-05 06:05:14 +00:00
Name: "UpdateCard",
ID: "updateCard",
2022-08-31 07:49:08 +00:00
}
)
2023-04-05 06:05:14 +00:00
params, err := decodeUpdateCardParams(args, r)
2022-08-31 07:49:08 +00:00
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
request, close, err := s.decodeUpdateCardRequest(r)
if err != nil {
err = &ogenerrors.DecodeRequestError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeRequest", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
defer func() {
if err := close(); err != nil {
recordError("CloseRequest", err)
}
}()
2022-08-31 07:49:08 +00:00
2023-04-05 06:05:14 +00:00
var response UpdateCardRes
2022-08-31 07:49:08 +00:00
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
2023-04-05 06:05:14 +00:00
OperationName: "UpdateCard",
OperationID: "updateCard",
Body: request,
2022-08-31 07:49:08 +00:00
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
2023-04-05 06:05:14 +00:00
Request = *UpdateCardReq
Params = UpdateCardParams
Response = UpdateCardRes
2022-08-31 07:49:08 +00:00
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
2023-04-05 06:05:14 +00:00
unpackUpdateCardParams,
2022-08-31 07:49:08 +00:00
func(ctx context.Context, request Request, params Params) (response Response, err error) {
2023-04-05 06:05:14 +00:00
response, err = s.h.UpdateCard(ctx, request, params)
2022-08-31 07:49:08 +00:00
return response, err
},
)
} else {
2023-04-05 06:05:14 +00:00
response, err = s.h.UpdateCard(ctx, request, params)
2022-08-31 07:49:08 +00:00
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
if err := encodeUpdateCardResponse(response, w, span); err != nil {
2022-08-31 07:49:08 +00:00
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2023-04-05 06:05:14 +00:00
// handleUpdateGroupRequest handles updateGroup operation.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// Updates a Group and persists changes to storage.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// PATCH /groups/{id}
func (s *Server) handleUpdateGroupRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
2022-08-31 07:49:08 +00:00
otelAttrs := []attribute.KeyValue{
2023-04-05 06:05:14 +00:00
otelogen.OperationID("updateGroup"),
semconv.HTTPMethodKey.String("PATCH"),
semconv.HTTPRouteKey.String("/groups/{id}"),
2022-08-31 07:49:08 +00:00
}
// Start a span for this request.
2023-04-05 06:05:14 +00:00
ctx, span := s.cfg.Tracer.Start(r.Context(), "UpdateGroup",
2022-08-31 07:49:08 +00:00
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
2023-04-05 06:05:14 +00:00
Name: "UpdateGroup",
ID: "updateGroup",
2022-08-31 07:49:08 +00:00
}
)
2023-04-05 06:05:14 +00:00
params, err := decodeUpdateGroupParams(args, r)
2022-08-31 07:49:08 +00:00
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
request, close, err := s.decodeUpdateGroupRequest(r)
if err != nil {
err = &ogenerrors.DecodeRequestError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeRequest", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
defer func() {
if err := close(); err != nil {
recordError("CloseRequest", err)
}
}()
2022-08-31 07:49:08 +00:00
2023-04-05 06:05:14 +00:00
var response UpdateGroupRes
2022-08-31 07:49:08 +00:00
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
2023-04-05 06:05:14 +00:00
OperationName: "UpdateGroup",
OperationID: "updateGroup",
Body: request,
2022-08-31 07:49:08 +00:00
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
2023-04-05 06:05:14 +00:00
Request = *UpdateGroupReq
Params = UpdateGroupParams
Response = UpdateGroupRes
2022-08-31 07:49:08 +00:00
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
2023-04-05 06:05:14 +00:00
unpackUpdateGroupParams,
2022-08-31 07:49:08 +00:00
func(ctx context.Context, request Request, params Params) (response Response, err error) {
2023-04-05 06:05:14 +00:00
response, err = s.h.UpdateGroup(ctx, request, params)
2022-08-31 07:49:08 +00:00
return response, err
},
)
} else {
2023-04-05 06:05:14 +00:00
response, err = s.h.UpdateGroup(ctx, request, params)
2022-08-31 07:49:08 +00:00
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
if err := encodeUpdateGroupResponse(response, w, span); err != nil {
2022-08-31 07:49:08 +00:00
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2023-04-05 06:05:14 +00:00
// handleUpdateMaRequest handles updateMa operation.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// Updates a Ma and persists changes to storage.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// PATCH /mas/{id}
func (s *Server) handleUpdateMaRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
2022-08-31 07:49:08 +00:00
otelAttrs := []attribute.KeyValue{
2023-04-05 06:05:14 +00:00
otelogen.OperationID("updateMa"),
2022-08-31 07:49:08 +00:00
semconv.HTTPMethodKey.String("PATCH"),
2023-04-05 06:05:14 +00:00
semconv.HTTPRouteKey.String("/mas/{id}"),
2022-08-31 07:49:08 +00:00
}
// Start a span for this request.
2023-04-05 06:05:14 +00:00
ctx, span := s.cfg.Tracer.Start(r.Context(), "UpdateMa",
2022-08-31 07:49:08 +00:00
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
2022-08-31 06:18:14 +00:00
defer span.End()
2022-08-31 07:49:08 +00:00
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
2023-04-05 06:05:14 +00:00
Name: "UpdateMa",
ID: "updateMa",
2022-08-31 07:49:08 +00:00
}
)
2023-04-05 06:05:14 +00:00
params, err := decodeUpdateMaParams(args, r)
2022-08-31 06:18:14 +00:00
if err != nil {
2022-08-31 07:49:08 +00:00
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
2023-04-05 06:05:14 +00:00
request, close, err := s.decodeUpdateMaRequest(r)
2022-08-31 06:18:14 +00:00
if err != nil {
2022-08-31 07:49:08 +00:00
err = &ogenerrors.DecodeRequestError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeRequest", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
2022-08-31 07:49:08 +00:00
defer func() {
if err := close(); err != nil {
recordError("CloseRequest", err)
}
}()
2022-08-31 06:18:14 +00:00
2023-04-05 06:05:14 +00:00
var response UpdateMaRes
2022-08-31 07:49:08 +00:00
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
2023-04-05 06:05:14 +00:00
OperationName: "UpdateMa",
OperationID: "updateMa",
2022-08-31 07:49:08 +00:00
Body: request,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
2023-04-05 06:05:14 +00:00
Request = *UpdateMaReq
Params = UpdateMaParams
Response = UpdateMaRes
2022-08-31 07:49:08 +00:00
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
2023-04-05 06:05:14 +00:00
unpackUpdateMaParams,
2022-08-31 07:49:08 +00:00
func(ctx context.Context, request Request, params Params) (response Response, err error) {
2023-04-05 06:05:14 +00:00
response, err = s.h.UpdateMa(ctx, request, params)
2022-08-31 07:49:08 +00:00
return response, err
},
)
} else {
2023-04-05 06:05:14 +00:00
response, err = s.h.UpdateMa(ctx, request, params)
2022-08-31 07:49:08 +00:00
}
2022-08-31 06:18:14 +00:00
if err != nil {
2022-08-31 07:49:08 +00:00
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
2023-04-05 06:05:14 +00:00
if err := encodeUpdateMaResponse(response, w, span); err != nil {
2022-08-31 07:49:08 +00:00
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
2022-08-31 06:18:14 +00:00
return
}
}
2024-04-10 21:11:26 +00:00
// handleUpdateSevRequest handles updateSev operation.
//
// Updates a Sev and persists changes to storage.
//
// PATCH /sevs/{id}
func (s *Server) handleUpdateSevRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("updateSev"),
semconv.HTTPMethodKey.String("PATCH"),
semconv.HTTPRouteKey.String("/sevs/{id}"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "UpdateSev",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "UpdateSev",
ID: "updateSev",
}
)
params, err := decodeUpdateSevParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
request, close, err := s.decodeUpdateSevRequest(r)
if err != nil {
err = &ogenerrors.DecodeRequestError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeRequest", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
defer func() {
if err := close(); err != nil {
recordError("CloseRequest", err)
}
}()
var response UpdateSevRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "UpdateSev",
OperationID: "updateSev",
Body: request,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = *UpdateSevReq
Params = UpdateSevParams
Response = UpdateSevRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackUpdateSevParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.UpdateSev(ctx, request, params)
return response, err
},
)
} else {
response, err = s.h.UpdateSev(ctx, request, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeUpdateSevResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
}
2023-04-05 06:05:14 +00:00
// handleUpdateUeRequest handles updateUe operation.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// Updates a Ue and persists changes to storage.
2022-08-31 07:49:08 +00:00
//
2023-04-05 06:05:14 +00:00
// PATCH /ues/{id}
func (s *Server) handleUpdateUeRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
2022-08-31 07:49:08 +00:00
otelAttrs := []attribute.KeyValue{
2023-04-05 06:05:14 +00:00
otelogen.OperationID("updateUe"),
2022-08-31 07:49:08 +00:00
semconv.HTTPMethodKey.String("PATCH"),
2023-04-05 06:05:14 +00:00
semconv.HTTPRouteKey.String("/ues/{id}"),
2022-08-31 07:49:08 +00:00
}
// Start a span for this request.
2023-04-05 06:05:14 +00:00
ctx, span := s.cfg.Tracer.Start(r.Context(), "UpdateUe",
2022-08-31 07:49:08 +00:00
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
2023-04-05 06:05:14 +00:00
Name: "UpdateUe",
ID: "updateUe",
2022-08-31 07:49:08 +00:00
}
)
2023-04-05 06:05:14 +00:00
params, err := decodeUpdateUeParams(args, r)
2022-08-31 07:49:08 +00:00
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
request, close, err := s.decodeUpdateUeRequest(r)
2022-08-31 07:49:08 +00:00
if err != nil {
err = &ogenerrors.DecodeRequestError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeRequest", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
defer func() {
if err := close(); err != nil {
recordError("CloseRequest", err)
}
}()
2023-04-05 06:05:14 +00:00
var response UpdateUeRes
2022-08-31 07:49:08 +00:00
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
2023-04-05 06:05:14 +00:00
OperationName: "UpdateUe",
OperationID: "updateUe",
2022-08-31 07:49:08 +00:00
Body: request,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
2023-04-05 06:05:14 +00:00
Request = *UpdateUeReq
Params = UpdateUeParams
Response = UpdateUeRes
2022-08-31 07:49:08 +00:00
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
2023-04-05 06:05:14 +00:00
unpackUpdateUeParams,
2022-08-31 07:49:08 +00:00
func(ctx context.Context, request Request, params Params) (response Response, err error) {
2023-04-05 06:05:14 +00:00
response, err = s.h.UpdateUe(ctx, request, params)
2022-08-31 07:49:08 +00:00
return response, err
},
)
} else {
2023-04-05 06:05:14 +00:00
response, err = s.h.UpdateUe(ctx, request, params)
2022-08-31 07:49:08 +00:00
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2023-04-05 06:05:14 +00:00
if err := encodeUpdateUeResponse(response, w, span); err != nil {
2022-08-31 07:49:08 +00:00
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
2022-08-31 06:18:14 +00:00
}
2022-08-31 07:49:08 +00:00
// handleUpdateUserRequest handles updateUser operation.
//
// Updates a User and persists changes to storage.
//
// PATCH /users/{id}
func (s *Server) handleUpdateUserRequest(args [1]string, w http.ResponseWriter, r *http.Request) {
otelAttrs := []attribute.KeyValue{
otelogen.OperationID("updateUser"),
semconv.HTTPMethodKey.String("PATCH"),
semconv.HTTPRouteKey.String("/users/{id}"),
}
// Start a span for this request.
ctx, span := s.cfg.Tracer.Start(r.Context(), "UpdateUser",
trace.WithAttributes(otelAttrs...),
serverSpanKind,
)
defer span.End()
// Run stopwatch.
startTime := time.Now()
defer func() {
elapsedDuration := time.Since(startTime)
s.duration.Record(ctx, elapsedDuration.Microseconds(), otelAttrs...)
}()
// Increment request counter.
s.requests.Add(ctx, 1, otelAttrs...)
var (
recordError = func(stage string, err error) {
span.RecordError(err)
span.SetStatus(codes.Error, stage)
s.errors.Add(ctx, 1, otelAttrs...)
}
err error
opErrContext = ogenerrors.OperationContext{
Name: "UpdateUser",
ID: "updateUser",
}
)
params, err := decodeUpdateUserParams(args, r)
if err != nil {
err = &ogenerrors.DecodeParamsError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeParams", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
request, close, err := s.decodeUpdateUserRequest(r)
if err != nil {
err = &ogenerrors.DecodeRequestError{
OperationContext: opErrContext,
Err: err,
}
recordError("DecodeRequest", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
defer func() {
if err := close(); err != nil {
recordError("CloseRequest", err)
}
}()
var response UpdateUserRes
if m := s.cfg.Middleware; m != nil {
mreq := middleware.Request{
Context: ctx,
OperationName: "UpdateUser",
OperationID: "updateUser",
Body: request,
Params: middleware.Parameters{
{
Name: "id",
In: "path",
}: params.ID,
},
Raw: r,
}
type (
Request = *UpdateUserReq
Params = UpdateUserParams
Response = UpdateUserRes
)
response, err = middleware.HookMiddleware[
Request,
Params,
Response,
](
m,
mreq,
unpackUpdateUserParams,
func(ctx context.Context, request Request, params Params) (response Response, err error) {
response, err = s.h.UpdateUser(ctx, request, params)
return response, err
},
)
} else {
response, err = s.h.UpdateUser(ctx, request, params)
}
if err != nil {
recordError("Internal", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
}
if err := encodeUpdateUserResponse(response, w, span); err != nil {
recordError("EncodeResponse", err)
s.cfg.ErrorHandler(ctx, w, r, err)
return
2022-08-31 06:18:14 +00:00
}
}