func (p PanicRecovery) ServeHTTPChain(w http.ResponseWriter, req *http.Request, h ...http.Handler) { recovery := p.Recovery if recovery == nil { recovery = http.HandlerFunc(DefaultRecoverFunc) } defer func() { if r := recover(); r != nil { recovery.ServeHTTP(w, req) } }() muxchain.HandleChain(w, req, h...) }
func gzipHandler(w http.ResponseWriter, req *http.Request, h ...http.Handler) { w.Header().Add("Content-Encoding", "gzip") g, gw := newGzipResponse(w) defer g.Close() muxchain.HandleChain(gw, req, h...) }