working commit
This commit is contained in:
55
client.go
55
client.go
@@ -5,28 +5,59 @@ import (
|
||||
"net/http"
|
||||
)
|
||||
|
||||
|
||||
type Client struct {
|
||||
httpClient *http.Client
|
||||
authenticator Authenticator
|
||||
userAgent string
|
||||
authenticator Authenticator
|
||||
userAgent string
|
||||
}
|
||||
|
||||
func NewClient(skipTLSVerify bool) *Client {
|
||||
transport := &http.Transport{
|
||||
TLSClientConfig: &tls.Config{
|
||||
InsecureSkipVerify: skipTLSVerify,
|
||||
},
|
||||
}
|
||||
func NewClient() *Client {
|
||||
defaultTripper := NewDefaultTransport()
|
||||
httpClient := &http.Client{
|
||||
Transport: transport,
|
||||
Transport: defaultTripper,
|
||||
}
|
||||
return &Client{
|
||||
httpClient: httpClient,
|
||||
userAgent: "ociClient/1.0",
|
||||
userAgent: "ociClient/1.0",
|
||||
}
|
||||
}
|
||||
|
||||
func (cli *Client) SetAuthenticator(auth Authenticator) {
|
||||
cli.authenticator = auth
|
||||
cli.authenticator = auth
|
||||
}
|
||||
|
||||
func (cli *Client) SetTransport(transport http.RoundTripper) {
|
||||
cli.httpClient.Transport = transport
|
||||
}
|
||||
|
||||
type WrapTransport struct {
|
||||
transport http.RoundTripper
|
||||
}
|
||||
|
||||
func NewWrapTransport(transport http.RoundTripper) *WrapTransport {
|
||||
return &WrapTransport{
|
||||
transport: transport,
|
||||
}
|
||||
}
|
||||
|
||||
func (wrap *WrapTransport) RoundTrip(req *http.Request) (*http.Response, error) {
|
||||
return wrap.transport.RoundTrip(req)
|
||||
}
|
||||
|
||||
type DefaultTransport struct {
|
||||
transport http.RoundTripper
|
||||
}
|
||||
|
||||
func NewDefaultTransport() *DefaultTransport {
|
||||
return &DefaultTransport{
|
||||
transport: &http.Transport{
|
||||
TLSClientConfig: &tls.Config{
|
||||
InsecureSkipVerify: true,
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func (wrap *DefaultTransport) RoundTrip(req *http.Request) (*http.Response, error) {
|
||||
return wrap.transport.RoundTrip(req)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user