private void ReadOrRenewLease(GetLeaseRequest request)
        {
            var lease = AсquireOrLearnLease(ballotGenerator.New(instance.Identity),
                                            request.RequestorIdentity,
                                            request.LeaseTimeSpan);

            lastKnownLease = lease;
        }
Beispiel #2
0
        private void ReadOrRenewLease()
        {
            var now = DateTime.UtcNow;

            var lease = AсquireOrLearnLease(ballotGenerator.New(localNode.SocketIdentity), now);

            if (ProcessBecameLeader(lease, lastKnownLease) || ProcessLostLeadership(lease, lastKnownLease))
            {
                var renewPeriod = CalcLeaseRenewPeriod(ProcessBecameLeader(lease, lastKnownLease));
                leaseTimer.Change(renewPeriod, renewPeriod);
            }

            lastKnownLease = lease;
        }