Files
gitea-release-resource/vendor/github.com/xoebus/statham/statham.go
Zachary Gershman dc2870080e Move to vendor dir
2016-06-21 08:09:19 -07:00

27 lines
555 B
Go

package statham
import "net/http"
func NewTransport(defaultTr http.RoundTripper, mapping Mapping) http.RoundTripper {
return &roundTripper{
defaultTripper: defaultTr,
mapping: mapping,
}
}
type Mapping map[string]http.RoundTripper
type roundTripper struct {
defaultTripper http.RoundTripper
mapping Mapping
}
func (rt *roundTripper) RoundTrip(req *http.Request) (*http.Response, error) {
transport, found := rt.mapping[req.URL.Host]
if !found {
return rt.defaultTripper.RoundTrip(req)
}
return transport.RoundTrip(req)
}