Changed snowflake GetCreatedAt() -> CreatedAt

This commit is contained in:
RogueException
2016-10-08 18:38:41 -03:00
parent c1effbc971
commit 21c38412ad
19 changed files with 29 additions and 15 deletions

View File

@@ -1,6 +1,9 @@
using System;
namespace Discord namespace Discord
{ {
public interface ISnowflakeEntity : IEntity<ulong> public interface ISnowflakeEntity : IEntity<ulong>
{ {
DateTimeOffset CreatedAt { get; }
} }
} }

View File

@@ -1,10 +0,0 @@
using System;
namespace Discord.Extensions
{
public static class SnowflakeEntityExtensions
{
//TODO: C#7 Candidate for extension property.
public static DateTimeOffset GetCreatedAt(this ISnowflakeEntity entity) => DateTimeUtils.FromSnowflake(entity.Id);
}
}

View File

@@ -8,6 +8,8 @@ namespace Discord.Rest
{ {
public abstract class RestChannel : RestEntity<ulong>, IChannel, IUpdateable public abstract class RestChannel : RestEntity<ulong>, IChannel, IUpdateable
{ {
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
internal RestChannel(BaseDiscordClient discord, ulong id) internal RestChannel(BaseDiscordClient discord, ulong id)
: base(discord, id) : base(discord, id)
{ {

View File

@@ -1,5 +1,4 @@
using Discord.Rest; using System;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Diagnostics; using System.Diagnostics;
using System.IO; using System.IO;
@@ -12,6 +11,7 @@ namespace Discord.Rest
[DebuggerDisplay(@"{DebuggerDisplay,nq}")] [DebuggerDisplay(@"{DebuggerDisplay,nq}")]
internal class RestVirtualMessageChannel : RestEntity<ulong>, IMessageChannel internal class RestVirtualMessageChannel : RestEntity<ulong>, IMessageChannel
{ {
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public string Mention => MentionUtils.MentionChannel(Id); public string Mention => MentionUtils.MentionChannel(Id);
internal RestVirtualMessageChannel(BaseDiscordClient discord, ulong id) internal RestVirtualMessageChannel(BaseDiscordClient discord, ulong id)

View File

@@ -33,6 +33,7 @@ namespace Discord.Rest
public string SplashId { get; private set; } public string SplashId { get; private set; }
internal bool Available { get; private set; } internal bool Available { get; private set; }
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public ulong DefaultChannelId => Id; public ulong DefaultChannelId => Id;
public string IconUrl => API.CDN.GetGuildIconUrl(Id, IconId); public string IconUrl => API.CDN.GetGuildIconUrl(Id, IconId);
public string SplashUrl => API.CDN.GetGuildSplashUrl(Id, SplashId); public string SplashUrl => API.CDN.GetGuildSplashUrl(Id, SplashId);

View File

@@ -1,4 +1,5 @@
using System.Diagnostics; using System;
using System.Diagnostics;
using System.Threading.Tasks; using System.Threading.Tasks;
using Model = Discord.API.UserGuild; using Model = Discord.API.UserGuild;
@@ -13,6 +14,7 @@ namespace Discord.Rest
public bool IsOwner { get; private set; } public bool IsOwner { get; private set; }
public GuildPermissions Permissions { get; private set; } public GuildPermissions Permissions { get; private set; }
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public string IconUrl => API.CDN.GetGuildIconUrl(Id, _iconId); public string IconUrl => API.CDN.GetGuildIconUrl(Id, _iconId);
internal RestUserGuild(BaseDiscordClient discord, ulong id) internal RestUserGuild(BaseDiscordClient discord, ulong id)

View File

@@ -17,6 +17,7 @@ namespace Discord.Rest
public string Content { get; private set; } public string Content { get; private set; }
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public virtual bool IsTTS => false; public virtual bool IsTTS => false;
public virtual bool IsPinned => false; public virtual bool IsPinned => false;
public virtual DateTimeOffset? EditedTimestamp => null; public virtual DateTimeOffset? EditedTimestamp => null;

View File

@@ -17,6 +17,7 @@ namespace Discord.Rest
public IUser Owner { get; private set; } public IUser Owner { get; private set; }
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public string IconUrl => API.CDN.GetApplicationIconUrl(Id, _iconId); public string IconUrl => API.CDN.GetApplicationIconUrl(Id, _iconId);
internal RestApplication(BaseDiscordClient discord, ulong id) internal RestApplication(BaseDiscordClient discord, ulong id)

View File

@@ -18,6 +18,7 @@ namespace Discord.Rest
public GuildPermissions Permissions { get; private set; } public GuildPermissions Permissions { get; private set; }
public int Position { get; private set; } public int Position { get; private set; }
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public bool IsEveryone => Id == Guild.Id; public bool IsEveryone => Id == Guild.Id;
public string Mention => MentionUtils.MentionRole(Id); public string Mention => MentionUtils.MentionRole(Id);

View File

@@ -1,4 +1,5 @@
using System.Diagnostics; using System;
using System.Diagnostics;
using System.Threading.Tasks; using System.Threading.Tasks;
using Model = Discord.API.User; using Model = Discord.API.User;
@@ -13,6 +14,7 @@ namespace Discord.Rest
public string AvatarId { get; private set; } public string AvatarId { get; private set; }
public string AvatarUrl => API.CDN.GetUserAvatarUrl(Id, AvatarId); public string AvatarUrl => API.CDN.GetUserAvatarUrl(Id, AvatarId);
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public string Discriminator => DiscriminatorValue.ToString("D4"); public string Discriminator => DiscriminatorValue.ToString("D4");
public string Mention => MentionUtils.MentionUser(Id); public string Mention => MentionUtils.MentionUser(Id);
public virtual Game? Game => null; public virtual Game? Game => null;

View File

@@ -8,6 +8,8 @@ namespace Discord.Rpc
{ {
public string Name { get; private set; } public string Name { get; private set; }
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
internal RpcChannel(DiscordRpcClient discord, ulong id) internal RpcChannel(DiscordRpcClient discord, ulong id)
: base(discord, id) : base(discord, id)
{ {

View File

@@ -15,6 +15,7 @@ namespace Discord.Rpc
public string Content { get; private set; } public string Content { get; private set; }
public Color AuthorColor { get; private set; } public Color AuthorColor { get; private set; }
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public virtual bool IsTTS => false; public virtual bool IsTTS => false;
public virtual bool IsPinned => false; public virtual bool IsPinned => false;
public virtual bool IsBlocked => false; public virtual bool IsBlocked => false;

View File

@@ -1,4 +1,5 @@
using Discord.Rest; using Discord.Rest;
using System;
using System.Diagnostics; using System.Diagnostics;
using System.Threading.Tasks; using System.Threading.Tasks;
using Model = Discord.API.User; using Model = Discord.API.User;
@@ -14,6 +15,7 @@ namespace Discord.Rpc
public string AvatarId { get; private set; } public string AvatarId { get; private set; }
public string AvatarUrl => API.CDN.GetUserAvatarUrl(Id, AvatarId); public string AvatarUrl => API.CDN.GetUserAvatarUrl(Id, AvatarId);
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public string Discriminator => DiscriminatorValue.ToString("D4"); public string Discriminator => DiscriminatorValue.ToString("D4");
public string Mention => MentionUtils.MentionUser(Id); public string Mention => MentionUtils.MentionUser(Id);
public virtual Game? Game => null; public virtual Game? Game => null;

View File

@@ -10,6 +10,7 @@ namespace Discord.WebSocket
[DebuggerDisplay(@"{DebuggerDisplay,nq}")] [DebuggerDisplay(@"{DebuggerDisplay,nq}")]
public abstract class SocketChannel : SocketEntity<ulong>, IChannel public abstract class SocketChannel : SocketEntity<ulong>, IChannel
{ {
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public IReadOnlyCollection<SocketUser> Users => GetUsersInternal(); public IReadOnlyCollection<SocketUser> Users => GetUsersInternal();
internal SocketChannel(DiscordSocketClient discord, ulong id) internal SocketChannel(DiscordSocketClient discord, ulong id)

View File

@@ -51,6 +51,7 @@ namespace Discord.WebSocket
public string IconId { get; private set; } public string IconId { get; private set; }
public string SplashId { get; private set; } public string SplashId { get; private set; }
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public ulong DefaultChannelId => Id; public ulong DefaultChannelId => Id;
public string IconUrl => API.CDN.GetGuildIconUrl(Id, IconId); public string IconUrl => API.CDN.GetGuildIconUrl(Id, IconId);
public string SplashUrl => API.CDN.GetGuildSplashUrl(Id, SplashId); public string SplashUrl => API.CDN.GetGuildSplashUrl(Id, SplashId);

View File

@@ -15,6 +15,7 @@ namespace Discord.WebSocket
public string Content { get; private set; } public string Content { get; private set; }
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public virtual bool IsTTS => false; public virtual bool IsTTS => false;
public virtual bool IsPinned => false; public virtual bool IsPinned => false;
public virtual DateTimeOffset? EditedTimestamp => null; public virtual DateTimeOffset? EditedTimestamp => null;

View File

@@ -18,7 +18,7 @@ namespace Discord.WebSocket
private ImmutableArray<Attachment> _attachments; private ImmutableArray<Attachment> _attachments;
private ImmutableArray<Embed> _embeds; private ImmutableArray<Embed> _embeds;
private ImmutableArray<ITag> _tags; private ImmutableArray<ITag> _tags;
public override bool IsTTS => _isTTS; public override bool IsTTS => _isTTS;
public override bool IsPinned => _isPinned; public override bool IsPinned => _isPinned;
public override ulong? WebhookId => _webhookId; public override ulong? WebhookId => _webhookId;

View File

@@ -20,6 +20,7 @@ namespace Discord.WebSocket
public GuildPermissions Permissions { get; private set; } public GuildPermissions Permissions { get; private set; }
public int Position { get; private set; } public int Position { get; private set; }
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public bool IsEveryone => Id == Guild.Id; public bool IsEveryone => Id == Guild.Id;
public string Mention => MentionUtils.MentionRole(Id); public string Mention => MentionUtils.MentionRole(Id);

View File

@@ -1,4 +1,5 @@
using Discord.Rest; using Discord.Rest;
using System;
using System.Threading.Tasks; using System.Threading.Tasks;
using Model = Discord.API.User; using Model = Discord.API.User;
using PresenceModel = Discord.API.Presence; using PresenceModel = Discord.API.Presence;
@@ -15,6 +16,7 @@ namespace Discord.WebSocket
internal abstract SocketPresence Presence { get; set; } internal abstract SocketPresence Presence { get; set; }
public string AvatarUrl => API.CDN.GetUserAvatarUrl(Id, AvatarId); public string AvatarUrl => API.CDN.GetUserAvatarUrl(Id, AvatarId);
public DateTimeOffset CreatedAt => DateTimeUtils.FromSnowflake(Id);
public string Discriminator => DiscriminatorValue.ToString("D4"); public string Discriminator => DiscriminatorValue.ToString("D4");
public string Mention => MentionUtils.MentionUser(Id); public string Mention => MentionUtils.MentionUser(Id);
public Game? Game => Presence.Game; public Game? Game => Presence.Game;