type LeaseRevokeResponse …
type LeaseID …
type LeaseGrantResponse …
type LeaseKeepAliveResponse …
type LeaseTimeToLiveResponse …
type LeaseStatus …
type LeaseLeasesResponse …
const defaultTTL …
const NoLease …
const retryConnWait …
var LeaseResponseChSize …
type ErrKeepAliveHalted …
func (e ErrKeepAliveHalted) Error() string { … }
type Lease …
type lessor …
type keepAlive …
func NewLease(c *Client) Lease { … }
func NewLeaseFromLeaseClient(remote pb.LeaseClient, c *Client, keepAliveTimeout time.Duration) Lease { … }
func (l *lessor) Grant(ctx context.Context, ttl int64) (*LeaseGrantResponse, error) { … }
func (l *lessor) Revoke(ctx context.Context, id LeaseID) (*LeaseRevokeResponse, error) { … }
func (l *lessor) TimeToLive(ctx context.Context, id LeaseID, opts ...LeaseOption) (*LeaseTimeToLiveResponse, error) { … }
func (l *lessor) Leases(ctx context.Context) (*LeaseLeasesResponse, error) { … }
func (l *lessor) KeepAlive(ctx context.Context, id LeaseID) (<-chan *LeaseKeepAliveResponse, error) { … }
func (l *lessor) KeepAliveOnce(ctx context.Context, id LeaseID) (*LeaseKeepAliveResponse, error) { … }
func (l *lessor) Close() error { … }
func (l *lessor) keepAliveCtxCloser(ctx context.Context, id LeaseID, donec <-chan struct{ … }
func (l *lessor) closeRequireLeader() { … }
func (l *lessor) keepAliveOnce(ctx context.Context, id LeaseID) (karesp *LeaseKeepAliveResponse, ferr error) { … }
func (l *lessor) recvKeepAliveLoop() (gerr error) { … }
func (l *lessor) resetRecv() (pb.Lease_LeaseKeepAliveClient, error) { … }
func (l *lessor) recvKeepAlive(resp *pb.LeaseKeepAliveResponse) { … }
func (l *lessor) deadlineLoop() { … }
func (l *lessor) sendKeepAliveLoop(stream pb.Lease_LeaseKeepAliveClient) { … }
func (ka *keepAlive) close() { … }