Move to vendor dir
This commit is contained in:
26
vendor/github.com/xoebus/statham/statham.go
generated
vendored
Normal file
26
vendor/github.com/xoebus/statham/statham.go
generated
vendored
Normal file
@@ -0,0 +1,26 @@
|
||||
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)
|
||||
}
|
Reference in New Issue
Block a user