working commit
This commit is contained in:
+10
-13
@@ -11,24 +11,19 @@ type Client struct {
|
||||
userAgent string
|
||||
}
|
||||
|
||||
func NewClient() *Client {
|
||||
defaultTripper := NewDefaultTransport()
|
||||
httpClient := &http.Client{
|
||||
Transport: defaultTripper,
|
||||
}
|
||||
return &Client{
|
||||
httpClient: httpClient,
|
||||
userAgent: "ociClient/1.0",
|
||||
}
|
||||
}
|
||||
|
||||
func NewClientWithTransport(transport http.RoundTripper, mwFunc ...MiddlewareFunc) *Client {
|
||||
func NewClient(transport http.RoundTripper, mwFuncs ...MiddlewareFunc) *Client {
|
||||
if transport == nil {
|
||||
transport = NewDefaultTransport()
|
||||
}
|
||||
for _, mwFunc := range mwFuncs {
|
||||
if mwFunc != nil {
|
||||
transport = mwFunc(transport)
|
||||
}
|
||||
}
|
||||
httpClient := &http.Client{
|
||||
Transport: transport,
|
||||
}
|
||||
|
||||
return &Client{
|
||||
httpClient: httpClient,
|
||||
userAgent: "ociClient/1.0",
|
||||
@@ -42,7 +37,9 @@ func (cli *Client) SetTransport(transport http.RoundTripper) {
|
||||
type MiddlewareFunc func(next http.RoundTripper) http.RoundTripper
|
||||
|
||||
func (cli *Client) UseMiddleware(mwFunc MiddlewareFunc) {
|
||||
cli.httpClient.Transport = mwFunc(cli.httpClient.Transport)
|
||||
if mwFunc != nil {
|
||||
cli.httpClient.Transport = mwFunc(cli.httpClient.Transport)
|
||||
}
|
||||
}
|
||||
|
||||
// ExampleMiddleware
|
||||
|
||||
Reference in New Issue
Block a user