public TransientStageAuditLogChanges(IClient client, AuditLogEntryJsonModel model) { for (var i = 0; i < model.Changes.Value.Length; i++) { var change = model.Changes.Value[i]; switch (change.Key) { case "topic": { Topic = AuditLogChange <string> .Convert(change); break; } case "privacy_level": { PrivacyLevel = AuditLogChange <PrivacyLevel> .Convert(change); break; } default: { client.Logger.LogDebug("Unknown key {0} for {1}", change.Key, this); break; } } } }
public TransientStickerAuditLogChanges(IClient client, AuditLogEntryJsonModel model) { for (var i = 0; i < model.Changes.Value.Length; i++) { var change = model.Changes.Value[i]; switch (change.Key) { case "name": { Name = AuditLogChange <string> .Convert(change); break; } case "description": { Description = AuditLogChange <string> .Convert(change); break; } case "tags": { Tags = AuditLogChange <string> .Convert(change); break; } case "format_type": { FormatType = AuditLogChange <StickerFormatType> .Convert(change); break; } case "available": { IsAvailable = AuditLogChange <bool> .Convert(change); break; } case "guild_id": { GuildId = AuditLogChange <Snowflake> .Convert(change); break; } default: { client.Logger.LogDebug("Unknown key {0} for {1}", change.Key, this); break; } } } }
public TransientThreadAuditLogChanges(IClient client, AuditLogEntryJsonModel model) { for (var i = 0; i < model.Changes.Value.Length; i++) { var change = model.Changes.Value[i]; switch (change.Key) { case "name": { Name = AuditLogChange <string> .Convert(change); break; } case "archived": { IsArchived = AuditLogChange <bool> .Convert(change); break; } case "locked": { IsLocked = AuditLogChange <bool> .Convert(change); break; } case "auto_archive_duration": { AutomaticArchiveDuration = AuditLogChange <TimeSpan> .Convert <int>(change, x => TimeSpan.FromMinutes(x)); break; } case "rate_limit_per_user": { Slowmode = AuditLogChange <TimeSpan> .Convert <int>(change, x => TimeSpan.FromSeconds(x)); break; } case "type": { Type = AuditLogChange <ChannelType> .Convert(change); break; } default: { client.Logger.LogDebug("Unknown key {0} for {1}", change.Key, this); break; } } } }
public TransientRoleAuditLogChanges(IClient client, AuditLogEntryJsonModel model) { for (var i = 0; i < model.Changes.Value.Length; i++) { var change = model.Changes.Value[i]; switch (change.Key) { case "name": { Name = AuditLogChange <string> .Convert(change); break; } case "permissions": { Permissions = AuditLogChange <GuildPermissions> .Convert <ulong>(change, x => x); break; } case "color": { Color = AuditLogChange <Color?> .Convert <int>(change, x => x != 0?x : null); break; } case "hoist": { IsHoisted = AuditLogChange <bool> .Convert(change); break; } case "mentionable": { IsMentionable = AuditLogChange <bool> .Convert(change); break; } default: { client.Logger.LogDebug("Unknown key {0} for {1}", change.Key, this); break; } } } }
public TransientWebhookAuditLogChanges(IClient client, AuditLogEntryJsonModel model) { for (var i = 0; i < model.Changes.Value.Length; i++) { var change = model.Changes.Value[i]; switch (change.Key) { case "name": { Name = AuditLogChange <string> .Convert(change); break; } case "type": { Type = AuditLogChange <WebhookType> .Convert(change); break; } case "avatar_hash": { AvatarHash = AuditLogChange <string> .Convert(change); break; } case "channel_id": { ChannelId = AuditLogChange <Snowflake> .Convert(change); break; } case "application_id": { ApplicationId = AuditLogChange <Snowflake?> .Convert(change); break; } default: { client.Logger.LogDebug("Unknown key {0} for {1}", change.Key, this); break; } } } }
public TransientMemberAuditLogChanges(IClient client, AuditLogEntryJsonModel model) { for (var i = 0; i < model.Changes.Value.Length; i++) { var change = model.Changes.Value[i]; switch (change.Key) { case "nick": { Nick = AuditLogChange <string> .Convert(change); break; } case "mute": { IsMuted = AuditLogChange <bool> .Convert(change); break; } case "deaf": { IsDeafened = AuditLogChange <bool> .Convert(change); break; } case "communication_disabled_until": { TimedOutUntil = AuditLogChange <DateTimeOffset> .Convert(change); break; } default: { client.Logger.LogDebug("Unknown key {0} for {1}", change.Key, this); break; } } } }
public TransientOverwriteAuditLogChanges(IClient client, AuditLogEntryJsonModel model) { for (var i = 0; i < model.Changes.Value.Length; i++) { var change = model.Changes.Value[i]; switch (change.Key) { case "id": { TargetId = AuditLogChange <Snowflake> .Convert(change); break; } case "type": { TargetType = AuditLogChange <OverwriteTargetType> .Convert(change); break; } case "allow": { Allowed = AuditLogChange <ChannelPermissions> .Convert <ulong>(change, x => x); break; } case "deny": { Denied = AuditLogChange <ChannelPermissions> .Convert <ulong>(change, x => x); break; } default: { client.Logger.LogDebug("Unknown key {0} for {1}", change.Key, this); break; } } } }
public TransientEmojiAuditLogChanges(IClient client, AuditLogEntryJsonModel model) { for (var i = 0; i < model.Changes.Value.Length; i++) { var change = model.Changes.Value[i]; switch (change.Key) { case "name": { Name = AuditLogChange <string> .Convert(change); break; } default: { client.Logger.LogDebug("Unknown key {0} for {1}", change.Key, this); break; } } } }
public TransientIntegrationAuditLogChanges(IClient client, AuditLogEntryJsonModel model) { for (var i = 0; i < model.Changes.Value.Length; i++) { var change = model.Changes.Value[i]; switch (change.Key) { case "enable_emoticons": { EnablesEmojis = AuditLogChange <bool> .Convert(change); break; } case "expire_behavior": { ExpireBehavior = AuditLogChange <IntegrationExpirationBehavior> .Convert(change); break; } case "expire_grace_period": { ExpireGracePeriod = AuditLogChange <TimeSpan> .Convert <int>(change, x => TimeSpan.FromDays(x)); break; } default: { client.Logger.LogDebug("Unknown key {0} for {1}", change.Key, this); break; } } } }
public TransientInviteAuditLogChanges(IClient client, AuditLogEntryJsonModel model) { for (var i = 0; i < model.Changes.Value.Length; i++) { var change = model.Changes.Value[i]; switch (change.Key) { case "code": { Code = AuditLogChange <string> .Convert(change); break; } case "channel_id": { ChannelId = AuditLogChange <Snowflake> .Convert(change); break; } case "inviter_id": { InviterId = AuditLogChange <Snowflake> .Convert(change); break; } case "max_uses": { MaxUses = AuditLogChange <int> .Convert(change); break; } case "uses": { Uses = AuditLogChange <int> .Convert(change); break; } case "temporary": { IsTemporary = AuditLogChange <bool> .Convert(change); break; } case "max_age": { MaxAge = AuditLogChange <TimeSpan> .Convert <int>(change, x => TimeSpan.FromSeconds(x)); break; } default: { client.Logger.LogDebug("Unknown key {0} for {1}", change.Key, this); break; } } } }
public TransientChannelAuditLogChanges(IClient client, AuditLogEntryJsonModel model) { for (var i = 0; i < model.Changes.Value.Length; i++) { var change = model.Changes.Value[i]; switch (change.Key) { case "name": { Name = AuditLogChange <string> .Convert(change); break; } case "topic": { Topic = AuditLogChange <string> .Convert(change); break; } case "bitrate": { Bitrate = AuditLogChange <int> .Convert(change); break; } case "user_limit": { MemberLimit = AuditLogChange <int> .Convert(change); break; } case "permission_overwrites": { Overwrites = AuditLogChange <IReadOnlyList <IOverwrite> > .Convert(change, (client, model.TargetId.Value), (OverwriteJsonModel[] x, (IClient, Snowflake)tuple) => x.ToReadOnlyList(tuple, (x, tuple) => { var(client, channelId) = tuple; return(new TransientOverwrite(client, channelId, x)); })); break; } case "nsfw": { IsNsfw = AuditLogChange <bool> .Convert(change); break; } case "rate_limit_per_user": { Slowmode = AuditLogChange <TimeSpan> .Convert <int>(change, x => TimeSpan.FromSeconds(x)); break; } case "type": { Type = AuditLogChange <ChannelType> .Convert(change); break; } case "rtc_region": { Region = AuditLogChange <string> .Convert(change); break; } default: { client.Logger.LogDebug("Unknown key {0} for {1}", change.Key, this); break; } } } }
public TransientGuildAuditLogChanges(IClient client, AuditLogJsonModel auditLogJsonModel, AuditLogEntryJsonModel model) { for (var i = 0; i < model.Changes.Value.Length; i++) { var change = model.Changes.Value[i]; switch (change.Key) { case "name": { Name = AuditLogChange <string> .Convert(change); break; } case "description": { Description = AuditLogChange <string> .Convert(change); break; } case "icon_hash": { IconHash = AuditLogChange <string> .Convert(change); break; } case "splash_hash": { SplashHash = AuditLogChange <string> .Convert(change); break; } case "discovery_splash_hash": { DiscoverySplashHash = AuditLogChange <string> .Convert(change); break; } case "banner_hash": { BannerHash = AuditLogChange <string> .Convert(change); break; } case "owner_id": { OwnerId = AuditLogChange <Snowflake> .Convert(change); IUser oldOwner = null; var oldOwnerModel = Array.Find(auditLogJsonModel.Users, x => x.Id == OwnerId.OldValue.Value); if (oldOwnerModel != null) { oldOwner = new TransientUser(client, oldOwnerModel); } IUser newOwner = null; var newOwnerModel = Array.Find(auditLogJsonModel.Users, x => x.Id == OwnerId.NewValue.Value); if (newOwnerModel != null) { newOwner = new TransientUser(client, newOwnerModel); } Owner = new AuditLogChange <Optional <IUser> >(Optional.FromNullable(oldOwner), Optional.FromNullable(newOwner)); break; } case "region": { VoiceRegion = AuditLogChange <string> .Convert(change); break; } case "preferred_locale": { PreferredLocale = AuditLogChange <CultureInfo> .Convert <string>(change, Discord.Internal.GetLocale); break; } case "afk_channel_id": { AfkChannelId = AuditLogChange <Snowflake?> .Convert(change); break; } case "afk_timeout": { AfkTimeout = AuditLogChange <int> .Convert(change); break; } case "rules_channel_id": { RulesChannelId = AuditLogChange <Snowflake?> .Convert(change); break; } case "public_updates_channel_id": { PublicUpdatesChannelId = AuditLogChange <Snowflake?> .Convert(change); break; } case "mfa_level": { MfaLevel = AuditLogChange <GuildMfaLevel> .Convert(change); break; } case "verification_level": { VerificationLevel = AuditLogChange <GuildVerificationLevel> .Convert(change); break; } case "explicit_content_filter": { ContentFilterLevel = AuditLogChange <GuildContentFilterLevel> .Convert(change); break; } case "default_message_notifications": { DefaultNotificationLevel = AuditLogChange <GuildNotificationLevel> .Convert(change); break; } case "vanity_url_code": { VanityUrlCode = AuditLogChange <string> .Convert(change); break; } case "prune_days": { PruneDays = AuditLogChange <int?> .Convert(change); break; } case "widget_enabled": { IsWidgetEnabled = AuditLogChange <bool> .Convert(change); break; } case "widget_channel_id": { WidgetChannelId = AuditLogChange <Snowflake?> .Convert(change); break; } case "system_channel_id": { SystemChannelId = AuditLogChange <Snowflake?> .Convert(change); break; } default: { client.Logger.LogDebug("Unknown key {0} for {1}", change.Key, this); break; } } } }
public TransientGuildEventAuditLogChanges(IClient client, AuditLogEntryJsonModel model) { for (var i = 0; i < model.Changes.Value.Length; i++) { var change = model.Changes.Value[i]; switch (change.Key) { case "channel_id": { ChannelId = AuditLogChange <Snowflake> .Convert(change); break; } case "name": { Name = AuditLogChange <string> .Convert(change); break; } case "description": { Description = AuditLogChange <string> .Convert(change); break; } case "entity_type": { TargetType = AuditLogChange <GuildEventTargetType> .Convert(change); break; } case "location": { Location = AuditLogChange <string> .Convert(change); break; } case "privacy_level": { PrivacyLevel = AuditLogChange <PrivacyLevel> .Convert(change); break; } case "status": { Status = AuditLogChange <GuildEventStatus> .Convert(change); break; } default: { client.Logger.LogDebug("Unknown key {0} for {1}", change.Key, this); break; } } } }