diff --git a/src/Discord.Net.Commands/CommandsPlugin.Events.cs b/src/Discord.Net.Commands/CommandsPlugin.Events.cs
index df2575cbf..41201b386 100644
--- a/src/Discord.Net.Commands/CommandsPlugin.Events.cs
+++ b/src/Discord.Net.Commands/CommandsPlugin.Events.cs
@@ -12,7 +12,7 @@ namespace Discord.Commands
public int? Permissions { get; }
public string[] Args { get; }
- public User Member => Message.Member;
+ public User Member => Message.User;
public Channel Channel => Message.Channel;
public Server Server => Message.Channel.Server;
diff --git a/src/Discord.Net.Commands/CommandsPlugin.cs b/src/Discord.Net.Commands/CommandsPlugin.cs
index 6a0986cf8..dc2446a51 100644
--- a/src/Discord.Net.Commands/CommandsPlugin.cs
+++ b/src/Discord.Net.Commands/CommandsPlugin.cs
@@ -96,7 +96,7 @@ namespace Discord.Commands
argText = msg.Substring(args[cmd.Parts.Length].Index);
//Check Permissions
- int permissions = _getPermissions != null ? _getPermissions(e.Message.Member) : 0;
+ int permissions = _getPermissions != null ? _getPermissions(e.Message.User) : 0;
var eventArgs = new CommandEventArgs(e.Message, cmd, msg, argText, permissions, newArgs);
if (permissions < cmd.MinPerms)
{
diff --git a/src/Discord.Net/API/Enums/PermissionTarget.cs b/src/Discord.Net/API/Enums/PermissionTarget.cs
index 63672f3b5..28427f247 100644
--- a/src/Discord.Net/API/Enums/PermissionTarget.cs
+++ b/src/Discord.Net/API/Enums/PermissionTarget.cs
@@ -5,7 +5,7 @@
/// A text-only channel.
public static readonly PermissionTarget Role = new PermissionTarget("role");
/// A voice-only channel.
- public static readonly PermissionTarget Member = new PermissionTarget("member");
+ public static readonly PermissionTarget User = new PermissionTarget("member");
private PermissionTarget(string value)
: base(value) { }
@@ -19,7 +19,7 @@
case "role":
return PermissionTarget.Role;
case "member":
- return PermissionTarget.Member;
+ return PermissionTarget.User;
default:
return new PermissionTarget(value);
}
diff --git a/src/Discord.Net/DiscordClient.Channels.cs b/src/Discord.Net/DiscordClient.Channels.cs
index 6ad7068bf..b5d3b7f8c 100644
--- a/src/Discord.Net/DiscordClient.Channels.cs
+++ b/src/Discord.Net/DiscordClient.Channels.cs
@@ -106,7 +106,7 @@ namespace Discord
if (channel == null)
{
var response = await _api.CreatePMChannel(_userId, member.Id).ConfigureAwait(false);
- var recipient = _members.GetOrAdd(response.Recipient?.Id, null);
+ var recipient = _users.GetOrAdd(response.Recipient?.Id, null);
recipient.Update(response.Recipient);
channel = _channels.GetOrAdd(response.Id, response.GuildId, response.Recipient?.Id);
channel.Update(response);
diff --git a/src/Discord.Net/DiscordClient.Members.cs b/src/Discord.Net/DiscordClient.Members.cs
index 3ea034951..119bbec95 100644
--- a/src/Discord.Net/DiscordClient.Members.cs
+++ b/src/Discord.Net/DiscordClient.Members.cs
@@ -5,9 +5,9 @@ using System.Threading.Tasks;
namespace Discord
{
- internal sealed class Members : AsyncCollection
+ internal sealed class Users : AsyncCollection
{
- public Members(DiscordClient client, object writerLock)
+ public Users(DiscordClient client, object writerLock)
: base(client, writerLock, x => x.OnCached(), x => x.OnUncached()) { }
private string GetKey(string userId, string serverId)
=> User.GetId(userId, serverId);
@@ -22,25 +22,23 @@ namespace Discord
public class MemberEventArgs : EventArgs
{
- public User Member { get; }
- public string UserId => Member.Id;
- public Server Server => Member.Server;
- public string ServerId => Member.ServerId;
+ public User User { get; }
+ public Server Server => User.Server;
- internal MemberEventArgs(User member) { Member = member; }
+ internal MemberEventArgs(User user) { User = user; }
}
- public class MemberChannelEventArgs : MemberEventArgs
+ public class UserChannelEventArgs : MemberEventArgs
{
public Channel Channel { get; }
public string ChannelId => Channel.Id;
- internal MemberChannelEventArgs(User member, Channel channel)
- : base(member)
+ internal UserChannelEventArgs(User user, Channel channel)
+ : base(user)
{
Channel = channel;
}
}
- public class MemberIsSpeakingEventArgs : MemberChannelEventArgs
+ public class MemberIsSpeakingEventArgs : UserChannelEventArgs
{
public bool IsSpeaking { get; }
@@ -53,11 +51,11 @@ namespace Discord
public partial class DiscordClient
{
- public event EventHandler UserIsTyping;
+ public event EventHandler UserIsTyping;
private void RaiseUserIsTyping(User member, Channel channel)
{
if (UserIsTyping != null)
- RaiseEvent(nameof(UserIsTyping), () => UserIsTyping(this, new MemberChannelEventArgs(member, channel)));
+ RaiseEvent(nameof(UserIsTyping), () => UserIsTyping(this, new UserChannelEventArgs(member, channel)));
}
public event EventHandler UserIsSpeaking;
private void RaiseUserIsSpeaking(User member, Channel channel, bool isSpeaking)
@@ -68,8 +66,8 @@ namespace Discord
private User _currentUser;
- internal Members Members => _members;
- private readonly Members _members;
+ internal Users Users => _users;
+ private readonly Users _users;
/// Returns the user with the specified id, along with their server-specific data, or null if none was found.
public User GetMember(Server server, string userId)
@@ -78,7 +76,7 @@ namespace Discord
if (userId == null) throw new ArgumentNullException(nameof(userId));
CheckReady();
- return _members[userId, server.Id];
+ return _users[userId, server.Id];
}
/// Returns the user with the specified name and discriminator, along withtheir server-specific data, or null if they couldn't be found.
/// Name formats supported: Name and @Name. Search is case-insensitive.
@@ -90,7 +88,7 @@ namespace Discord
CheckReady();
User member = FindMembers(server, username, discriminator, true).FirstOrDefault();
- return _members[member?.Id, server.Id];
+ return _users[member?.Id, server.Id];
}
/// Returns all users in with the specified server and name, along with their server-specific data.
diff --git a/src/Discord.Net/DiscordClient.Messages.cs b/src/Discord.Net/DiscordClient.Messages.cs
index bd334fbf7..9796e9318 100644
--- a/src/Discord.Net/DiscordClient.Messages.cs
+++ b/src/Discord.Net/DiscordClient.Messages.cs
@@ -34,7 +34,7 @@ namespace Discord
public class MessageEventArgs : EventArgs
{
public Message Message { get; }
- public User Member => Message.Member;
+ public User Member => Message.User;
public Channel Channel => Message.Channel;
public Server Server => Message.Server;
@@ -118,7 +118,7 @@ namespace Discord
{
var nonce = GenerateNonce();
msg = _messages.GetOrAdd("nonce_" + nonce, channel.Id, _userId);
- var currentUser = msg.Member;
+ var currentUser = msg.User;
msg.Update(new MessageInfo
{
Content = text,
@@ -127,7 +127,7 @@ namespace Discord
ChannelId = channel.Id,
IsTextToSpeech = isTextToSpeech
});
- msg.Mentions = userIds.Select(x => _members[x, channel.Server.Id]).Where(x => x != null).ToArray();
+ msg.Mentions = userIds.Select(x => _users[x, channel.Server.Id]).Where(x => x != null).ToArray();
msg.IsQueued = true;
msg.Nonce = nonce;
_pendingMessages.Enqueue(msg);
@@ -218,7 +218,7 @@ namespace Discord
{
if (!channel.IsPrivate)
{
- var member = msg.Member;
+ var member = msg.User;
if (member != null)
member.UpdateActivity(msg.EditedTimestamp ?? msg.Timestamp);
}
diff --git a/src/Discord.Net/DiscordClient.Permissions.cs b/src/Discord.Net/DiscordClient.Permissions.cs
index 687308302..291ef1881 100644
--- a/src/Discord.Net/DiscordClient.Permissions.cs
+++ b/src/Discord.Net/DiscordClient.Permissions.cs
@@ -13,7 +13,7 @@ namespace Discord
if (member == null) throw new ArgumentNullException(nameof(member));
CheckReady();
- return SetChannelPermissions(channel, member?.Id, PermissionTarget.Member, allow, deny);
+ return SetChannelPermissions(channel, member?.Id, PermissionTarget.User, allow, deny);
}
public Task SetChannelUserPermissions(Channel channel, User member, DualChannelPermissions permissions = null)
{
@@ -21,7 +21,7 @@ namespace Discord
if (member == null) throw new ArgumentNullException(nameof(member));
CheckReady();
- return SetChannelPermissions(channel, member?.Id, PermissionTarget.Member, permissions?.Allow, permissions?.Deny);
+ return SetChannelPermissions(channel, member?.Id, PermissionTarget.User, permissions?.Allow, permissions?.Deny);
}
public Task SetChannelRolePermissions(Channel channel, Role role, ChannelPermissions allow = null, ChannelPermissions deny = null)
{
@@ -82,7 +82,7 @@ namespace Discord
{
if (targetType == PermissionTarget.Role)
channel.InvalidatePermissionsCache();
- else if (targetType == PermissionTarget.Member)
+ else if (targetType == PermissionTarget.User)
channel.InvalidatePermissionsCache(targetId);
}
}
@@ -93,7 +93,7 @@ namespace Discord
if (member == null) throw new ArgumentNullException(nameof(member));
CheckReady();
- return RemoveChannelPermissions(channel, member?.Id, PermissionTarget.Member);
+ return RemoveChannelPermissions(channel, member?.Id, PermissionTarget.User);
}
public Task RemoveChannelRolePermissions(Channel channel, Role role)
{
@@ -115,7 +115,7 @@ namespace Discord
if (targetType == PermissionTarget.Role)
channel.InvalidatePermissionsCache();
- else if (targetType == PermissionTarget.Member)
+ else if (targetType == PermissionTarget.User)
channel.InvalidatePermissionsCache(userOrRoleId);
}
}
diff --git a/src/Discord.Net/DiscordClient.Users.cs b/src/Discord.Net/DiscordClient.Users.cs
index 7033f2b82..ba9a083ae 100644
--- a/src/Discord.Net/DiscordClient.Users.cs
+++ b/src/Discord.Net/DiscordClient.Users.cs
@@ -6,9 +6,9 @@ using System.Threading.Tasks;
namespace Discord
{
- internal sealed class Users : AsyncCollection
+ internal sealed class GlobalUsers : AsyncCollection
{
- public Users(DiscordClient client, object writerLock)
+ public GlobalUsers(DiscordClient client, object writerLock)
: base(client, writerLock, x => x.OnCached(), x => x.OnUncached()) { }
public GlobalUser GetOrAdd(string id) => GetOrAdd(id, () => new GlobalUser(_client, id));
@@ -54,8 +54,8 @@ namespace Discord
}
/// Returns a collection of all users this client can currently see.
- internal Users Users => _users;
- private readonly Users _users;
+ internal GlobalUsers GlobalUsers => _globalUsers;
+ private readonly GlobalUsers _globalUsers;
public Task EditProfile(string currentPassword = "",
string username = null, string email = null, string password = null,
diff --git a/src/Discord.Net/DiscordClient.cs b/src/Discord.Net/DiscordClient.cs
index 7577b9398..6e05a6259 100644
--- a/src/Discord.Net/DiscordClient.cs
+++ b/src/Discord.Net/DiscordClient.cs
@@ -43,11 +43,11 @@ namespace Discord
object cacheLock = new object();
_channels = new Channels(this, cacheLock);
- _members = new Members(this, cacheLock);
+ _users = new Users(this, cacheLock);
_messages = new Messages(this, cacheLock, Config.MessageCacheLength > 0);
_roles = new Roles(this, cacheLock);
_servers = new Servers(this, cacheLock);
- _users = new Users(this, cacheLock);
+ _globalUsers = new GlobalUsers(this, cacheLock);
_status = UserStatus.Online;
@@ -59,7 +59,7 @@ namespace Discord
VoiceDisconnected += (s, e) =>
{
- foreach (var member in _members)
+ foreach (var member in _users)
{
if (member.ServerId == e.ServerId && member.IsSpeaking)
{
@@ -117,13 +117,13 @@ namespace Discord
if (_config.LogLevel >= LogMessageSeverity.Verbose)
{
UserIsTyping += (s, e) => RaiseOnLog(LogMessageSeverity.Verbose, LogMessageSource.Client,
- $"Updated User (Is Typing): {e.Server?.Name ?? "[Private]"}/{e.Channel?.Name}/{e.Member?.Name}");
+ $"Updated User (Is Typing): {e.Server?.Name ?? "[Private]"}/{e.Channel?.Name}/{e.User?.Name}");
MessageReadRemotely += (s, e) => RaiseOnLog(LogMessageSeverity.Verbose, LogMessageSource.Client,
$"Read Message (Remotely): {e.Server?.Name ?? "[Private]"}/{e.Channel?.Name}/{e.Message?.Id}");
MessageSent += (s, e) => RaiseOnLog(LogMessageSeverity.Verbose, LogMessageSource.Client,
$"Sent Message: {e.Server?.Name ?? "[Private]"}/{e.Channel?.Name}/{e.Message?.Id}");
UserPresenceUpdated += (s, e) => RaiseOnLog(LogMessageSeverity.Verbose, LogMessageSource.Client,
- $"Updated Member (Presence): {e.Server?.Name ?? "[Private]"}/{e.Member?.Name}");
+ $"Updated Member (Presence): {e.Server?.Name ?? "[Private]"}/{e.User?.Name}");
_api.RestClient.OnRequest += (s, e) =>
{
@@ -138,9 +138,9 @@ namespace Discord
_channels.ItemCreated += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Created Channel {e.Item.Server?.Id ?? "[Private]"}/{e.Item.Id}");
_channels.ItemDestroyed += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Destroyed Channel {e.Item.Server?.Id ?? "[Private]"}/{e.Item.Id}");
_channels.Cleared += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Cleared Channels");
- _members.ItemCreated += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Created Member {e.Item.Server?.Id ?? "[Private]"}/{e.Item.Id}");
- _members.ItemDestroyed += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Destroyed Member {e.Item.Server?.Id ?? "[Private]"}/{e.Item.Id}");
- _members.Cleared += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Cleared Members");
+ _users.ItemCreated += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Created Member {e.Item.Server?.Id ?? "[Private]"}/{e.Item.Id}");
+ _users.ItemDestroyed += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Destroyed Member {e.Item.Server?.Id ?? "[Private]"}/{e.Item.Id}");
+ _users.Cleared += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Cleared Members");
_messages.ItemCreated += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Created Message {e.Item.Server?.Id ?? "[Private]"}/{e.Item.Channel.Id}/{e.Item.Id}");
_messages.ItemDestroyed += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Destroyed Message {e.Item.Server?.Id ?? "[Private]"}/{e.Item.Channel.Id}/{e.Item.Id}");
_messages.ItemRemapped += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Remapped Message {e.Item.Server?.Id ?? "[Private]"}/{e.Item.Channel.Id}/[{e.OldId} -> {e.NewId}]");
@@ -151,9 +151,9 @@ namespace Discord
_servers.ItemCreated += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Created Server {e.Item.Id}");
_servers.ItemDestroyed += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Destroyed Server {e.Item.Id}");
_servers.Cleared += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Cleared Servers");
- _users.ItemCreated += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Created User {e.Item.Id}");
- _users.ItemDestroyed += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Destroyed User {e.Item.Id}");
- _users.Cleared += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Cleared Users");
+ _globalUsers.ItemCreated += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Created User {e.Item.Id}");
+ _globalUsers.ItemDestroyed += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Destroyed User {e.Item.Id}");
+ _globalUsers.Cleared += (s, e) => RaiseOnLog(LogMessageSeverity.Debug, LogMessageSource.Cache, $"Cleared Users");
}
if (Config.UseMessageQueue)
@@ -173,7 +173,7 @@ namespace Discord
{
if (_voiceSocket.State == WebSocketState.Connected)
{
- var member = _members[e.UserId, socket.CurrentServerId];
+ var member = _users[e.UserId, socket.CurrentServerId];
bool value = e.IsSpeaking;
if (member.IsSpeaking != value)
{
@@ -260,11 +260,11 @@ namespace Discord
await _api.Logout();
_channels.Clear();
- _members.Clear();
+ _users.Clear();
_messages.Clear();
_roles.Clear();
_servers.Clear();
- _users.Clear();
+ _globalUsers.Clear();
_currentUser = null;
}
@@ -289,7 +289,7 @@ namespace Discord
case "READY": //Resync
{
var data = e.Payload.ToObject(_serializer);
- _currentUser = _members.GetOrAdd(data.User.Id, null);
+ _currentUser = _users.GetOrAdd(data.User.Id, null);
_currentUser.Update(data.User);
foreach (var model in data.Guilds)
{
@@ -301,7 +301,7 @@ namespace Discord
}
foreach (var model in data.PrivateChannels)
{
- var user = _members.GetOrAdd(model.Recipient.Id, null);
+ var user = _users.GetOrAdd(model.Recipient.Id, null);
user.Update(model.Recipient);
var channel = _channels.GetOrAdd(model.Id, null, user.Id);
channel.Update(model);
@@ -356,7 +356,7 @@ namespace Discord
Channel channel;
if (data.IsPrivate)
{
- var member = _members.GetOrAdd(data.Recipient.Id, null);
+ var member = _users.GetOrAdd(data.Recipient.Id, null);
member.Update(data.Recipient);
channel = _channels.GetOrAdd(data.Id, null, member.Id);
}
@@ -390,7 +390,7 @@ namespace Discord
case "GUILD_MEMBER_ADD":
{
var data = e.Payload.ToObject(_serializer);
- var member = _members.GetOrAdd(data.User.Id, data.GuildId);
+ var member = _users.GetOrAdd(data.User.Id, data.GuildId);
member.Update(data);
if (Config.TrackActivity)
member.UpdateActivity();
@@ -400,7 +400,7 @@ namespace Discord
case "GUILD_MEMBER_UPDATE":
{
var data = e.Payload.ToObject(_serializer);
- var member = _members[data.User.Id, data.GuildId];
+ var member = _users[data.User.Id, data.GuildId];
if (member != null)
{
member.Update(data);
@@ -411,7 +411,7 @@ namespace Discord
case "GUILD_MEMBER_REMOVE":
{
var data = e.Payload.ToObject(_serializer);
- var member = _members.TryRemove(data.UserId, data.GuildId);
+ var member = _users.TryRemove(data.UserId, data.GuildId);
if (member != null)
RaiseUserRemoved(member);
}
@@ -491,7 +491,7 @@ namespace Discord
var channel = msg.Channel;
if (channel?.IsPrivate == false)
{
- var member = msg.Member;
+ var member = msg.User;
if (member != null)
member.UpdateActivity(data.Timestamp);
}
@@ -535,7 +535,7 @@ namespace Discord
case "PRESENCE_UPDATE":
{
var data = e.Payload.ToObject(_serializer);
- var member = _members.GetOrAdd(data.User.Id, data.GuildId);
+ var member = _users.GetOrAdd(data.User.Id, data.GuildId);
if (member != null)
{
member.Update(data);
@@ -549,7 +549,7 @@ namespace Discord
var channel = _channels[data.ChannelId];
if (channel != null)
{
- var user = _members[data.UserId, channel.Server?.Id];
+ var user = _users[data.UserId, channel.Server?.Id];
if (user != null)
{
@@ -560,7 +560,7 @@ namespace Discord
{
if (!channel.IsPrivate)
{
- var member = _members[data.UserId, channel.Server.Id];
+ var member = _users[data.UserId, channel.Server.Id];
if (member != null)
member.UpdateActivity();
}
@@ -573,7 +573,7 @@ namespace Discord
case "VOICE_STATE_UPDATE":
{
var data = e.Payload.ToObject(_serializer);
- var member = _members[data.UserId, data.GuildId];
+ var member = _users[data.UserId, data.GuildId];
if (member != null)
{
if (data.ChannelId != member.VoiceChannelId && member.IsSpeaking)
@@ -591,7 +591,7 @@ namespace Discord
case "USER_UPDATE":
{
var data = e.Payload.ToObject(_serializer);
- var user = _users[data.Id];
+ var user = _globalUsers[data.Id];
if (user != null)
{
user.Update(data);
diff --git a/src/Discord.Net/Helpers/Mention.cs b/src/Discord.Net/Helpers/Mention.cs
index 13e239a03..127c5ffa2 100644
--- a/src/Discord.Net/Helpers/Mention.cs
+++ b/src/Discord.Net/Helpers/Mention.cs
@@ -10,8 +10,8 @@ namespace Discord
private static readonly Regex _channelRegex = new Regex(@"<#(\d+?)>", RegexOptions.Compiled);
/// Returns the string used to create a user mention.
- public static string User(User member)
- => $"<@{member.Id}>";
+ public static string User(User user)
+ => $"<@{user.Id}>";
/// Returns the string used to create a channel mention.
public static string Channel(Channel channel)
=> $"<#{channel.Id}>";
@@ -24,7 +24,7 @@ namespace Discord
text = _userRegex.Replace(text, new MatchEvaluator(e =>
{
string id = e.Value.Substring(2, e.Value.Length - 3);
- var user = client.Members[id, server.Id];
+ var user = client.Users[id, server.Id];
if (user != null)
return '@' + user.Name;
else //User not found
diff --git a/src/Discord.Net/Models/Channel.cs b/src/Discord.Net/Models/Channel.cs
index 80bdd94b4..2a11b03db 100644
--- a/src/Discord.Net/Models/Channel.cs
+++ b/src/Discord.Net/Models/Channel.cs
@@ -54,14 +54,14 @@ namespace Discord
get
{
if (!_areMembersStale)
- return _members;
+ return _members.Select(x => x.Value);
- _members = Server.Members.Where(x => x.GetPermissions(this)?.ReadMessages ?? false).ToArray();
+ _members = Server.Members.Where(x => x.GetPermissions(this)?.ReadMessages ?? false).ToDictionary(x => x.Id, x => x);
_areMembersStale = false;
- return _members;
+ return _members.Select(x => x.Value);
}
}
- private User[] _members;
+ private Dictionary _members;
private bool _areMembersStale;
/// Returns a collection of all messages the client has seen posted in this channel. This collection does not guarantee any ordering.
@@ -90,7 +90,7 @@ namespace Discord
if (IsPrivate)
{
- var recipient = _client.Members[_recipientId, _serverId];
+ var recipient = _client.Users[_recipientId, _serverId];
Name = "@" + recipient.Name;
Recipient = recipient;
}
@@ -170,9 +170,9 @@ namespace Discord
internal void InvalidatePermissionsCache(string userId)
{
_areMembersStale = true;
- var member = _client.Members[userId, _serverId];
- if (member != null)
- member.UpdateChannelPermissions(this);
+ var user = _members[userId]
+ if (user != null)
+ user.UpdateChannelPermissions(this);
}
}
}
diff --git a/src/Discord.Net/Models/GlobalUser.cs b/src/Discord.Net/Models/GlobalUser.cs
index 329371f62..fd44d5bb9 100644
--- a/src/Discord.Net/Models/GlobalUser.cs
+++ b/src/Discord.Net/Models/GlobalUser.cs
@@ -26,7 +26,7 @@ namespace Discord
/// Returns a collection of all server-specific data for every server this user is a member of.
[JsonIgnore]
- public IEnumerable Memberships => _users.Select(x => _client.Members[Id, x.Key]);
+ public IEnumerable Memberships => _users.Select(x => _client.Users[Id, x.Key]);
internal GlobalUser(DiscordClient client, string id)
: base(client, id)
@@ -50,7 +50,7 @@ namespace Discord
if (_users.TryRemove(user.Id, out user))
{
if (_users.Count == 0)
- _client.Users.TryRemove(Id);
+ _client.GlobalUsers.TryRemove(Id);
}
}
diff --git a/src/Discord.Net/Models/Invite.cs b/src/Discord.Net/Models/Invite.cs
index cc3e38444..e6b122239 100644
--- a/src/Discord.Net/Models/Invite.cs
+++ b/src/Discord.Net/Models/Invite.cs
@@ -27,7 +27,7 @@ namespace Discord
/// Returns the user that created this invite.
[JsonIgnore]
- public User Inviter => _client.Members[_inviterId, _serverId];
+ public User Inviter => _client.Users[_inviterId, _serverId];
/// Returns the server this invite is to.
[JsonIgnore]
diff --git a/src/Discord.Net/Models/Message.cs b/src/Discord.Net/Models/Message.cs
index 094d1494f..193ab87e4 100644
--- a/src/Discord.Net/Models/Message.cs
+++ b/src/Discord.Net/Models/Message.cs
@@ -144,7 +144,7 @@ namespace Discord
public string UserId { get; }
/// Returns the author of this message.
[JsonIgnore]
- public User Member => _client.Members[_userId, Channel.Server.Id];
+ public User User => _client.Users[_userId, Channel.Server.Id];
internal Message(DiscordClient client, string id, string channelId, string userId)
: base(client, id)
@@ -214,6 +214,6 @@ namespace Discord
}
}
- public override string ToString() => Member.Name + ": " + RawText;
+ public override string ToString() => User.Name + ": " + RawText;
}
}
diff --git a/src/Discord.Net/Models/Server.cs b/src/Discord.Net/Models/Server.cs
index 822ca6ff6..8cdf95925 100644
--- a/src/Discord.Net/Models/Server.cs
+++ b/src/Discord.Net/Models/Server.cs
@@ -71,7 +71,7 @@ namespace Discord
/// Returns a collection of all users within this server with their server-specific data.
[JsonIgnore]
- public IEnumerable Members => _members.Select(x => _client.Members[x.Key, Id]);
+ public IEnumerable Members => _members.Select(x => _client.Users[x.Key, Id]);
/// Return the id of the role representing all users in a server.
public string EveryoneRoleId => Id;
@@ -102,7 +102,7 @@ namespace Discord
foreach (var channel in _channels)
channels.TryRemove(channel.Key);
- var members = _client.Members;
+ var members = _client.Users;
foreach (var user in _members)
members.TryRemove(user.Key, Id);
@@ -132,7 +132,7 @@ namespace Discord
if (model.OwnerId != null && _ownerId != model.OwnerId)
{
_ownerId = model.OwnerId;
- Owner = _client.Members[_ownerId, Id];
+ Owner = _client.Users[_ownerId, Id];
}
if (model.Region != null)
Region = model.Region;
@@ -158,8 +158,8 @@ namespace Discord
channel.Update(subModel);
}
- var users = _client.Users;
- var members = _client.Members;
+ var users = _client.GlobalUsers;
+ var members = _client.Users;
foreach (var subModel in model.Members)
{
var member = members.GetOrAdd(subModel.User.Id, Id);
diff --git a/src/Discord.Net/Models/User.cs b/src/Discord.Net/Models/User.cs
index 3519c4f31..72af1165b 100644
--- a/src/Discord.Net/Models/User.cs
+++ b/src/Discord.Net/Models/User.cs
@@ -52,7 +52,7 @@ namespace Discord
private DateTime _lastOnline;
[JsonIgnore]
- internal GlobalUser GlobalUser => _client.Users[Id];
+ internal GlobalUser GlobalUser => _client.GlobalUsers[Id];
public string ServerId { get; }
[JsonIgnore]
@@ -213,9 +213,9 @@ namespace Discord
newPermissions &= ~denyRole.Deny.RawValue;
foreach (var allowRole in channelOverwrites.Where(x => x.TargetType == PermissionTarget.Role && x.Allow.RawValue != 0 && roles.Any(y => y.Id == x.TargetId)))
newPermissions |= allowRole.Allow.RawValue;
- foreach (var denyMembers in channelOverwrites.Where(x => x.TargetType == PermissionTarget.Member && x.TargetId == Id && x.Deny.RawValue != 0))
+ foreach (var denyMembers in channelOverwrites.Where(x => x.TargetType == PermissionTarget.User && x.TargetId == Id && x.Deny.RawValue != 0))
newPermissions &= ~denyMembers.Deny.RawValue;
- foreach (var allowMembers in channelOverwrites.Where(x => x.TargetType == PermissionTarget.Member && x.TargetId == Id && x.Allow.RawValue != 0))
+ foreach (var allowMembers in channelOverwrites.Where(x => x.TargetType == PermissionTarget.User && x.TargetId == Id && x.Allow.RawValue != 0))
newPermissions |= allowMembers.Allow.RawValue;
}