public void Register(ISponsor obj, TimeSpan renewalTime)
{
lock(this)
{
BCLDebug.Trace("REMOTE", "Lease "+id+" Register Sponsor renewalTime ",renewalTime," state ",((Enum)state).ToString());
if (state == LeaseState.Expired || sponsorshipTimeout == TimeSpan.Zero)
return;
Object sponsorId = GetSponsorId(obj);
lock(sponsorTable)
{
if (renewalTime > TimeSpan.Zero)
AddTime(renewalTime);
if (!sponsorTable.ContainsKey(sponsorId))
{
// Place in tables
sponsorTable[sponsorId] = new SponsorStateInfo(renewalTime, SponsorState.Initial);
}
}
}
}