MCPcopy Index your code
hub / github.com/coder/coder / ParseUUIDParam

Function ParseUUIDParam

coderd/httpmw/httpmw.go:15–36  ·  view source on GitHub ↗

ParseUUIDParam consumes a url parameter and parses it as a UUID.

(rw http.ResponseWriter, r *http.Request, param string)

Source from the content-addressed store, hash-verified

13
14// ParseUUIDParam consumes a url parameter and parses it as a UUID.
15func ParseUUIDParam(rw http.ResponseWriter, r *http.Request, param string) (uuid.UUID, bool) {
16 rawID := chi.URLParam(r, param)
17 if rawID == "" {
18 httpapi.Write(r.Context(), rw, http.StatusBadRequest, codersdk.Response{
19 Message: "Missing UUID in URL.",
20 // Url params mean nothing to a user
21 Detail: fmt.Sprintf("%q URL param missing", param),
22 })
23 return uuid.UUID{}, false
24 }
25
26 parsed, err := uuid.Parse(rawID)
27 if err != nil {
28 httpapi.Write(r.Context(), rw, http.StatusBadRequest, codersdk.Response{
29 Message: fmt.Sprintf("Invalid UUID %q.", rawID),
30 Detail: err.Error(),
31 })
32 return uuid.UUID{}, false
33 }
34
35 return parsed, true
36}

Callers 15

provisionerJobMethod · 0.92
ExtractGroupParamFunction · 0.85
ExtractTemplateParamFunction · 0.85
ExtractChatParamFunction · 0.85
TestParseUUID_ValidFunction · 0.85
TestParseUUID_InvalidFunction · 0.85

Calls 4

WriteFunction · 0.92
ContextMethod · 0.65
ParseMethod · 0.65
ErrorMethod · 0.45

Tested by 2

TestParseUUID_ValidFunction · 0.68
TestParseUUID_InvalidFunction · 0.68