|
- using System;
- using System.Net;
-
- namespace Discord.Net
- {
- public class HttpException : Exception
- {
- public HttpStatusCode HttpCode { get; }
- public int? DiscordCode { get; }
- public string Reason { get; }
- public IRequest Request { get; }
-
- public HttpException(HttpStatusCode httpCode, IRequest request, int? discordCode = null, string reason = null)
- : base(CreateMessage(httpCode, discordCode, reason))
- {
- HttpCode = httpCode;
- Request = request;
- DiscordCode = discordCode;
- Reason = reason;
- }
-
- private static string CreateMessage(HttpStatusCode httpCode, int? discordCode = null, string reason = null)
- {
- string msg;
- if (discordCode != null && discordCode != 0)
- {
- if (reason != null)
- msg = $"The server responded with error {(int)discordCode}: {reason}";
- else
- msg = $"The server responded with error {(int)discordCode}: {httpCode}";
- }
- else
- {
- if (reason != null)
- msg = $"The server responded with error {(int)httpCode}: {reason}";
- else
- msg = $"The server responded with error {(int)httpCode}: {httpCode}";
- }
- return msg;
- }
- }
- }
|