29 lines
778 B
C#
29 lines
778 B
C#
|
using System;
|
|||
|
|
|||
|
using Myriad.Rest.Ratelimit;
|
|||
|
|
|||
|
namespace Myriad.Rest.Exceptions
|
|||
|
{
|
|||
|
public class RatelimitException: Exception
|
|||
|
{
|
|||
|
public RatelimitException(string? message): base(message) { }
|
|||
|
}
|
|||
|
|
|||
|
public class RatelimitBucketExhaustedException: RatelimitException
|
|||
|
{
|
|||
|
public RatelimitBucketExhaustedException(Bucket bucket, TimeSpan retryAfter): base(
|
|||
|
"Rate limit bucket exhausted, request blocked")
|
|||
|
{
|
|||
|
Bucket = bucket;
|
|||
|
RetryAfter = retryAfter;
|
|||
|
}
|
|||
|
|
|||
|
public Bucket Bucket { get; }
|
|||
|
public TimeSpan RetryAfter { get; }
|
|||
|
}
|
|||
|
|
|||
|
public class GloballyRatelimitedException: RatelimitException
|
|||
|
{
|
|||
|
public GloballyRatelimitedException(): base("Global rate limit hit") { }
|
|||
|
}
|
|||
|
}
|