kubernetes/vendor/go.etcd.io/etcd/client/v2/client.go

var ErrNoEndpoints

var ErrTooManyRedirects

var ErrClusterUnavailable

var ErrNoLeaderEndpoint

var errTooManyRedirectChecks

var oneShotCtxValue

var DefaultRequestTimeout

var DefaultTransport

type EndpointSelectionMode

const EndpointSelectionRandom

const EndpointSelectionPrioritizeLeader

type Config

func (cfg *Config) transport() CancelableTransport {}

func (cfg *Config) checkRedirect() CheckRedirectFunc {}

type CancelableTransport

type CheckRedirectFunc

var DefaultCheckRedirect

type Client

func New(cfg Config) (Client, error) {}

type httpClient

func newHTTPClientFactory(tr CancelableTransport, cr CheckRedirectFunc, headerTimeout time.Duration) httpClientFactory {}

type credentials

type httpClientFactory

type httpAction

type httpClusterClient

func (c *httpClusterClient) getLeaderEndpoint(ctx context.Context, eps []url.URL) (string, error) {}

func (c *httpClusterClient) parseEndpoints(eps []string) ([]url.URL, error) {}

func (c *httpClusterClient) SetEndpoints(eps []string) error {}

func (c *httpClusterClient) Do(ctx context.Context, act httpAction) (*http.Response, []byte, error) {}

func (c *httpClusterClient) Endpoints() []string {}

func (c *httpClusterClient) Sync(ctx context.Context) error {}

func (c *httpClusterClient) AutoSync(ctx context.Context, interval time.Duration) error {}

func (c *httpClusterClient) GetVersion(ctx context.Context) (*version.Versions, error) {}

type roundTripResponse

type simpleHTTPClient

var ErrNoRequest

func (c *simpleHTTPClient) Do(ctx context.Context, act httpAction) (*http.Response, []byte, error) {}

type authedAction

func (a *authedAction) HTTPRequest(url url.URL) *http.Request {}

type redirectFollowingHTTPClient

func (r *redirectFollowingHTTPClient) Do(ctx context.Context, act httpAction) (*http.Response, []byte, error) {}

type redirectedHTTPAction

func (r *redirectedHTTPAction) HTTPRequest(ep url.URL) *http.Request {}

func shuffleEndpoints(r *rand.Rand, eps []url.URL) []url.URL {}

func endpointsEqual(left, right []url.URL) bool {}