Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BackOffFactory ¶
type BackOffFactory interface {
NewBackOff() BackOff
WithMaxElapsedTime() backoff.RetryOption
}
func NewExponentialBackOffFactory ¶
func NewExponentialBackOffFactory(timeout time.Duration) BackOffFactory
type BasicHijackableClient ¶
type BasicHijackableClient struct {
Dial func(network, addr string) (net.Conn, error)
DoHijackCloserFactory DoHijackCloserFactory
}
func (*BasicHijackableClient) Do ¶
func (c *BasicHijackableClient) Do(req *http.Request) (*http.Response, HijackCloser, error)
type DefaultRetryer ¶
type DefaultRetryer struct{}
func (*DefaultRetryer) IsRetryable ¶
func (r *DefaultRetryer) IsRetryable(err error) bool
type DoHijackCloser ¶
type DoHijackCloserFactory ¶
type DoHijackCloserFactory interface {
NewDoHijackCloser(c net.Conn, r *bufio.Reader) DoHijackCloser
}
var DefaultDoHijackCloserFactory DoHijackCloserFactory = defaultDoHijackCloserFactory{}
type HijackCloser ¶
type HijackableClient ¶
var DefaultHijackableClient HijackableClient = &BasicHijackableClient{ Dial: (&net.Dialer{ Timeout: 30 * time.Second, KeepAlive: 30 * time.Second, }).Dial, DoHijackCloserFactory: DefaultDoHijackCloserFactory, }
type RetryHijackableClient ¶
type RetryHijackableClient struct {
Logger lager.Logger
BackOffFactory BackOffFactory
HijackableClient HijackableClient
Retryer Retryer
}
func (*RetryHijackableClient) Do ¶
func (d *RetryHijackableClient) Do(request *http.Request) (*http.Response, HijackCloser, error)
type RetryReadCloser ¶
type RetryReadCloser struct {
io.ReadCloser
IsRead bool
}
type RetryRoundTripper ¶
type RetryRoundTripper struct {
Logger lager.Logger
BackOffFactory BackOffFactory
RoundTripper RoundTripper
Retryer Retryer
}
type RoundTripper ¶
Source Files
¶
Click to show internal directories.
Click to hide internal directories.