When comparing https://github.com/gojek/heimdall/blob/master/httpclient/client.go and https://github.com/gojek/heimdall/blob/master/hystrix/hystrix_client.go it seems that they only differ fundamentally in their respective Do methods. One could factor that part out into seperate Doer implementations and only have one httpclient implementation that delegates to a configurable Doer.
I would be willing to file a PR if that is acceptable.
When comparing
https://github.com/gojek/heimdall/blob/master/httpclient/client.go
andhttps://github.com/gojek/heimdall/blob/master/hystrix/hystrix_client.go
it seems that they only differ fundamentally in their respectiveDo
methods. One could factor that part out into seperateDoer
implementations and only have onehttpclient
implementation that delegates to a configurableDoer
.I would be willing to file a PR if that is acceptable.