public Dictionary <string, string> GetRateLimitHeaders() { ThrottleInfo throttleInfo = getThrottleInfoFromCache(); int requestsRemaining = Math.Max(RequestLimit - throttleInfo.RequestCount, 0); var headers = new Dictionary <string, string>(); headers.Add("X-RateLimit-Limit", RequestLimit.ToString()); headers.Add("X-RateLimit-Remaining", RequestsRemaining.ToString()); headers.Add("X-RateLimit-Reset", toUnixTime(throttleInfo.ExpiresAt).ToString()); return(headers); }
public Dictionary <string, string> GetRateLimitHeaders() { ThrottleInfo throttleInfo = GetThrottleInfoFromCache(); int requestsRemaining = Math.Max(RequestLimit - throttleInfo.RequestCount, 0); var headers = new Dictionary <string, string> { { "X-RateLimit-Limit", RequestLimit.ToString() }, { "X-RateLimit-Remaining", RequestsRemaining.ToString() }, { "X-RateLimit-Reset", throttleInfo.ExpiresAt.ToString(CultureInfo.InvariantCulture) } }; return(headers); }
public static PrefabVO Get(string key) { if (string.IsNullOrEmpty(key)) { return(null); } if (dataProvider.Count == 0) { if (RequestLimit.check(dataProvider, 1f)) { Reload(); } } PrefabVO prefabVo = null; mapping.TryGetValue(key, out prefabVo); return(prefabVo); }
private async Task <Response> ScheduleRun(string key) { if (key.Equals(JobNames.PlexCacher, StringComparison.CurrentCultureIgnoreCase)) { PlexContentCacher.CacheContent(); } if (key.Equals(JobNames.WatcherCacher, StringComparison.CurrentCultureIgnoreCase)) { WatcherCacher.Queued(); } if (key.Equals(JobNames.SonarrCacher, StringComparison.CurrentCultureIgnoreCase)) { SonarrCacher.Queued(); } if (key.Equals(JobNames.RadarrCacher, StringComparison.CurrentCultureIgnoreCase)) { RadarrCacher.Queued(); } if (key.Equals(JobNames.CpCacher, StringComparison.CurrentCultureIgnoreCase)) { CpCacher.Queued(); } if (key.Equals(JobNames.StoreBackup, StringComparison.CurrentCultureIgnoreCase)) { StoreBackup.Start(); } if (key.Equals(JobNames.SrCacher, StringComparison.CurrentCultureIgnoreCase)) { SrCacher.Queued(); } if (key.Equals(JobNames.PlexChecker, StringComparison.CurrentCultureIgnoreCase)) { AvailabilityChecker.Start(); } if (key.Equals(JobNames.StoreCleanup, StringComparison.CurrentCultureIgnoreCase)) { StoreCleanup.Start(); } if (key.Equals(JobNames.RequestLimitReset, StringComparison.CurrentCultureIgnoreCase)) { RequestLimit.Start(); } if (key.Equals(JobNames.EpisodeCacher, StringComparison.CurrentCultureIgnoreCase)) { EpisodeCacher.Start(); } if (key.Equals(JobNames.RecentlyAddedEmail, StringComparison.CurrentCultureIgnoreCase)) { RecentlyAdded.Start(); } if (key.Equals(JobNames.FaultQueueHandler, StringComparison.CurrentCultureIgnoreCase)) { FaultQueueHandler.Start(); } if (key.Equals(JobNames.PlexUserChecker, StringComparison.CurrentCultureIgnoreCase)) { RequestLimit.Start(); } return(Response.AsJson(new JsonResponseModel { Result = true })); }