Example #1
0
 public void SetOnce(string key, DateTime expiry)
 {
     lock (_Sync)
     {
         _Expiry[key] = new ExpiryDefinition { Expiry = expiry, Period = TimeSpan.FromDays(100000) };
     }
 }
Example #2
0
 public void Restart(string key, DateTime? expiry = null, TimeSpan? period = null)
 {
     lock (_Sync)
     {
         TimeSpan newPeriod;
         DateTime newExpiry;
         if (period == null)
         {
             ExpiryDefinition ed;
             newPeriod = _Expiry.TryGetValue(key, out ed) ? ed.Period : DefaultPeriod;
             newExpiry = (expiry ?? DateTime.UtcNow) + newPeriod;
         }
         else
         {
             newPeriod = period.Value;
             newExpiry = (expiry ?? DateTime.UtcNow) + newPeriod;
         }
         _Expiry[key] = new ExpiryDefinition { Expiry = newExpiry, Period = newPeriod };
     }
 }