AndrewBurian / AndrewBurian/powermux

Support handlers with return values

Offen
#36 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Go
Sterne
20
Forks
4
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

In order to reduce logic errors, we want the handlers to have the following signatures:

```
func (h *EnabledHandler) Get(rw http.ResponseWriter, req *http.Request) (constants.HTTPStatusCode, interface{})
```

Allow powermux to take these handlers and then allow for configuration of the conversion function

```
...
coreRouter.HandlerConversionFunc(baseHandler.ToHandler)
...

// ToHandler wraps a ResultHandler function into standard http.HandlerFunc
func (h *BaseHandler) ToHandler(rh ResultHandler) func(http.ResponseWriter, *http.Request) {

return func(rw http.ResponseWriter, req *http.Request) {
statusCode, v := rh(rw, req)
h.RenderResult(statusCode, v, rw, req)
}
}

```

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.