MCPcopy Create free account
hub / github.com/pace/bricks / GetTestHandler

Function GetTestHandler

tools/testserver/simple/open-api.go:19–58  ·  view source on GitHub ↗

* GetTestHandler handles request/response marshaling and validation for Get /beta/test */

(service GetTestHandlerService)

Source from the content-addressed store, hash-verified

17 Get /beta/test
18*/
19func GetTestHandler(service GetTestHandlerService) http.Handler {
20 return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
21 defer errors.HandleRequest("GetTestHandler", w, r)
22
23 // Trace the service function handler execution
24 span := sentry.StartSpan(r.Context(), "http.server", sentry.WithDescription("GetTestHandler"))
25 defer span.Finish()
26
27 ctx := span.Context()
28 r = r.WithContext(ctx)
29
30 // Setup context, response writer and request type
31 writer := getTestResponseWriter{
32 ResponseWriter: metrics.NewMetric("simple", "/beta/test", w, r),
33 }
34 request := GetTestRequest{
35 Request: r,
36 }
37
38 // Scan and validate incoming request parameters
39
40 // Invoke service that implements the business logic
41 err := service.GetTest(ctx, &writer, &request)
42 select {
43 case <-ctx.Done():
44 if ctx.Err() != nil {
45 // Context cancellation should not be reported if it's the request context
46 w.WriteHeader(499)
47 if err != nil && !(errors1.Is(err, context.Canceled) || errors1.Is(err, context.DeadlineExceeded)) {
48 // Report unclean error handling (err != context err) to sentry
49 errors.Handle(ctx, err)
50 }
51 }
52 default:
53 if err != nil {
54 errors.HandleError(err, "GetTestHandler", w, r)
55 }
56 }
57 })
58}
59
60/*
61GetTestResponseWriter is a standard http.ResponseWriter extended with methods

Callers 1

Calls 9

HandleRequestFunction · 0.92
HandleFunction · 0.92
HandleErrorFunction · 0.92
ContextMethod · 0.80
FinishMethod · 0.80
WithContextMethod · 0.80
ErrMethod · 0.80
GetTestMethod · 0.65
WriteHeaderMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…