leasehttp - ActiveState ActiveGo 1.8

Package leasehttp

import ""

Overview ▾

Package leasehttp serves lease renewals made through HTTP requests.


var (
    LeasePrefix         = "/leases"
    LeaseInternalPrefix = "/leases/internal"

    ErrLeaseHTTPTimeout = errors.New("waiting for node to catch up its applied index has timed out")

func NewHandler

func NewHandler(l lease.Lessor, waitch func() <-chan struct{}) http.Handler

NewHandler returns an http Handler for lease renewals

func RenewHTTP

func RenewHTTP(ctx context.Context, id lease.LeaseID, url string, rt http.RoundTripper) (int64, error)

RenewHTTP renews a lease at a given primary server. TODO: Batch request in future?

func TimeToLiveHTTP

func TimeToLiveHTTP(ctx context.Context, id lease.LeaseID, keys bool, url string, rt http.RoundTripper) (*leasepb.LeaseInternalResponse, error)

TimeToLiveHTTP retrieves lease information of the given lease ID.