mirror of
https://github.com/PluralKit/PluralKit.git
synced 2026-02-04 04:56:49 +00:00
Port some more commands, mostly for embeds
This commit is contained in:
parent
9d919d687b
commit
2e0c30eb5d
13 changed files with 140 additions and 135 deletions
|
|
@ -17,6 +17,7 @@ namespace Myriad.Rest.Ratelimit
|
|||
|
||||
private DateTimeOffset _nextReset;
|
||||
private bool _resetTimeValid;
|
||||
private bool _hasReceivedRemaining;
|
||||
|
||||
public Bucket(ILogger logger, string key, ulong major, int limit)
|
||||
{
|
||||
|
|
@ -77,8 +78,8 @@ namespace Myriad.Rest.Ratelimit
|
|||
var headerNextReset = DateTimeOffset.UtcNow + headers.ResetAfter.Value; // todo: server time
|
||||
if (headerNextReset > _nextReset)
|
||||
{
|
||||
_logger.Debug("{BucketKey}/{BucketMajor}: Received reset time {NextReset} from server (after: {NextResetAfter})",
|
||||
Key, Major, headerNextReset, headers.ResetAfter.Value);
|
||||
_logger.Debug("{BucketKey}/{BucketMajor}: Received reset time {NextReset} from server (after: {NextResetAfter}, new remaining: {Remaining})",
|
||||
Key, Major, headerNextReset, headers.ResetAfter.Value, headers.Remaining);
|
||||
|
||||
_nextReset = headerNextReset;
|
||||
_resetTimeValid = true;
|
||||
|
|
@ -87,6 +88,12 @@ namespace Myriad.Rest.Ratelimit
|
|||
|
||||
if (headers.Limit != null)
|
||||
Limit = headers.Limit.Value;
|
||||
|
||||
if (headers.Remaining != null && !_hasReceivedRemaining)
|
||||
{
|
||||
_hasReceivedRemaining = true;
|
||||
Remaining = headers.Remaining.Value;
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
|
|
|
|||
|
|
@ -44,6 +44,7 @@ namespace Myriad.Rest.Ratelimit
|
|||
if (!_knownKeyLimits.TryGetValue(key, out var knownLimit))
|
||||
return null;
|
||||
|
||||
_logger.Debug("Creating new bucket {BucketKey}/{BucketMajor} with limit {KnownLimit}", key, major, knownLimit);
|
||||
return _buckets.GetOrAdd((key, major),
|
||||
k => new Bucket(_logger, k.Item1, k.Item2, knownLimit));
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue