From bf0c0fb8153a159ce4e0bca62379300f181b014a Mon Sep 17 00:00:00 2001 From: RogueException Date: Mon, 11 Jan 2016 20:22:08 -0400 Subject: [PATCH] Improved StatusAPI models --- src/Discord.Net.Net45/Discord.Net.csproj | 18 ++++++++++++------ .../Common/{Incident.cs => StatusResult.cs} | 13 +++++++------ .../Rest/{Active.cs => ActiveMaintenances.cs} | 2 +- .../API/Status/Rest/AllIncidents.cs | 13 +++++++++++++ .../API/Status/Rest/UnresolvedIncidents.cs | 13 +++++++++++++ .../{Upcoming.cs => UpcomingMaintenances.cs} | 2 +- src/Discord.Net/DiscordConfig.cs | 2 +- 7 files changed, 48 insertions(+), 15 deletions(-) rename src/Discord.Net/API/Status/Common/{Incident.cs => StatusResult.cs} (89%) rename src/Discord.Net/API/Status/Rest/{Active.cs => ActiveMaintenances.cs} (80%) create mode 100644 src/Discord.Net/API/Status/Rest/AllIncidents.cs create mode 100644 src/Discord.Net/API/Status/Rest/UnresolvedIncidents.cs rename src/Discord.Net/API/Status/Rest/{Upcoming.cs => UpcomingMaintenances.cs} (80%) diff --git a/src/Discord.Net.Net45/Discord.Net.csproj b/src/Discord.Net.Net45/Discord.Net.csproj index 68a8e952a..63bb83a09 100644 --- a/src/Discord.Net.Net45/Discord.Net.csproj +++ b/src/Discord.Net.Net45/Discord.Net.csproj @@ -370,14 +370,20 @@ API\IRestRequest.cs - - API\Status\Common\Incident.cs + + API\Status\Common\StatusResult.cs - - API\Status\Rest\Active.cs + + API\Status\Rest\ActiveMaintenances.cs - - API\Status\Rest\Upcoming.cs + + API\Status\Rest\AllIncidents.cs + + + API\Status\Rest\UnresolvedIncidents.cs + + + API\Status\Rest\UpcomingMaintenances.cs ChannelEventArgs.cs diff --git a/src/Discord.Net/API/Status/Common/Incident.cs b/src/Discord.Net/API/Status/Common/StatusResult.cs similarity index 89% rename from src/Discord.Net/API/Status/Common/Incident.cs rename to src/Discord.Net/API/Status/Common/StatusResult.cs index 5cd4989a9..314a180c7 100644 --- a/src/Discord.Net/API/Status/Common/Incident.cs +++ b/src/Discord.Net/API/Status/Common/StatusResult.cs @@ -1,10 +1,9 @@ -using Discord.API.Converters; -using Newtonsoft.Json; +using Newtonsoft.Json; using System; namespace Discord.API.Status { - public class Incident + public class StatusResult { public sealed class PageData { @@ -37,7 +36,7 @@ namespace Discord.API.Status [JsonProperty("created_at")] public DateTime CreatedAt { get; set; } [JsonProperty("updated_at")] - public DateTime? UpdatedAt { get; set; } + public DateTime UpdatedAt { get; set; } [JsonProperty("monitoring_at")] public DateTime? MonitoringAt { get; set; } [JsonProperty("resolved_at")] @@ -55,8 +54,8 @@ namespace Discord.API.Status { [JsonProperty("id")] public string Id { get; set; } - /*[JsonProperty("incident_id")] - public string IncidentId { get; set; }*/ + [JsonProperty("incident_id")] + public string IncidentId { get; set; } [JsonProperty("status")] public string Status { get; set; } [JsonProperty("body")] @@ -75,5 +74,7 @@ namespace Discord.API.Status public PageData Page { get; set; } [JsonProperty("scheduled_maintenances")] public IncidentData[] ScheduledMaintenances { get; set; } + [JsonProperty("incidents")] + public IncidentData[] Incidents { get; set; } } } diff --git a/src/Discord.Net/API/Status/Rest/Active.cs b/src/Discord.Net/API/Status/Rest/ActiveMaintenances.cs similarity index 80% rename from src/Discord.Net/API/Status/Rest/Active.cs rename to src/Discord.Net/API/Status/Rest/ActiveMaintenances.cs index fe4fb1726..5a8412f96 100644 --- a/src/Discord.Net/API/Status/Rest/Active.cs +++ b/src/Discord.Net/API/Status/Rest/ActiveMaintenances.cs @@ -3,7 +3,7 @@ namespace Discord.API.Status.Rest { [JsonObject(MemberSerialization.OptIn)] - public sealed class GetActiveIncidentsRequest : IRestRequest + public sealed class GetActiveMaintenancesRequest : IRestRequest { string IRestRequest.Method => "GET"; string IRestRequest.Endpoint => $"scheduled-maintenances/active.json"; diff --git a/src/Discord.Net/API/Status/Rest/AllIncidents.cs b/src/Discord.Net/API/Status/Rest/AllIncidents.cs new file mode 100644 index 000000000..13f43e022 --- /dev/null +++ b/src/Discord.Net/API/Status/Rest/AllIncidents.cs @@ -0,0 +1,13 @@ +using Newtonsoft.Json; + +namespace Discord.API.Status.Rest +{ + [JsonObject(MemberSerialization.OptIn)] + public sealed class GetAllIncidentsRequest : IRestRequest + { + string IRestRequest.Method => "GET"; + string IRestRequest.Endpoint => $"incidents.json"; + object IRestRequest.Payload => null; + bool IRestRequest.IsPrivate => false; + } +} diff --git a/src/Discord.Net/API/Status/Rest/UnresolvedIncidents.cs b/src/Discord.Net/API/Status/Rest/UnresolvedIncidents.cs new file mode 100644 index 000000000..f07de061c --- /dev/null +++ b/src/Discord.Net/API/Status/Rest/UnresolvedIncidents.cs @@ -0,0 +1,13 @@ +using Newtonsoft.Json; + +namespace Discord.API.Status.Rest +{ + [JsonObject(MemberSerialization.OptIn)] + public sealed class GetUnresolvedIncidentsRequest : IRestRequest + { + string IRestRequest.Method => "GET"; + string IRestRequest.Endpoint => $"incidents/unresolved.json"; + object IRestRequest.Payload => null; + bool IRestRequest.IsPrivate => false; + } +} diff --git a/src/Discord.Net/API/Status/Rest/Upcoming.cs b/src/Discord.Net/API/Status/Rest/UpcomingMaintenances.cs similarity index 80% rename from src/Discord.Net/API/Status/Rest/Upcoming.cs rename to src/Discord.Net/API/Status/Rest/UpcomingMaintenances.cs index 1b6b48321..769602381 100644 --- a/src/Discord.Net/API/Status/Rest/Upcoming.cs +++ b/src/Discord.Net/API/Status/Rest/UpcomingMaintenances.cs @@ -3,7 +3,7 @@ namespace Discord.API.Status.Rest { [JsonObject(MemberSerialization.OptIn)] - public sealed class GetUpcomingIncidentsRequest : IRestRequest + public sealed class GetUpcomingMaintenancesRequest : IRestRequest { string IRestRequest.Method => "GET"; string IRestRequest.Endpoint => $"scheduled-maintenances/upcoming.json"; diff --git a/src/Discord.Net/DiscordConfig.cs b/src/Discord.Net/DiscordConfig.cs index f6e7f16da..f3ff9567f 100644 --- a/src/Discord.Net/DiscordConfig.cs +++ b/src/Discord.Net/DiscordConfig.cs @@ -30,7 +30,7 @@ namespace Discord public const string LibUrl = "https://github.com/RogueException/Discord.Net"; public const string ClientAPIUrl = "https://discordapp.com/api/"; - public const string StatusAPIUrl = "https://status.discordapp.com/api/v2/"; + public const string StatusAPIUrl = "https://srhpyqt94yxb.statuspage.io/api/v2/"; //"https://status.discordapp.com/api/v2/"; //public const string CDNUrl = "https://cdn.discordapp.com/"; public const string InviteUrl = "https://discord.gg/";