private void SetCacheValue(string key, CallRateForAuthorizationCode callRateForAuthorizationCode) { HttpRuntime.Cache.Insert(key, callRateForAuthorizationCode, null, DateTime.Now.AddSeconds(RateLimitSeconds * 2), Cache.NoSlidingExpiration, CacheItemPriority.Low, null); }
private bool TooManyCallsInRateLimitTime(CallRateForAuthorizationCode callRateForAuthorizationCode) { var secondsPassedSinceFirstRecordedCall = DateTime.Now.Subtract(callRateForAuthorizationCode.FirstCallTime).Seconds; return(callRateForAuthorizationCode.Calls >= CallsPerRateLimitSeconds && secondsPassedSinceFirstRecordedCall <= RateLimitSeconds); }