@@ -17,7 +17,7 @@ using System.Threading.Tasks; | |||||
namespace Discord.API | namespace Discord.API | ||||
{ | { | ||||
public class DiscordRawClient | |||||
public class DiscordAPIClient | |||||
{ | { | ||||
internal event EventHandler<SentRequestEventArgs> SentRequest; | internal event EventHandler<SentRequestEventArgs> SentRequest; | ||||
@@ -30,7 +30,7 @@ namespace Discord.API | |||||
public IRestClient RestClient { get; private set; } | public IRestClient RestClient { get; private set; } | ||||
public IRequestQueue RequestQueue { get; private set; } | public IRequestQueue RequestQueue { get; private set; } | ||||
public DiscordRawClient(RestClientProvider restClientProvider) | |||||
public DiscordAPIClient(RestClientProvider restClientProvider) | |||||
{ | { | ||||
_restClient = restClientProvider(DiscordConfig.ClientAPIUrl); | _restClient = restClientProvider(DiscordConfig.ClientAPIUrl); | ||||
_restClient.SetHeader("accept", "*/*"); | _restClient.SetHeader("accept", "*/*"); |
@@ -47,13 +47,13 @@ namespace Discord | |||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task Accept() | public async Task Accept() | ||||
{ | { | ||||
await Discord.BaseClient.AcceptInvite(Code).ConfigureAwait(false); | |||||
await Discord.APIClient.AcceptInvite(Code).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task Delete() | public async Task Delete() | ||||
{ | { | ||||
await Discord.BaseClient.DeleteInvite(Code).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteInvite(Code).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
@@ -105,7 +105,7 @@ | |||||
<Compile Include="Common\Entities\Users\Game.cs" /> | <Compile Include="Common\Entities\Users\Game.cs" /> | ||||
<Compile Include="Common\Entities\Users\StreamType.cs" /> | <Compile Include="Common\Entities\Users\StreamType.cs" /> | ||||
<Compile Include="DiscordConfig.cs" /> | <Compile Include="DiscordConfig.cs" /> | ||||
<Compile Include="API\DiscordRawClient.cs" /> | |||||
<Compile Include="API\DiscordAPIClient.cs" /> | |||||
<Compile Include="API\Int53Attribute.cs" /> | <Compile Include="API\Int53Attribute.cs" /> | ||||
<Compile Include="Preconditions.cs" /> | <Compile Include="Preconditions.cs" /> | ||||
<Compile Include="Net\Converters\DiscordContractResolver.cs" /> | <Compile Include="Net\Converters\DiscordContractResolver.cs" /> | ||||
@@ -10,7 +10,7 @@ namespace Discord | |||||
public interface IDiscordClient | public interface IDiscordClient | ||||
{ | { | ||||
TokenType AuthTokenType { get; } | TokenType AuthTokenType { get; } | ||||
DiscordRawClient BaseClient { get; } | |||||
DiscordAPIClient APIClient { get; } | |||||
IRestClient RestClient { get; } | IRestClient RestClient { get; } | ||||
IRequestQueue RequestQueue { get; } | IRequestQueue RequestQueue { get; } | ||||
@@ -24,11 +24,11 @@ namespace Discord.Rest | |||||
private SelfUser _currentUser; | private SelfUser _currentUser; | ||||
public bool IsLoggedIn { get; private set; } | public bool IsLoggedIn { get; private set; } | ||||
public API.DiscordRawClient BaseClient { get; private set; } | |||||
public API.DiscordAPIClient APIClient { get; private set; } | |||||
public TokenType AuthTokenType => BaseClient.AuthTokenType; | |||||
public IRestClient RestClient => BaseClient.RestClient; | |||||
public IRequestQueue RequestQueue => BaseClient.RequestQueue; | |||||
public TokenType AuthTokenType => APIClient.AuthTokenType; | |||||
public IRestClient RestClient => APIClient.RestClient; | |||||
public IRequestQueue RequestQueue => APIClient.RequestQueue; | |||||
public DiscordClient(DiscordConfig config = null) | public DiscordClient(DiscordConfig config = null) | ||||
{ | { | ||||
@@ -40,7 +40,7 @@ namespace Discord.Rest | |||||
_connectionLock = new SemaphoreSlim(1, 1); | _connectionLock = new SemaphoreSlim(1, 1); | ||||
_log = new LogManager(config.LogLevel); | _log = new LogManager(config.LogLevel); | ||||
_userAgent = DiscordConfig.UserAgent; | _userAgent = DiscordConfig.UserAgent; | ||||
BaseClient = new API.DiscordRawClient(_restClientProvider); | |||||
APIClient = new API.DiscordAPIClient(_restClientProvider); | |||||
_log.Message += (s,e) => Log.Raise(this, e); | _log.Message += (s,e) => Log.Raise(this, e); | ||||
} | } | ||||
@@ -72,7 +72,7 @@ namespace Discord.Rest | |||||
_cancelTokenSource = new CancellationTokenSource(); | _cancelTokenSource = new CancellationTokenSource(); | ||||
var args = new LoginParams { Email = email, Password = password }; | var args = new LoginParams { Email = email, Password = password }; | ||||
await BaseClient.Login(args, _cancelTokenSource.Token).ConfigureAwait(false); | |||||
await APIClient.Login(args, _cancelTokenSource.Token).ConfigureAwait(false); | |||||
await CompleteLogin(false).ConfigureAwait(false); | await CompleteLogin(false).ConfigureAwait(false); | ||||
} | } | ||||
catch { await LogoutInternal().ConfigureAwait(false); throw; } | catch { await LogoutInternal().ConfigureAwait(false); throw; } | ||||
@@ -85,22 +85,22 @@ namespace Discord.Rest | |||||
{ | { | ||||
_cancelTokenSource = new CancellationTokenSource(); | _cancelTokenSource = new CancellationTokenSource(); | ||||
await BaseClient.Login(tokenType, token, _cancelTokenSource.Token).ConfigureAwait(false); | |||||
await APIClient.Login(tokenType, token, _cancelTokenSource.Token).ConfigureAwait(false); | |||||
await CompleteLogin(validateToken).ConfigureAwait(false); | await CompleteLogin(validateToken).ConfigureAwait(false); | ||||
} | } | ||||
catch { await LogoutInternal().ConfigureAwait(false); throw; } | catch { await LogoutInternal().ConfigureAwait(false); throw; } | ||||
} | } | ||||
private async Task CompleteLogin(bool validateToken) | private async Task CompleteLogin(bool validateToken) | ||||
{ | { | ||||
BaseClient.SentRequest += (s, e) => _log.Verbose("Rest", $"{e.Method} {e.Endpoint}: {e.Milliseconds} ms"); | |||||
APIClient.SentRequest += (s, e) => _log.Verbose("Rest", $"{e.Method} {e.Endpoint}: {e.Milliseconds} ms"); | |||||
if (validateToken) | if (validateToken) | ||||
{ | { | ||||
try | try | ||||
{ | { | ||||
await BaseClient.ValidateToken().ConfigureAwait(false); | |||||
await APIClient.ValidateToken().ConfigureAwait(false); | |||||
} | } | ||||
catch { await BaseClient.Logout().ConfigureAwait(false); } | |||||
catch { await APIClient.Logout().ConfigureAwait(false); } | |||||
} | } | ||||
IsLoggedIn = true; | IsLoggedIn = true; | ||||
@@ -127,7 +127,7 @@ namespace Discord.Rest | |||||
catch { } | catch { } | ||||
} | } | ||||
await BaseClient.Logout().ConfigureAwait(false); | |||||
await APIClient.Logout().ConfigureAwait(false); | |||||
_currentUser = null; | _currentUser = null; | ||||
if (wasLoggedIn) | if (wasLoggedIn) | ||||
@@ -139,18 +139,18 @@ namespace Discord.Rest | |||||
public async Task<IEnumerable<Connection>> GetConnections() | public async Task<IEnumerable<Connection>> GetConnections() | ||||
{ | { | ||||
var models = await BaseClient.GetCurrentUserConnections().ConfigureAwait(false); | |||||
var models = await APIClient.GetCurrentUserConnections().ConfigureAwait(false); | |||||
return models.Select(x => new Connection(x)); | return models.Select(x => new Connection(x)); | ||||
} | } | ||||
public async Task<IChannel> GetChannel(ulong id) | public async Task<IChannel> GetChannel(ulong id) | ||||
{ | { | ||||
var model = await BaseClient.GetChannel(id).ConfigureAwait(false); | |||||
var model = await APIClient.GetChannel(id).ConfigureAwait(false); | |||||
if (model != null) | if (model != null) | ||||
{ | { | ||||
if (model.GuildId != null) | if (model.GuildId != null) | ||||
{ | { | ||||
var guildModel = await BaseClient.GetGuild(model.GuildId.Value).ConfigureAwait(false); | |||||
var guildModel = await APIClient.GetGuild(model.GuildId.Value).ConfigureAwait(false); | |||||
if (guildModel != null) | if (guildModel != null) | ||||
{ | { | ||||
var guild = new Guild(this, guildModel); | var guild = new Guild(this, guildModel); | ||||
@@ -164,13 +164,13 @@ namespace Discord.Rest | |||||
} | } | ||||
public async Task<IEnumerable<DMChannel>> GetDMChannels() | public async Task<IEnumerable<DMChannel>> GetDMChannels() | ||||
{ | { | ||||
var models = await BaseClient.GetCurrentUserDMs().ConfigureAwait(false); | |||||
var models = await APIClient.GetCurrentUserDMs().ConfigureAwait(false); | |||||
return models.Select(x => new DMChannel(this, x)); | return models.Select(x => new DMChannel(this, x)); | ||||
} | } | ||||
public async Task<Invite> GetInvite(string inviteIdOrXkcd) | public async Task<Invite> GetInvite(string inviteIdOrXkcd) | ||||
{ | { | ||||
var model = await BaseClient.GetInvite(inviteIdOrXkcd).ConfigureAwait(false); | |||||
var model = await APIClient.GetInvite(inviteIdOrXkcd).ConfigureAwait(false); | |||||
if (model != null) | if (model != null) | ||||
return new Invite(this, model); | return new Invite(this, model); | ||||
return null; | return null; | ||||
@@ -178,41 +178,41 @@ namespace Discord.Rest | |||||
public async Task<Guild> GetGuild(ulong id) | public async Task<Guild> GetGuild(ulong id) | ||||
{ | { | ||||
var model = await BaseClient.GetGuild(id).ConfigureAwait(false); | |||||
var model = await APIClient.GetGuild(id).ConfigureAwait(false); | |||||
if (model != null) | if (model != null) | ||||
return new Guild(this, model); | return new Guild(this, model); | ||||
return null; | return null; | ||||
} | } | ||||
public async Task<GuildEmbed> GetGuildEmbed(ulong id) | public async Task<GuildEmbed> GetGuildEmbed(ulong id) | ||||
{ | { | ||||
var model = await BaseClient.GetGuildEmbed(id).ConfigureAwait(false); | |||||
var model = await APIClient.GetGuildEmbed(id).ConfigureAwait(false); | |||||
if (model != null) | if (model != null) | ||||
return new GuildEmbed(model); | return new GuildEmbed(model); | ||||
return null; | return null; | ||||
} | } | ||||
public async Task<IEnumerable<UserGuild>> GetGuilds() | public async Task<IEnumerable<UserGuild>> GetGuilds() | ||||
{ | { | ||||
var models = await BaseClient.GetCurrentUserGuilds().ConfigureAwait(false); | |||||
var models = await APIClient.GetCurrentUserGuilds().ConfigureAwait(false); | |||||
return models.Select(x => new UserGuild(this, x)); | return models.Select(x => new UserGuild(this, x)); | ||||
} | } | ||||
public async Task<Guild> CreateGuild(string name, IVoiceRegion region, Stream jpegIcon = null) | public async Task<Guild> CreateGuild(string name, IVoiceRegion region, Stream jpegIcon = null) | ||||
{ | { | ||||
var args = new CreateGuildParams(); | var args = new CreateGuildParams(); | ||||
var model = await BaseClient.CreateGuild(args).ConfigureAwait(false); | |||||
var model = await APIClient.CreateGuild(args).ConfigureAwait(false); | |||||
return new Guild(this, model); | return new Guild(this, model); | ||||
} | } | ||||
public async Task<User> GetUser(ulong id) | public async Task<User> GetUser(ulong id) | ||||
{ | { | ||||
var model = await BaseClient.GetUser(id).ConfigureAwait(false); | |||||
var model = await APIClient.GetUser(id).ConfigureAwait(false); | |||||
if (model != null) | if (model != null) | ||||
return new PublicUser(this, model); | return new PublicUser(this, model); | ||||
return null; | return null; | ||||
} | } | ||||
public async Task<User> GetUser(string username, ushort discriminator) | public async Task<User> GetUser(string username, ushort discriminator) | ||||
{ | { | ||||
var model = await BaseClient.GetUser(username, discriminator).ConfigureAwait(false); | |||||
var model = await APIClient.GetUser(username, discriminator).ConfigureAwait(false); | |||||
if (model != null) | if (model != null) | ||||
return new PublicUser(this, model); | return new PublicUser(this, model); | ||||
return null; | return null; | ||||
@@ -222,7 +222,7 @@ namespace Discord.Rest | |||||
var user = _currentUser; | var user = _currentUser; | ||||
if (user == null) | if (user == null) | ||||
{ | { | ||||
var model = await BaseClient.GetCurrentUser().ConfigureAwait(false); | |||||
var model = await APIClient.GetCurrentUser().ConfigureAwait(false); | |||||
user = new SelfUser(this, model); | user = new SelfUser(this, model); | ||||
_currentUser = user; | _currentUser = user; | ||||
} | } | ||||
@@ -230,23 +230,23 @@ namespace Discord.Rest | |||||
} | } | ||||
public async Task<IEnumerable<User>> QueryUsers(string query, int limit) | public async Task<IEnumerable<User>> QueryUsers(string query, int limit) | ||||
{ | { | ||||
var models = await BaseClient.QueryUsers(query, limit).ConfigureAwait(false); | |||||
var models = await APIClient.QueryUsers(query, limit).ConfigureAwait(false); | |||||
return models.Select(x => new PublicUser(this, x)); | return models.Select(x => new PublicUser(this, x)); | ||||
} | } | ||||
public async Task<IEnumerable<VoiceRegion>> GetVoiceRegions() | public async Task<IEnumerable<VoiceRegion>> GetVoiceRegions() | ||||
{ | { | ||||
var models = await BaseClient.GetVoiceRegions().ConfigureAwait(false); | |||||
var models = await APIClient.GetVoiceRegions().ConfigureAwait(false); | |||||
return models.Select(x => new VoiceRegion(x)); | return models.Select(x => new VoiceRegion(x)); | ||||
} | } | ||||
public async Task<VoiceRegion> GetVoiceRegion(string id) | public async Task<VoiceRegion> GetVoiceRegion(string id) | ||||
{ | { | ||||
var models = await BaseClient.GetVoiceRegions().ConfigureAwait(false); | |||||
var models = await APIClient.GetVoiceRegions().ConfigureAwait(false); | |||||
return models.Select(x => new VoiceRegion(x)).Where(x => x.Id == id).FirstOrDefault(); | return models.Select(x => new VoiceRegion(x)).Where(x => x.Id == id).FirstOrDefault(); | ||||
} | } | ||||
public async Task<VoiceRegion> GetOptimalVoiceRegion() | public async Task<VoiceRegion> GetOptimalVoiceRegion() | ||||
{ | { | ||||
var models = await BaseClient.GetVoiceRegions().ConfigureAwait(false); | |||||
var models = await APIClient.GetVoiceRegions().ConfigureAwait(false); | |||||
return models.Select(x => new VoiceRegion(x)).Where(x => x.IsOptimal).FirstOrDefault(); | return models.Select(x => new VoiceRegion(x)).Where(x => x.IsOptimal).FirstOrDefault(); | ||||
} | } | ||||
@@ -261,7 +261,7 @@ namespace Discord.Rest | |||||
} | } | ||||
public void Dispose() => Dispose(true); | public void Dispose() => Dispose(true); | ||||
API.DiscordRawClient IDiscordClient.BaseClient => BaseClient; | |||||
API.DiscordAPIClient IDiscordClient.APIClient => APIClient; | |||||
async Task<IChannel> IDiscordClient.GetChannel(ulong id) | async Task<IChannel> IDiscordClient.GetChannel(ulong id) | ||||
=> await GetChannel(id).ConfigureAwait(false); | => await GetChannel(id).ConfigureAwait(false); | ||||
@@ -60,14 +60,14 @@ namespace Discord.Rest | |||||
public async Task<IEnumerable<Message>> GetMessages(int limit = DiscordConfig.MaxMessagesPerBatch) | public async Task<IEnumerable<Message>> GetMessages(int limit = DiscordConfig.MaxMessagesPerBatch) | ||||
{ | { | ||||
var args = new GetChannelMessagesParams { Limit = limit }; | var args = new GetChannelMessagesParams { Limit = limit }; | ||||
var models = await Discord.BaseClient.GetChannelMessages(Id, args).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetChannelMessages(Id, args).ConfigureAwait(false); | |||||
return models.Select(x => new Message(this, x)); | return models.Select(x => new Message(this, x)); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task<IEnumerable<Message>> GetMessages(ulong fromMessageId, Direction dir, int limit = DiscordConfig.MaxMessagesPerBatch) | public async Task<IEnumerable<Message>> GetMessages(ulong fromMessageId, Direction dir, int limit = DiscordConfig.MaxMessagesPerBatch) | ||||
{ | { | ||||
var args = new GetChannelMessagesParams { Limit = limit }; | var args = new GetChannelMessagesParams { Limit = limit }; | ||||
var models = await Discord.BaseClient.GetChannelMessages(Id, args).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetChannelMessages(Id, args).ConfigureAwait(false); | |||||
return models.Select(x => new Message(this, x)); | return models.Select(x => new Message(this, x)); | ||||
} | } | ||||
@@ -75,7 +75,7 @@ namespace Discord.Rest | |||||
public async Task<Message> SendMessage(string text, bool isTTS = false) | public async Task<Message> SendMessage(string text, bool isTTS = false) | ||||
{ | { | ||||
var args = new CreateMessageParams { Content = text, IsTTS = isTTS }; | var args = new CreateMessageParams { Content = text, IsTTS = isTTS }; | ||||
var model = await Discord.BaseClient.CreateDMMessage(Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateDMMessage(Id, args).ConfigureAwait(false); | |||||
return new Message(this, model); | return new Message(this, model); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
@@ -85,7 +85,7 @@ namespace Discord.Rest | |||||
using (var file = File.OpenRead(filePath)) | using (var file = File.OpenRead(filePath)) | ||||
{ | { | ||||
var args = new UploadFileParams { Filename = filename, Content = text, IsTTS = isTTS }; | var args = new UploadFileParams { Filename = filename, Content = text, IsTTS = isTTS }; | ||||
var model = await Discord.BaseClient.UploadDMFile(Id, file, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.UploadDMFile(Id, file, args).ConfigureAwait(false); | |||||
return new Message(this, model); | return new Message(this, model); | ||||
} | } | ||||
} | } | ||||
@@ -93,32 +93,32 @@ namespace Discord.Rest | |||||
public async Task<Message> SendFile(Stream stream, string filename, string text = null, bool isTTS = false) | public async Task<Message> SendFile(Stream stream, string filename, string text = null, bool isTTS = false) | ||||
{ | { | ||||
var args = new UploadFileParams { Filename = filename, Content = text, IsTTS = isTTS }; | var args = new UploadFileParams { Filename = filename, Content = text, IsTTS = isTTS }; | ||||
var model = await Discord.BaseClient.UploadDMFile(Id, stream, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.UploadDMFile(Id, stream, args).ConfigureAwait(false); | |||||
return new Message(this, model); | return new Message(this, model); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task DeleteMessages(IEnumerable<IMessage> messages) | public async Task DeleteMessages(IEnumerable<IMessage> messages) | ||||
{ | { | ||||
await Discord.BaseClient.DeleteDMMessages(Id, new DeleteMessagesParam { MessageIds = messages.Select(x => x.Id) }).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteDMMessages(Id, new DeleteMessagesParam { MessageIds = messages.Select(x => x.Id) }).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task TriggerTyping() | public async Task TriggerTyping() | ||||
{ | { | ||||
await Discord.BaseClient.TriggerTypingIndicator(Id).ConfigureAwait(false); | |||||
await Discord.APIClient.TriggerTypingIndicator(Id).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task Close() | public async Task Close() | ||||
{ | { | ||||
await Discord.BaseClient.DeleteChannel(Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteChannel(Id).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task Update() | public async Task Update() | ||||
{ | { | ||||
var model = await Discord.BaseClient.GetChannel(Id).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.GetChannel(Id).ConfigureAwait(false); | |||||
Update(model); | Update(model); | ||||
} | } | ||||
@@ -55,7 +55,7 @@ namespace Discord.Rest | |||||
var args = new ModifyGuildChannelParams(); | var args = new ModifyGuildChannelParams(); | ||||
func(args); | func(args); | ||||
var model = await Discord.BaseClient.ModifyGuildChannel(Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.ModifyGuildChannel(Id, args).ConfigureAwait(false); | |||||
Update(model); | Update(model); | ||||
} | } | ||||
@@ -78,7 +78,7 @@ namespace Discord.Rest | |||||
/// <summary> Downloads a collection of all invites to this channel. </summary> | /// <summary> Downloads a collection of all invites to this channel. </summary> | ||||
public async Task<IEnumerable<InviteMetadata>> GetInvites() | public async Task<IEnumerable<InviteMetadata>> GetInvites() | ||||
{ | { | ||||
var models = await Discord.BaseClient.GetChannelInvites(Id).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetChannelInvites(Id).ConfigureAwait(false); | |||||
return models.Select(x => new InviteMetadata(Discord, x)); | return models.Select(x => new InviteMetadata(Discord, x)); | ||||
} | } | ||||
@@ -86,20 +86,20 @@ namespace Discord.Rest | |||||
public async Task AddPermissionOverwrite(IUser user, OverwritePermissions perms) | public async Task AddPermissionOverwrite(IUser user, OverwritePermissions perms) | ||||
{ | { | ||||
var args = new ModifyChannelPermissionsParams { Allow = perms.AllowValue, Deny = perms.DenyValue }; | var args = new ModifyChannelPermissionsParams { Allow = perms.AllowValue, Deny = perms.DenyValue }; | ||||
await Discord.BaseClient.ModifyChannelPermissions(Id, user.Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyChannelPermissions(Id, user.Id, args).ConfigureAwait(false); | |||||
_overwrites[user.Id] = new Overwrite(new API.Overwrite { Allow = perms.AllowValue, Deny = perms.DenyValue, TargetId = user.Id, TargetType = PermissionTarget.User }); | _overwrites[user.Id] = new Overwrite(new API.Overwrite { Allow = perms.AllowValue, Deny = perms.DenyValue, TargetId = user.Id, TargetType = PermissionTarget.User }); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task AddPermissionOverwrite(IRole role, OverwritePermissions perms) | public async Task AddPermissionOverwrite(IRole role, OverwritePermissions perms) | ||||
{ | { | ||||
var args = new ModifyChannelPermissionsParams { Allow = perms.AllowValue, Deny = perms.DenyValue }; | var args = new ModifyChannelPermissionsParams { Allow = perms.AllowValue, Deny = perms.DenyValue }; | ||||
await Discord.BaseClient.ModifyChannelPermissions(Id, role.Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyChannelPermissions(Id, role.Id, args).ConfigureAwait(false); | |||||
_overwrites[role.Id] = new Overwrite(new API.Overwrite { Allow = perms.AllowValue, Deny = perms.DenyValue, TargetId = role.Id, TargetType = PermissionTarget.Role }); | _overwrites[role.Id] = new Overwrite(new API.Overwrite { Allow = perms.AllowValue, Deny = perms.DenyValue, TargetId = role.Id, TargetType = PermissionTarget.Role }); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task RemovePermissionOverwrite(IUser user) | public async Task RemovePermissionOverwrite(IUser user) | ||||
{ | { | ||||
await Discord.BaseClient.DeleteChannelPermission(Id, user.Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteChannelPermission(Id, user.Id).ConfigureAwait(false); | |||||
Overwrite value; | Overwrite value; | ||||
_overwrites.TryRemove(user.Id, out value); | _overwrites.TryRemove(user.Id, out value); | ||||
@@ -107,7 +107,7 @@ namespace Discord.Rest | |||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task RemovePermissionOverwrite(IRole role) | public async Task RemovePermissionOverwrite(IRole role) | ||||
{ | { | ||||
await Discord.BaseClient.DeleteChannelPermission(Id, role.Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteChannelPermission(Id, role.Id).ConfigureAwait(false); | |||||
Overwrite value; | Overwrite value; | ||||
_overwrites.TryRemove(role.Id, out value); | _overwrites.TryRemove(role.Id, out value); | ||||
@@ -127,19 +127,19 @@ namespace Discord.Rest | |||||
Temporary = isTemporary, | Temporary = isTemporary, | ||||
XkcdPass = withXkcd | XkcdPass = withXkcd | ||||
}; | }; | ||||
var model = await Discord.BaseClient.CreateChannelInvite(Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateChannelInvite(Id, args).ConfigureAwait(false); | |||||
return new InviteMetadata(Discord, model); | return new InviteMetadata(Discord, model); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task Delete() | public async Task Delete() | ||||
{ | { | ||||
await Discord.BaseClient.DeleteChannel(Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteChannel(Id).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task Update() | public async Task Update() | ||||
{ | { | ||||
var model = await Discord.BaseClient.GetChannel(Id).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.GetChannel(Id).ConfigureAwait(false); | |||||
Update(model); | Update(model); | ||||
} | } | ||||
@@ -35,7 +35,7 @@ namespace Discord.Rest | |||||
var args = new ModifyTextChannelParams(); | var args = new ModifyTextChannelParams(); | ||||
func(args); | func(args); | ||||
var model = await Discord.BaseClient.ModifyGuildChannel(Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.ModifyGuildChannel(Id, args).ConfigureAwait(false); | |||||
Update(model); | Update(model); | ||||
} | } | ||||
@@ -64,14 +64,14 @@ namespace Discord.Rest | |||||
public async Task<IEnumerable<Message>> GetMessages(int limit = DiscordConfig.MaxMessagesPerBatch) | public async Task<IEnumerable<Message>> GetMessages(int limit = DiscordConfig.MaxMessagesPerBatch) | ||||
{ | { | ||||
var args = new GetChannelMessagesParams { Limit = limit }; | var args = new GetChannelMessagesParams { Limit = limit }; | ||||
var models = await Discord.BaseClient.GetChannelMessages(Id, args).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetChannelMessages(Id, args).ConfigureAwait(false); | |||||
return models.Select(x => new Message(this, x)); | return models.Select(x => new Message(this, x)); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task<IEnumerable<Message>> GetMessages(ulong fromMessageId, Direction dir, int limit = DiscordConfig.MaxMessagesPerBatch) | public async Task<IEnumerable<Message>> GetMessages(ulong fromMessageId, Direction dir, int limit = DiscordConfig.MaxMessagesPerBatch) | ||||
{ | { | ||||
var args = new GetChannelMessagesParams { Limit = limit }; | var args = new GetChannelMessagesParams { Limit = limit }; | ||||
var models = await Discord.BaseClient.GetChannelMessages(Id, args).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetChannelMessages(Id, args).ConfigureAwait(false); | |||||
return models.Select(x => new Message(this, x)); | return models.Select(x => new Message(this, x)); | ||||
} | } | ||||
@@ -79,7 +79,7 @@ namespace Discord.Rest | |||||
public async Task<Message> SendMessage(string text, bool isTTS = false) | public async Task<Message> SendMessage(string text, bool isTTS = false) | ||||
{ | { | ||||
var args = new CreateMessageParams { Content = text, IsTTS = isTTS }; | var args = new CreateMessageParams { Content = text, IsTTS = isTTS }; | ||||
var model = await Discord.BaseClient.CreateMessage(Guild.Id, Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateMessage(Guild.Id, Id, args).ConfigureAwait(false); | |||||
return new Message(this, model); | return new Message(this, model); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
@@ -89,7 +89,7 @@ namespace Discord.Rest | |||||
using (var file = File.OpenRead(filePath)) | using (var file = File.OpenRead(filePath)) | ||||
{ | { | ||||
var args = new UploadFileParams { Filename = filename, Content = text, IsTTS = isTTS }; | var args = new UploadFileParams { Filename = filename, Content = text, IsTTS = isTTS }; | ||||
var model = await Discord.BaseClient.UploadFile(Guild.Id, Id, file, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.UploadFile(Guild.Id, Id, file, args).ConfigureAwait(false); | |||||
return new Message(this, model); | return new Message(this, model); | ||||
} | } | ||||
} | } | ||||
@@ -97,20 +97,20 @@ namespace Discord.Rest | |||||
public async Task<Message> SendFile(Stream stream, string filename, string text = null, bool isTTS = false) | public async Task<Message> SendFile(Stream stream, string filename, string text = null, bool isTTS = false) | ||||
{ | { | ||||
var args = new UploadFileParams { Filename = filename, Content = text, IsTTS = isTTS }; | var args = new UploadFileParams { Filename = filename, Content = text, IsTTS = isTTS }; | ||||
var model = await Discord.BaseClient.UploadFile(Guild.Id, Id, stream, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.UploadFile(Guild.Id, Id, stream, args).ConfigureAwait(false); | |||||
return new Message(this, model); | return new Message(this, model); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task DeleteMessages(IEnumerable<IMessage> messages) | public async Task DeleteMessages(IEnumerable<IMessage> messages) | ||||
{ | { | ||||
await Discord.BaseClient.DeleteMessages(Guild.Id, Id, new DeleteMessagesParam { MessageIds = messages.Select(x => x.Id) }).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteMessages(Guild.Id, Id, new DeleteMessagesParam { MessageIds = messages.Select(x => x.Id) }).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task TriggerTyping() | public async Task TriggerTyping() | ||||
{ | { | ||||
await Discord.BaseClient.TriggerTypingIndicator(Id).ConfigureAwait(false); | |||||
await Discord.APIClient.TriggerTypingIndicator(Id).ConfigureAwait(false); | |||||
} | } | ||||
private string DebuggerDisplay => $"{Name} ({Id}, Text)"; | private string DebuggerDisplay => $"{Name} ({Id}, Text)"; | ||||
@@ -30,7 +30,7 @@ namespace Discord.Rest | |||||
var args = new ModifyVoiceChannelParams(); | var args = new ModifyVoiceChannelParams(); | ||||
func(args); | func(args); | ||||
var model = await Discord.BaseClient.ModifyGuildChannel(Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.ModifyGuildChannel(Id, args).ConfigureAwait(false); | |||||
Update(model); | Update(model); | ||||
} | } | ||||
@@ -115,7 +115,7 @@ namespace Discord.Rest | |||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task Update() | public async Task Update() | ||||
{ | { | ||||
var response = await Discord.BaseClient.GetGuild(Id).ConfigureAwait(false); | |||||
var response = await Discord.APIClient.GetGuild(Id).ConfigureAwait(false); | |||||
Update(response); | Update(response); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
@@ -125,7 +125,7 @@ namespace Discord.Rest | |||||
var args = new ModifyGuildParams(); | var args = new ModifyGuildParams(); | ||||
func(args); | func(args); | ||||
var model = await Discord.BaseClient.ModifyGuild(Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.ModifyGuild(Id, args).ConfigureAwait(false); | |||||
Update(model); | Update(model); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
@@ -135,35 +135,35 @@ namespace Discord.Rest | |||||
var args = new ModifyGuildEmbedParams(); | var args = new ModifyGuildEmbedParams(); | ||||
func(args); | func(args); | ||||
var model = await Discord.BaseClient.ModifyGuildEmbed(Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.ModifyGuildEmbed(Id, args).ConfigureAwait(false); | |||||
Update(model); | Update(model); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task ModifyChannels(IEnumerable<ModifyGuildChannelsParams> args) | public async Task ModifyChannels(IEnumerable<ModifyGuildChannelsParams> args) | ||||
{ | { | ||||
await Discord.BaseClient.ModifyGuildChannels(Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyGuildChannels(Id, args).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task ModifyRoles(IEnumerable<ModifyGuildRolesParams> args) | public async Task ModifyRoles(IEnumerable<ModifyGuildRolesParams> args) | ||||
{ | { | ||||
var models = await Discord.BaseClient.ModifyGuildRoles(Id, args).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.ModifyGuildRoles(Id, args).ConfigureAwait(false); | |||||
Update(models); | Update(models); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task Leave() | public async Task Leave() | ||||
{ | { | ||||
await Discord.BaseClient.LeaveGuild(Id).ConfigureAwait(false); | |||||
await Discord.APIClient.LeaveGuild(Id).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task Delete() | public async Task Delete() | ||||
{ | { | ||||
await Discord.BaseClient.DeleteGuild(Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteGuild(Id).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task<IEnumerable<User>> GetBans() | public async Task<IEnumerable<User>> GetBans() | ||||
{ | { | ||||
var models = await Discord.BaseClient.GetGuildBans(Id).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetGuildBans(Id).ConfigureAwait(false); | |||||
return models.Select(x => new PublicUser(Discord, x)); | return models.Select(x => new PublicUser(Discord, x)); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
@@ -175,20 +175,20 @@ namespace Discord.Rest | |||||
{ | { | ||||
PruneDays = pruneDays | PruneDays = pruneDays | ||||
}; | }; | ||||
await Discord.BaseClient.CreateGuildBan(Id, userId, args).ConfigureAwait(false); | |||||
await Discord.APIClient.CreateGuildBan(Id, userId, args).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public Task RemoveBan(IUser user) => RemoveBan(user.Id); | public Task RemoveBan(IUser user) => RemoveBan(user.Id); | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task RemoveBan(ulong userId) | public async Task RemoveBan(ulong userId) | ||||
{ | { | ||||
await Discord.BaseClient.RemoveGuildBan(Id, userId).ConfigureAwait(false); | |||||
await Discord.APIClient.RemoveGuildBan(Id, userId).ConfigureAwait(false); | |||||
} | } | ||||
/// <summary> Gets the channel in this guild with the provided id, or null if not found. </summary> | /// <summary> Gets the channel in this guild with the provided id, or null if not found. </summary> | ||||
public async Task<GuildChannel> GetChannel(ulong id) | public async Task<GuildChannel> GetChannel(ulong id) | ||||
{ | { | ||||
var model = await Discord.BaseClient.GetChannel(Id, id).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.GetChannel(Id, id).ConfigureAwait(false); | |||||
if (model != null) | if (model != null) | ||||
return ToChannel(model); | return ToChannel(model); | ||||
return null; | return null; | ||||
@@ -196,7 +196,7 @@ namespace Discord.Rest | |||||
/// <summary> Gets a collection of all channels in this guild. </summary> | /// <summary> Gets a collection of all channels in this guild. </summary> | ||||
public async Task<IEnumerable<GuildChannel>> GetChannels() | public async Task<IEnumerable<GuildChannel>> GetChannels() | ||||
{ | { | ||||
var models = await Discord.BaseClient.GetGuildChannels(Id).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetGuildChannels(Id).ConfigureAwait(false); | |||||
return models.Select(x => ToChannel(x)); | return models.Select(x => ToChannel(x)); | ||||
} | } | ||||
/// <summary> Creates a new text channel. </summary> | /// <summary> Creates a new text channel. </summary> | ||||
@@ -205,7 +205,7 @@ namespace Discord.Rest | |||||
if (name == null) throw new ArgumentNullException(nameof(name)); | if (name == null) throw new ArgumentNullException(nameof(name)); | ||||
var args = new CreateGuildChannelParams() { Name = name, Type = ChannelType.Text }; | var args = new CreateGuildChannelParams() { Name = name, Type = ChannelType.Text }; | ||||
var model = await Discord.BaseClient.CreateGuildChannel(Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateGuildChannel(Id, args).ConfigureAwait(false); | |||||
return new TextChannel(this, model); | return new TextChannel(this, model); | ||||
} | } | ||||
/// <summary> Creates a new voice channel. </summary> | /// <summary> Creates a new voice channel. </summary> | ||||
@@ -214,28 +214,28 @@ namespace Discord.Rest | |||||
if (name == null) throw new ArgumentNullException(nameof(name)); | if (name == null) throw new ArgumentNullException(nameof(name)); | ||||
var args = new CreateGuildChannelParams { Name = name, Type = ChannelType.Voice }; | var args = new CreateGuildChannelParams { Name = name, Type = ChannelType.Voice }; | ||||
var model = await Discord.BaseClient.CreateGuildChannel(Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateGuildChannel(Id, args).ConfigureAwait(false); | |||||
return new VoiceChannel(this, model); | return new VoiceChannel(this, model); | ||||
} | } | ||||
/// <summary> Gets a collection of all integrations attached to this guild. </summary> | /// <summary> Gets a collection of all integrations attached to this guild. </summary> | ||||
public async Task<IEnumerable<GuildIntegration>> GetIntegrations() | public async Task<IEnumerable<GuildIntegration>> GetIntegrations() | ||||
{ | { | ||||
var models = await Discord.BaseClient.GetGuildIntegrations(Id).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetGuildIntegrations(Id).ConfigureAwait(false); | |||||
return models.Select(x => new GuildIntegration(this, x)); | return models.Select(x => new GuildIntegration(this, x)); | ||||
} | } | ||||
/// <summary> Creates a new integration for this guild. </summary> | /// <summary> Creates a new integration for this guild. </summary> | ||||
public async Task<GuildIntegration> CreateIntegration(ulong id, string type) | public async Task<GuildIntegration> CreateIntegration(ulong id, string type) | ||||
{ | { | ||||
var args = new CreateGuildIntegrationParams { Id = id, Type = type }; | var args = new CreateGuildIntegrationParams { Id = id, Type = type }; | ||||
var model = await Discord.BaseClient.CreateGuildIntegration(Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateGuildIntegration(Id, args).ConfigureAwait(false); | |||||
return new GuildIntegration(this, model); | return new GuildIntegration(this, model); | ||||
} | } | ||||
/// <summary> Gets a collection of all invites to this guild. </summary> | /// <summary> Gets a collection of all invites to this guild. </summary> | ||||
public async Task<IEnumerable<InviteMetadata>> GetInvites() | public async Task<IEnumerable<InviteMetadata>> GetInvites() | ||||
{ | { | ||||
var models = await Discord.BaseClient.GetGuildInvites(Id).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetGuildInvites(Id).ConfigureAwait(false); | |||||
return models.Select(x => new InviteMetadata(Discord, x)); | return models.Select(x => new InviteMetadata(Discord, x)); | ||||
} | } | ||||
/// <summary> Creates a new invite to this guild. </summary> | /// <summary> Creates a new invite to this guild. </summary> | ||||
@@ -251,7 +251,7 @@ namespace Discord.Rest | |||||
Temporary = isTemporary, | Temporary = isTemporary, | ||||
XkcdPass = withXkcd | XkcdPass = withXkcd | ||||
}; | }; | ||||
var model = await Discord.BaseClient.CreateChannelInvite(DefaultChannelId, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateChannelInvite(DefaultChannelId, args).ConfigureAwait(false); | |||||
return new InviteMetadata(Discord, model); | return new InviteMetadata(Discord, model); | ||||
} | } | ||||
@@ -269,7 +269,7 @@ namespace Discord.Rest | |||||
{ | { | ||||
if (name == null) throw new ArgumentNullException(nameof(name)); | if (name == null) throw new ArgumentNullException(nameof(name)); | ||||
var model = await Discord.BaseClient.CreateGuildRole(Id).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateGuildRole(Id).ConfigureAwait(false); | |||||
var role = new Role(this, model); | var role = new Role(this, model); | ||||
await role.Modify(x => | await role.Modify(x => | ||||
@@ -287,20 +287,20 @@ namespace Discord.Rest | |||||
public async Task<IEnumerable<GuildUser>> GetUsers() | public async Task<IEnumerable<GuildUser>> GetUsers() | ||||
{ | { | ||||
var args = new GetGuildMembersParams(); | var args = new GetGuildMembersParams(); | ||||
var models = await Discord.BaseClient.GetGuildMembers(Id, args).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetGuildMembers(Id, args).ConfigureAwait(false); | |||||
return models.Select(x => new GuildUser(this, x)); | return models.Select(x => new GuildUser(this, x)); | ||||
} | } | ||||
/// <summary> Gets a paged collection of all users in this guild. </summary> | /// <summary> Gets a paged collection of all users in this guild. </summary> | ||||
public async Task<IEnumerable<GuildUser>> GetUsers(int limit, int offset) | public async Task<IEnumerable<GuildUser>> GetUsers(int limit, int offset) | ||||
{ | { | ||||
var args = new GetGuildMembersParams { Limit = limit, Offset = offset }; | var args = new GetGuildMembersParams { Limit = limit, Offset = offset }; | ||||
var models = await Discord.BaseClient.GetGuildMembers(Id, args).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetGuildMembers(Id, args).ConfigureAwait(false); | |||||
return models.Select(x => new GuildUser(this, x)); | return models.Select(x => new GuildUser(this, x)); | ||||
} | } | ||||
/// <summary> Gets the user in this guild with the provided id, or null if not found. </summary> | /// <summary> Gets the user in this guild with the provided id, or null if not found. </summary> | ||||
public async Task<GuildUser> GetUser(ulong id) | public async Task<GuildUser> GetUser(ulong id) | ||||
{ | { | ||||
var model = await Discord.BaseClient.GetGuildMember(Id, id).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.GetGuildMember(Id, id).ConfigureAwait(false); | |||||
if (model != null) | if (model != null) | ||||
return new GuildUser(this, model); | return new GuildUser(this, model); | ||||
return null; | return null; | ||||
@@ -316,9 +316,9 @@ namespace Discord.Rest | |||||
var args = new GuildPruneParams() { Days = days }; | var args = new GuildPruneParams() { Days = days }; | ||||
GetGuildPruneCountResponse model; | GetGuildPruneCountResponse model; | ||||
if (simulate) | if (simulate) | ||||
model = await Discord.BaseClient.GetGuildPruneCount(Id, args).ConfigureAwait(false); | |||||
model = await Discord.APIClient.GetGuildPruneCount(Id, args).ConfigureAwait(false); | |||||
else | else | ||||
model = await Discord.BaseClient.BeginGuildPrune(Id, args).ConfigureAwait(false); | |||||
model = await Discord.APIClient.BeginGuildPrune(Id, args).ConfigureAwait(false); | |||||
return model.Pruned; | return model.Pruned; | ||||
} | } | ||||
@@ -60,7 +60,7 @@ namespace Discord.Rest | |||||
/// <summary> </summary> | /// <summary> </summary> | ||||
public async Task Delete() | public async Task Delete() | ||||
{ | { | ||||
await Discord.BaseClient.DeleteGuildIntegration(Guild.Id, Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteGuildIntegration(Guild.Id, Id).ConfigureAwait(false); | |||||
} | } | ||||
/// <summary> </summary> | /// <summary> </summary> | ||||
public async Task Modify(Action<ModifyGuildIntegrationParams> func) | public async Task Modify(Action<ModifyGuildIntegrationParams> func) | ||||
@@ -69,14 +69,14 @@ namespace Discord.Rest | |||||
var args = new ModifyGuildIntegrationParams(); | var args = new ModifyGuildIntegrationParams(); | ||||
func(args); | func(args); | ||||
var model = await Discord.BaseClient.ModifyGuildIntegration(Guild.Id, Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.ModifyGuildIntegration(Guild.Id, Id, args).ConfigureAwait(false); | |||||
Update(model); | Update(model); | ||||
} | } | ||||
/// <summary> </summary> | /// <summary> </summary> | ||||
public async Task Sync() | public async Task Sync() | ||||
{ | { | ||||
await Discord.BaseClient.SyncGuildIntegration(Guild.Id, Id).ConfigureAwait(false); | |||||
await Discord.APIClient.SyncGuildIntegration(Guild.Id, Id).ConfigureAwait(false); | |||||
} | } | ||||
public override string ToString() => Name; | public override string ToString() => Name; | ||||
@@ -42,12 +42,12 @@ namespace Discord | |||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task Leave() | public async Task Leave() | ||||
{ | { | ||||
await Discord.BaseClient.LeaveGuild(Id).ConfigureAwait(false); | |||||
await Discord.APIClient.LeaveGuild(Id).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task Delete() | public async Task Delete() | ||||
{ | { | ||||
await Discord.BaseClient.DeleteGuild(Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteGuild(Id).ConfigureAwait(false); | |||||
} | } | ||||
public override string ToString() => Name; | public override string ToString() => Name; | ||||
@@ -125,9 +125,9 @@ namespace Discord.Rest | |||||
Model model; | Model model; | ||||
if (guildChannel != null) | if (guildChannel != null) | ||||
model = await Discord.BaseClient.ModifyMessage(guildChannel.Guild.Id, Channel.Id, Id, args).ConfigureAwait(false); | |||||
model = await Discord.APIClient.ModifyMessage(guildChannel.Guild.Id, Channel.Id, Id, args).ConfigureAwait(false); | |||||
else | else | ||||
model = await Discord.BaseClient.ModifyDMMessage(Channel.Id, Id, args).ConfigureAwait(false); | |||||
model = await Discord.APIClient.ModifyDMMessage(Channel.Id, Id, args).ConfigureAwait(false); | |||||
Update(model); | Update(model); | ||||
} | } | ||||
@@ -136,9 +136,9 @@ namespace Discord.Rest | |||||
{ | { | ||||
var guildChannel = Channel as GuildChannel; | var guildChannel = Channel as GuildChannel; | ||||
if (guildChannel != null) | if (guildChannel != null) | ||||
await Discord.BaseClient.DeleteMessage(guildChannel.Id, Channel.Id, Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteMessage(guildChannel.Id, Channel.Id, Id).ConfigureAwait(false); | |||||
else | else | ||||
await Discord.BaseClient.DeleteDMMessage(Channel.Id, Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteDMMessage(Channel.Id, Id).ConfigureAwait(false); | |||||
} | } | ||||
public override string ToString() => Text; | public override string ToString() => Text; | ||||
@@ -60,12 +60,12 @@ namespace Discord.Rest | |||||
var args = new ModifyGuildRoleParams(); | var args = new ModifyGuildRoleParams(); | ||||
func(args); | func(args); | ||||
var response = await Discord.BaseClient.ModifyGuildRole(Guild.Id, Id, args).ConfigureAwait(false); | |||||
var response = await Discord.APIClient.ModifyGuildRole(Guild.Id, Id, args).ConfigureAwait(false); | |||||
Update(response); | Update(response); | ||||
} | } | ||||
/// <summary> Deletes this message. </summary> | /// <summary> Deletes this message. </summary> | ||||
public async Task Delete() | public async Task Delete() | ||||
=> await Discord.BaseClient.DeleteGuildRole(Guild.Id, Id).ConfigureAwait(false); | |||||
=> await Discord.APIClient.DeleteGuildRole(Guild.Id, Id).ConfigureAwait(false); | |||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public override string ToString() => Name; | public override string ToString() => Name; | ||||
@@ -76,7 +76,7 @@ namespace Discord.Rest | |||||
async Task<IEnumerable<IGuildUser>> IRole.GetUsers() | async Task<IEnumerable<IGuildUser>> IRole.GetUsers() | ||||
{ | { | ||||
//A tad hacky, but it works | //A tad hacky, but it works | ||||
var models = await Discord.BaseClient.GetGuildMembers(Guild.Id, new GetGuildMembersParams()).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetGuildMembers(Guild.Id, new GetGuildMembersParams()).ConfigureAwait(false); | |||||
return models.Where(x => x.Roles.Contains(Id)).Select(x => new GuildUser(Guild, x)); | return models.Where(x => x.Roles.Contains(Id)).Select(x => new GuildUser(Guild, x)); | ||||
} | } | ||||
} | } | ||||
@@ -55,7 +55,7 @@ namespace Discord.Rest | |||||
public async Task Update() | public async Task Update() | ||||
{ | { | ||||
var model = await Discord.BaseClient.GetGuildMember(Guild.Id, Id).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.GetGuildMember(Guild.Id, Id).ConfigureAwait(false); | |||||
Update(model); | Update(model); | ||||
} | } | ||||
@@ -71,7 +71,7 @@ namespace Discord.Rest | |||||
public async Task Kick() | public async Task Kick() | ||||
{ | { | ||||
await Discord.BaseClient.RemoveGuildMember(Guild.Id, Id).ConfigureAwait(false); | |||||
await Discord.APIClient.RemoveGuildMember(Guild.Id, Id).ConfigureAwait(false); | |||||
} | } | ||||
public ChannelPermissions GetPermissions(IGuildChannel channel) | public ChannelPermissions GetPermissions(IGuildChannel channel) | ||||
@@ -91,13 +91,13 @@ namespace Discord.Rest | |||||
if (isCurrentUser && args.Nickname.IsSpecified) | if (isCurrentUser && args.Nickname.IsSpecified) | ||||
{ | { | ||||
var nickArgs = new ModifyCurrentUserNickParams { Nickname = args.Nickname.Value }; | var nickArgs = new ModifyCurrentUserNickParams { Nickname = args.Nickname.Value }; | ||||
await Discord.BaseClient.ModifyCurrentUserNick(Guild.Id, nickArgs).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyCurrentUserNick(Guild.Id, nickArgs).ConfigureAwait(false); | |||||
args.Nickname = new API.Optional<string>(); //Remove | args.Nickname = new API.Optional<string>(); //Remove | ||||
} | } | ||||
if (!isCurrentUser || args.Deaf.IsSpecified || args.Mute.IsSpecified || args.Roles.IsSpecified) | if (!isCurrentUser || args.Deaf.IsSpecified || args.Mute.IsSpecified || args.Roles.IsSpecified) | ||||
{ | { | ||||
await Discord.BaseClient.ModifyGuildMember(Guild.Id, Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyGuildMember(Guild.Id, Id, args).ConfigureAwait(false); | |||||
if (args.Deaf.IsSpecified) | if (args.Deaf.IsSpecified) | ||||
IsDeaf = args.Deaf.Value; | IsDeaf = args.Deaf.Value; | ||||
if (args.Mute.IsSpecified) | if (args.Mute.IsSpecified) | ||||
@@ -30,7 +30,7 @@ namespace Discord.Rest | |||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task Update() | public async Task Update() | ||||
{ | { | ||||
var model = await Discord.BaseClient.GetCurrentUser().ConfigureAwait(false); | |||||
var model = await Discord.APIClient.GetCurrentUser().ConfigureAwait(false); | |||||
Update(model); | Update(model); | ||||
} | } | ||||
@@ -41,7 +41,7 @@ namespace Discord.Rest | |||||
var args = new ModifyCurrentUserParams(); | var args = new ModifyCurrentUserParams(); | ||||
func(args); | func(args); | ||||
var model = await Discord.BaseClient.ModifyCurrentUser(args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.ModifyCurrentUser(args).ConfigureAwait(false); | |||||
Update(model); | Update(model); | ||||
} | } | ||||
} | } | ||||
@@ -48,7 +48,7 @@ namespace Discord.Rest | |||||
public async Task<DMChannel> CreateDMChannel() | public async Task<DMChannel> CreateDMChannel() | ||||
{ | { | ||||
var args = new CreateDMChannelParams { RecipientId = Id }; | var args = new CreateDMChannelParams { RecipientId = Id }; | ||||
var model = await Discord.BaseClient.CreateDMChannel(args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateDMChannel(args).ConfigureAwait(false); | |||||
return new DMChannel(Discord, model); | return new DMChannel(Discord, model); | ||||
} | } | ||||
@@ -27,7 +27,7 @@ namespace Discord.WebSocket | |||||
} | } | ||||
} | } | ||||
public DiscordRawClient BaseClient | |||||
public DiscordAPIClient APIClient | |||||
{ | { | ||||
get | get | ||||
{ | { | ||||
@@ -75,7 +75,7 @@ namespace Discord.WebSocket | |||||
public async Task<Message> SendMessage(string text, bool isTTS = false) | public async Task<Message> SendMessage(string text, bool isTTS = false) | ||||
{ | { | ||||
var args = new CreateMessageParams { Content = text, IsTTS = isTTS }; | var args = new CreateMessageParams { Content = text, IsTTS = isTTS }; | ||||
var model = await Discord.BaseClient.CreateDMMessage(Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateDMMessage(Id, args).ConfigureAwait(false); | |||||
return new Message(this, model); | return new Message(this, model); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
@@ -85,7 +85,7 @@ namespace Discord.WebSocket | |||||
using (var file = File.OpenRead(filePath)) | using (var file = File.OpenRead(filePath)) | ||||
{ | { | ||||
var args = new UploadFileParams { Filename = filename, Content = text, IsTTS = isTTS }; | var args = new UploadFileParams { Filename = filename, Content = text, IsTTS = isTTS }; | ||||
var model = await Discord.BaseClient.UploadDMFile(Id, file, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.UploadDMFile(Id, file, args).ConfigureAwait(false); | |||||
return new Message(this, model); | return new Message(this, model); | ||||
} | } | ||||
} | } | ||||
@@ -93,26 +93,26 @@ namespace Discord.WebSocket | |||||
public async Task<Message> SendFile(Stream stream, string filename, string text = null, bool isTTS = false) | public async Task<Message> SendFile(Stream stream, string filename, string text = null, bool isTTS = false) | ||||
{ | { | ||||
var args = new UploadFileParams { Filename = filename, Content = text, IsTTS = isTTS }; | var args = new UploadFileParams { Filename = filename, Content = text, IsTTS = isTTS }; | ||||
var model = await Discord.BaseClient.UploadDMFile(Id, stream, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.UploadDMFile(Id, stream, args).ConfigureAwait(false); | |||||
return new Message(this, model); | return new Message(this, model); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task DeleteMessages(IEnumerable<IMessage> messages) | public async Task DeleteMessages(IEnumerable<IMessage> messages) | ||||
{ | { | ||||
await Discord.BaseClient.DeleteDMMessages(Id, new DeleteMessagesParam { MessageIds = messages.Select(x => x.Id) }).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteDMMessages(Id, new DeleteMessagesParam { MessageIds = messages.Select(x => x.Id) }).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task TriggerTyping() | public async Task TriggerTyping() | ||||
{ | { | ||||
await Discord.BaseClient.TriggerTypingIndicator(Id).ConfigureAwait(false); | |||||
await Discord.APIClient.TriggerTypingIndicator(Id).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task Close() | public async Task Close() | ||||
{ | { | ||||
await Discord.BaseClient.DeleteChannel(Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteChannel(Id).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
@@ -57,7 +57,7 @@ namespace Discord.WebSocket | |||||
var args = new ModifyGuildChannelParams(); | var args = new ModifyGuildChannelParams(); | ||||
func(args); | func(args); | ||||
await Discord.BaseClient.ModifyGuildChannel(Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyGuildChannel(Id, args).ConfigureAwait(false); | |||||
} | } | ||||
/// <summary> Gets a user in this channel with the given id. </summary> | /// <summary> Gets a user in this channel with the given id. </summary> | ||||
@@ -82,7 +82,7 @@ namespace Discord.WebSocket | |||||
/// <summary> Downloads a collection of all invites to this channel. </summary> | /// <summary> Downloads a collection of all invites to this channel. </summary> | ||||
public async Task<IEnumerable<InviteMetadata>> GetInvites() | public async Task<IEnumerable<InviteMetadata>> GetInvites() | ||||
{ | { | ||||
var models = await Discord.BaseClient.GetChannelInvites(Id).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetChannelInvites(Id).ConfigureAwait(false); | |||||
return models.Select(x => new InviteMetadata(Discord, x)); | return models.Select(x => new InviteMetadata(Discord, x)); | ||||
} | } | ||||
@@ -90,23 +90,23 @@ namespace Discord.WebSocket | |||||
public async Task AddPermissionOverwrite(IUser user, OverwritePermissions perms) | public async Task AddPermissionOverwrite(IUser user, OverwritePermissions perms) | ||||
{ | { | ||||
var args = new ModifyChannelPermissionsParams { Allow = perms.AllowValue, Deny = perms.DenyValue }; | var args = new ModifyChannelPermissionsParams { Allow = perms.AllowValue, Deny = perms.DenyValue }; | ||||
await Discord.BaseClient.ModifyChannelPermissions(Id, user.Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyChannelPermissions(Id, user.Id, args).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task AddPermissionOverwrite(IRole role, OverwritePermissions perms) | public async Task AddPermissionOverwrite(IRole role, OverwritePermissions perms) | ||||
{ | { | ||||
var args = new ModifyChannelPermissionsParams { Allow = perms.AllowValue, Deny = perms.DenyValue }; | var args = new ModifyChannelPermissionsParams { Allow = perms.AllowValue, Deny = perms.DenyValue }; | ||||
await Discord.BaseClient.ModifyChannelPermissions(Id, role.Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyChannelPermissions(Id, role.Id, args).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task RemovePermissionOverwrite(IUser user) | public async Task RemovePermissionOverwrite(IUser user) | ||||
{ | { | ||||
await Discord.BaseClient.DeleteChannelPermission(Id, user.Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteChannelPermission(Id, user.Id).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task RemovePermissionOverwrite(IRole role) | public async Task RemovePermissionOverwrite(IRole role) | ||||
{ | { | ||||
await Discord.BaseClient.DeleteChannelPermission(Id, role.Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteChannelPermission(Id, role.Id).ConfigureAwait(false); | |||||
} | } | ||||
/// <summary> Creates a new invite to this channel. </summary> | /// <summary> Creates a new invite to this channel. </summary> | ||||
@@ -123,14 +123,14 @@ namespace Discord.WebSocket | |||||
Temporary = isTemporary, | Temporary = isTemporary, | ||||
XkcdPass = withXkcd | XkcdPass = withXkcd | ||||
}; | }; | ||||
var model = await Discord.BaseClient.CreateChannelInvite(Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateChannelInvite(Id, args).ConfigureAwait(false); | |||||
return new InviteMetadata(Discord, model); | return new InviteMetadata(Discord, model); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task Delete() | public async Task Delete() | ||||
{ | { | ||||
await Discord.BaseClient.DeleteChannel(Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteChannel(Id).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
@@ -42,7 +42,7 @@ namespace Discord.WebSocket | |||||
var args = new ModifyTextChannelParams(); | var args = new ModifyTextChannelParams(); | ||||
func(args); | func(args); | ||||
await Discord.BaseClient.ModifyGuildChannel(Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyGuildChannel(Id, args).ConfigureAwait(false); | |||||
} | } | ||||
/// <summary> Gets the message from this channel's cache with the given id, or null if none was found. </summary> | /// <summary> Gets the message from this channel's cache with the given id, or null if none was found. </summary> | ||||
@@ -73,7 +73,7 @@ namespace Discord.WebSocket | |||||
public async Task<Message> SendMessage(string text, bool isTTS = false) | public async Task<Message> SendMessage(string text, bool isTTS = false) | ||||
{ | { | ||||
var args = new CreateMessageParams { Content = text, IsTTS = isTTS }; | var args = new CreateMessageParams { Content = text, IsTTS = isTTS }; | ||||
var model = await Discord.BaseClient.CreateMessage(Guild.Id, Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateMessage(Guild.Id, Id, args).ConfigureAwait(false); | |||||
return new Message(this, model); | return new Message(this, model); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
@@ -83,7 +83,7 @@ namespace Discord.WebSocket | |||||
using (var file = File.OpenRead(filePath)) | using (var file = File.OpenRead(filePath)) | ||||
{ | { | ||||
var args = new UploadFileParams { Filename = filename, Content = text, IsTTS = isTTS }; | var args = new UploadFileParams { Filename = filename, Content = text, IsTTS = isTTS }; | ||||
var model = await Discord.BaseClient.UploadFile(Guild.Id, Id, file, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.UploadFile(Guild.Id, Id, file, args).ConfigureAwait(false); | |||||
return new Message(this, model); | return new Message(this, model); | ||||
} | } | ||||
} | } | ||||
@@ -91,20 +91,20 @@ namespace Discord.WebSocket | |||||
public async Task<Message> SendFile(Stream stream, string filename, string text = null, bool isTTS = false) | public async Task<Message> SendFile(Stream stream, string filename, string text = null, bool isTTS = false) | ||||
{ | { | ||||
var args = new UploadFileParams { Filename = filename, Content = text, IsTTS = isTTS }; | var args = new UploadFileParams { Filename = filename, Content = text, IsTTS = isTTS }; | ||||
var model = await Discord.BaseClient.UploadFile(Guild.Id, Id, stream, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.UploadFile(Guild.Id, Id, stream, args).ConfigureAwait(false); | |||||
return new Message(this, model); | return new Message(this, model); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task DeleteMessages(IEnumerable<IMessage> messages) | public async Task DeleteMessages(IEnumerable<IMessage> messages) | ||||
{ | { | ||||
await Discord.BaseClient.DeleteMessages(Guild.Id, Id, new DeleteMessagesParam { MessageIds = messages.Select(x => x.Id) }).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteMessages(Guild.Id, Id, new DeleteMessagesParam { MessageIds = messages.Select(x => x.Id) }).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task TriggerTyping() | public async Task TriggerTyping() | ||||
{ | { | ||||
await Discord.BaseClient.TriggerTypingIndicator(Id).ConfigureAwait(false); | |||||
await Discord.APIClient.TriggerTypingIndicator(Id).ConfigureAwait(false); | |||||
} | } | ||||
private string DebuggerDisplay => $"{Name} ({Id}, Text)"; | private string DebuggerDisplay => $"{Name} ({Id}, Text)"; | ||||
@@ -34,7 +34,7 @@ namespace Discord.WebSocket | |||||
var args = new ModifyVoiceChannelParams(); | var args = new ModifyVoiceChannelParams(); | ||||
func(args); | func(args); | ||||
await Discord.BaseClient.ModifyGuildChannel(Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyGuildChannel(Id, args).ConfigureAwait(false); | |||||
} | } | ||||
public override GuildUser GetUser(ulong id) | public override GuildUser GetUser(ulong id) | ||||
@@ -121,7 +121,7 @@ namespace Discord.WebSocket | |||||
var args = new ModifyGuildParams(); | var args = new ModifyGuildParams(); | ||||
func(args); | func(args); | ||||
await Discord.BaseClient.ModifyGuild(Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyGuild(Id, args).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task ModifyEmbed(Action<ModifyGuildEmbedParams> func) | public async Task ModifyEmbed(Action<ModifyGuildEmbedParams> func) | ||||
@@ -130,33 +130,33 @@ namespace Discord.WebSocket | |||||
var args = new ModifyGuildEmbedParams(); | var args = new ModifyGuildEmbedParams(); | ||||
func(args); | func(args); | ||||
await Discord.BaseClient.ModifyGuildEmbed(Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyGuildEmbed(Id, args).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task ModifyChannels(IEnumerable<ModifyGuildChannelsParams> args) | public async Task ModifyChannels(IEnumerable<ModifyGuildChannelsParams> args) | ||||
{ | { | ||||
await Discord.BaseClient.ModifyGuildChannels(Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyGuildChannels(Id, args).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task ModifyRoles(IEnumerable<ModifyGuildRolesParams> args) | public async Task ModifyRoles(IEnumerable<ModifyGuildRolesParams> args) | ||||
{ | { | ||||
await Discord.BaseClient.ModifyGuildRoles(Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyGuildRoles(Id, args).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task Leave() | public async Task Leave() | ||||
{ | { | ||||
await Discord.BaseClient.LeaveGuild(Id).ConfigureAwait(false); | |||||
await Discord.APIClient.LeaveGuild(Id).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task Delete() | public async Task Delete() | ||||
{ | { | ||||
await Discord.BaseClient.DeleteGuild(Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteGuild(Id).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task<IEnumerable<User>> GetBans() | public async Task<IEnumerable<User>> GetBans() | ||||
{ | { | ||||
var models = await Discord.BaseClient.GetGuildBans(Id).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetGuildBans(Id).ConfigureAwait(false); | |||||
return models.Select(x => new PublicUser(Discord, x)); | return models.Select(x => new PublicUser(Discord, x)); | ||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
@@ -168,20 +168,20 @@ namespace Discord.WebSocket | |||||
{ | { | ||||
PruneDays = pruneDays | PruneDays = pruneDays | ||||
}; | }; | ||||
await Discord.BaseClient.CreateGuildBan(Id, userId, args).ConfigureAwait(false); | |||||
await Discord.APIClient.CreateGuildBan(Id, userId, args).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public Task RemoveBan(IUser user) => RemoveBan(user.Id); | public Task RemoveBan(IUser user) => RemoveBan(user.Id); | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public async Task RemoveBan(ulong userId) | public async Task RemoveBan(ulong userId) | ||||
{ | { | ||||
await Discord.BaseClient.RemoveGuildBan(Id, userId).ConfigureAwait(false); | |||||
await Discord.APIClient.RemoveGuildBan(Id, userId).ConfigureAwait(false); | |||||
} | } | ||||
/// <summary> Gets the channel in this guild with the provided id, or null if not found. </summary> | /// <summary> Gets the channel in this guild with the provided id, or null if not found. </summary> | ||||
public async Task<GuildChannel> GetChannel(ulong id) | public async Task<GuildChannel> GetChannel(ulong id) | ||||
{ | { | ||||
var model = await Discord.BaseClient.GetChannel(Id, id).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.GetChannel(Id, id).ConfigureAwait(false); | |||||
if (model != null) | if (model != null) | ||||
return ToChannel(model); | return ToChannel(model); | ||||
return null; | return null; | ||||
@@ -189,7 +189,7 @@ namespace Discord.WebSocket | |||||
/// <summary> Gets a collection of all channels in this guild. </summary> | /// <summary> Gets a collection of all channels in this guild. </summary> | ||||
public async Task<IEnumerable<GuildChannel>> GetChannels() | public async Task<IEnumerable<GuildChannel>> GetChannels() | ||||
{ | { | ||||
var models = await Discord.BaseClient.GetGuildChannels(Id).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetGuildChannels(Id).ConfigureAwait(false); | |||||
return models.Select(x => ToChannel(x)); | return models.Select(x => ToChannel(x)); | ||||
} | } | ||||
/// <summary> Creates a new text channel. </summary> | /// <summary> Creates a new text channel. </summary> | ||||
@@ -198,7 +198,7 @@ namespace Discord.WebSocket | |||||
if (name == null) throw new ArgumentNullException(nameof(name)); | if (name == null) throw new ArgumentNullException(nameof(name)); | ||||
var args = new CreateGuildChannelParams() { Name = name, Type = ChannelType.Text }; | var args = new CreateGuildChannelParams() { Name = name, Type = ChannelType.Text }; | ||||
var model = await Discord.BaseClient.CreateGuildChannel(Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateGuildChannel(Id, args).ConfigureAwait(false); | |||||
return new TextChannel(this, model); | return new TextChannel(this, model); | ||||
} | } | ||||
/// <summary> Creates a new voice channel. </summary> | /// <summary> Creates a new voice channel. </summary> | ||||
@@ -207,28 +207,28 @@ namespace Discord.WebSocket | |||||
if (name == null) throw new ArgumentNullException(nameof(name)); | if (name == null) throw new ArgumentNullException(nameof(name)); | ||||
var args = new CreateGuildChannelParams { Name = name, Type = ChannelType.Voice }; | var args = new CreateGuildChannelParams { Name = name, Type = ChannelType.Voice }; | ||||
var model = await Discord.BaseClient.CreateGuildChannel(Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateGuildChannel(Id, args).ConfigureAwait(false); | |||||
return new VoiceChannel(this, model); | return new VoiceChannel(this, model); | ||||
} | } | ||||
/// <summary> Gets a collection of all integrations attached to this guild. </summary> | /// <summary> Gets a collection of all integrations attached to this guild. </summary> | ||||
public async Task<IEnumerable<GuildIntegration>> GetIntegrations() | public async Task<IEnumerable<GuildIntegration>> GetIntegrations() | ||||
{ | { | ||||
var models = await Discord.BaseClient.GetGuildIntegrations(Id).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetGuildIntegrations(Id).ConfigureAwait(false); | |||||
return models.Select(x => new GuildIntegration(this, x)); | return models.Select(x => new GuildIntegration(this, x)); | ||||
} | } | ||||
/// <summary> Creates a new integration for this guild. </summary> | /// <summary> Creates a new integration for this guild. </summary> | ||||
public async Task<GuildIntegration> CreateIntegration(ulong id, string type) | public async Task<GuildIntegration> CreateIntegration(ulong id, string type) | ||||
{ | { | ||||
var args = new CreateGuildIntegrationParams { Id = id, Type = type }; | var args = new CreateGuildIntegrationParams { Id = id, Type = type }; | ||||
var model = await Discord.BaseClient.CreateGuildIntegration(Id, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateGuildIntegration(Id, args).ConfigureAwait(false); | |||||
return new GuildIntegration(this, model); | return new GuildIntegration(this, model); | ||||
} | } | ||||
/// <summary> Gets a collection of all invites to this guild. </summary> | /// <summary> Gets a collection of all invites to this guild. </summary> | ||||
public async Task<IEnumerable<InviteMetadata>> GetInvites() | public async Task<IEnumerable<InviteMetadata>> GetInvites() | ||||
{ | { | ||||
var models = await Discord.BaseClient.GetGuildInvites(Id).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetGuildInvites(Id).ConfigureAwait(false); | |||||
return models.Select(x => new InviteMetadata(Discord, x)); | return models.Select(x => new InviteMetadata(Discord, x)); | ||||
} | } | ||||
/// <summary> Creates a new invite to this guild. </summary> | /// <summary> Creates a new invite to this guild. </summary> | ||||
@@ -244,7 +244,7 @@ namespace Discord.WebSocket | |||||
Temporary = isTemporary, | Temporary = isTemporary, | ||||
XkcdPass = withXkcd | XkcdPass = withXkcd | ||||
}; | }; | ||||
var model = await Discord.BaseClient.CreateChannelInvite(DefaultChannelId, args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateChannelInvite(DefaultChannelId, args).ConfigureAwait(false); | |||||
return new InviteMetadata(Discord, model); | return new InviteMetadata(Discord, model); | ||||
} | } | ||||
@@ -262,7 +262,7 @@ namespace Discord.WebSocket | |||||
{ | { | ||||
if (name == null) throw new ArgumentNullException(nameof(name)); | if (name == null) throw new ArgumentNullException(nameof(name)); | ||||
var model = await Discord.BaseClient.CreateGuildRole(Id).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateGuildRole(Id).ConfigureAwait(false); | |||||
var role = new Role(this, model); | var role = new Role(this, model); | ||||
await role.Modify(x => | await role.Modify(x => | ||||
@@ -280,20 +280,20 @@ namespace Discord.WebSocket | |||||
public async Task<IEnumerable<GuildUser>> GetUsers() | public async Task<IEnumerable<GuildUser>> GetUsers() | ||||
{ | { | ||||
var args = new GetGuildMembersParams(); | var args = new GetGuildMembersParams(); | ||||
var models = await Discord.BaseClient.GetGuildMembers(Id, args).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetGuildMembers(Id, args).ConfigureAwait(false); | |||||
return models.Select(x => new GuildUser(this, x)); | return models.Select(x => new GuildUser(this, x)); | ||||
} | } | ||||
/// <summary> Gets a paged collection of all users in this guild. </summary> | /// <summary> Gets a paged collection of all users in this guild. </summary> | ||||
public async Task<IEnumerable<GuildUser>> GetUsers(int limit, int offset) | public async Task<IEnumerable<GuildUser>> GetUsers(int limit, int offset) | ||||
{ | { | ||||
var args = new GetGuildMembersParams { Limit = limit, Offset = offset }; | var args = new GetGuildMembersParams { Limit = limit, Offset = offset }; | ||||
var models = await Discord.BaseClient.GetGuildMembers(Id, args).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetGuildMembers(Id, args).ConfigureAwait(false); | |||||
return models.Select(x => new GuildUser(this, x)); | return models.Select(x => new GuildUser(this, x)); | ||||
} | } | ||||
/// <summary> Gets the user in this guild with the provided id, or null if not found. </summary> | /// <summary> Gets the user in this guild with the provided id, or null if not found. </summary> | ||||
public async Task<GuildUser> GetUser(ulong id) | public async Task<GuildUser> GetUser(ulong id) | ||||
{ | { | ||||
var model = await Discord.BaseClient.GetGuildMember(Id, id).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.GetGuildMember(Id, id).ConfigureAwait(false); | |||||
if (model != null) | if (model != null) | ||||
return new GuildUser(this, model); | return new GuildUser(this, model); | ||||
return null; | return null; | ||||
@@ -309,9 +309,9 @@ namespace Discord.WebSocket | |||||
var args = new GuildPruneParams() { Days = days }; | var args = new GuildPruneParams() { Days = days }; | ||||
GetGuildPruneCountResponse model; | GetGuildPruneCountResponse model; | ||||
if (simulate) | if (simulate) | ||||
model = await Discord.BaseClient.GetGuildPruneCount(Id, args).ConfigureAwait(false); | |||||
model = await Discord.APIClient.GetGuildPruneCount(Id, args).ConfigureAwait(false); | |||||
else | else | ||||
model = await Discord.BaseClient.BeginGuildPrune(Id, args).ConfigureAwait(false); | |||||
model = await Discord.APIClient.BeginGuildPrune(Id, args).ConfigureAwait(false); | |||||
return model.Pruned; | return model.Pruned; | ||||
} | } | ||||
@@ -60,7 +60,7 @@ namespace Discord.WebSocket | |||||
/// <summary> </summary> | /// <summary> </summary> | ||||
public async Task Delete() | public async Task Delete() | ||||
{ | { | ||||
await Discord.BaseClient.DeleteGuildIntegration(Guild.Id, Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteGuildIntegration(Guild.Id, Id).ConfigureAwait(false); | |||||
} | } | ||||
/// <summary> </summary> | /// <summary> </summary> | ||||
public async Task Modify(Action<ModifyGuildIntegrationParams> func) | public async Task Modify(Action<ModifyGuildIntegrationParams> func) | ||||
@@ -69,12 +69,12 @@ namespace Discord.WebSocket | |||||
var args = new ModifyGuildIntegrationParams(); | var args = new ModifyGuildIntegrationParams(); | ||||
func(args); | func(args); | ||||
await Discord.BaseClient.ModifyGuildIntegration(Guild.Id, Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyGuildIntegration(Guild.Id, Id, args).ConfigureAwait(false); | |||||
} | } | ||||
/// <summary> </summary> | /// <summary> </summary> | ||||
public async Task Sync() | public async Task Sync() | ||||
{ | { | ||||
await Discord.BaseClient.SyncGuildIntegration(Guild.Id, Id).ConfigureAwait(false); | |||||
await Discord.APIClient.SyncGuildIntegration(Guild.Id, Id).ConfigureAwait(false); | |||||
} | } | ||||
public override string ToString() => Name; | public override string ToString() => Name; | ||||
@@ -124,9 +124,9 @@ namespace Discord.WebSocket | |||||
var guildChannel = Channel as GuildChannel; | var guildChannel = Channel as GuildChannel; | ||||
if (guildChannel != null) | if (guildChannel != null) | ||||
await Discord.BaseClient.ModifyMessage(guildChannel.Guild.Id, Channel.Id, Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyMessage(guildChannel.Guild.Id, Channel.Id, Id, args).ConfigureAwait(false); | |||||
else | else | ||||
await Discord.BaseClient.ModifyDMMessage(Channel.Id, Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyDMMessage(Channel.Id, Id, args).ConfigureAwait(false); | |||||
} | } | ||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
@@ -134,9 +134,9 @@ namespace Discord.WebSocket | |||||
{ | { | ||||
var guildChannel = Channel as GuildChannel; | var guildChannel = Channel as GuildChannel; | ||||
if (guildChannel != null) | if (guildChannel != null) | ||||
await Discord.BaseClient.DeleteMessage(guildChannel.Id, Channel.Id, Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteMessage(guildChannel.Id, Channel.Id, Id).ConfigureAwait(false); | |||||
else | else | ||||
await Discord.BaseClient.DeleteDMMessage(Channel.Id, Id).ConfigureAwait(false); | |||||
await Discord.APIClient.DeleteDMMessage(Channel.Id, Id).ConfigureAwait(false); | |||||
} | } | ||||
public override string ToString() => Text; | public override string ToString() => Text; | ||||
@@ -60,11 +60,11 @@ namespace Discord.WebSocket | |||||
var args = new ModifyGuildRoleParams(); | var args = new ModifyGuildRoleParams(); | ||||
func(args); | func(args); | ||||
await Discord.BaseClient.ModifyGuildRole(Guild.Id, Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyGuildRole(Guild.Id, Id, args).ConfigureAwait(false); | |||||
} | } | ||||
/// <summary> Deletes this message. </summary> | /// <summary> Deletes this message. </summary> | ||||
public async Task Delete() | public async Task Delete() | ||||
=> await Discord.BaseClient.DeleteGuildRole(Guild.Id, Id).ConfigureAwait(false); | |||||
=> await Discord.APIClient.DeleteGuildRole(Guild.Id, Id).ConfigureAwait(false); | |||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
public override string ToString() => Name; | public override string ToString() => Name; | ||||
@@ -75,7 +75,7 @@ namespace Discord.WebSocket | |||||
async Task<IEnumerable<IGuildUser>> IRole.GetUsers() | async Task<IEnumerable<IGuildUser>> IRole.GetUsers() | ||||
{ | { | ||||
//A tad hacky, but it works | //A tad hacky, but it works | ||||
var models = await Discord.BaseClient.GetGuildMembers(Guild.Id, new GetGuildMembersParams()).ConfigureAwait(false); | |||||
var models = await Discord.APIClient.GetGuildMembers(Guild.Id, new GetGuildMembersParams()).ConfigureAwait(false); | |||||
return models.Where(x => x.Roles.Contains(Id)).Select(x => new GuildUser(Guild, x)); | return models.Where(x => x.Roles.Contains(Id)).Select(x => new GuildUser(Guild, x)); | ||||
} | } | ||||
} | } | ||||
@@ -69,7 +69,7 @@ namespace Discord.WebSocket | |||||
public async Task Kick() | public async Task Kick() | ||||
{ | { | ||||
await Discord.BaseClient.RemoveGuildMember(Guild.Id, Id).ConfigureAwait(false); | |||||
await Discord.APIClient.RemoveGuildMember(Guild.Id, Id).ConfigureAwait(false); | |||||
} | } | ||||
public GuildPermissions GetGuildPermissions() | public GuildPermissions GetGuildPermissions() | ||||
@@ -93,13 +93,13 @@ namespace Discord.WebSocket | |||||
if (isCurrentUser && args.Nickname.IsSpecified) | if (isCurrentUser && args.Nickname.IsSpecified) | ||||
{ | { | ||||
var nickArgs = new ModifyCurrentUserNickParams { Nickname = args.Nickname.Value }; | var nickArgs = new ModifyCurrentUserNickParams { Nickname = args.Nickname.Value }; | ||||
await Discord.BaseClient.ModifyCurrentUserNick(Guild.Id, nickArgs).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyCurrentUserNick(Guild.Id, nickArgs).ConfigureAwait(false); | |||||
args.Nickname = new API.Optional<string>(); //Remove | args.Nickname = new API.Optional<string>(); //Remove | ||||
} | } | ||||
if (!isCurrentUser || args.Deaf.IsSpecified || args.Mute.IsSpecified || args.Roles.IsSpecified) | if (!isCurrentUser || args.Deaf.IsSpecified || args.Mute.IsSpecified || args.Roles.IsSpecified) | ||||
{ | { | ||||
await Discord.BaseClient.ModifyGuildMember(Guild.Id, Id, args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyGuildMember(Guild.Id, Id, args).ConfigureAwait(false); | |||||
if (args.Deaf.IsSpecified) | if (args.Deaf.IsSpecified) | ||||
IsDeaf = args.Deaf.Value; | IsDeaf = args.Deaf.Value; | ||||
if (args.Mute.IsSpecified) | if (args.Mute.IsSpecified) | ||||
@@ -34,7 +34,7 @@ namespace Discord.WebSocket | |||||
var args = new ModifyCurrentUserParams(); | var args = new ModifyCurrentUserParams(); | ||||
func(args); | func(args); | ||||
await Discord.BaseClient.ModifyCurrentUser(args).ConfigureAwait(false); | |||||
await Discord.APIClient.ModifyCurrentUser(args).ConfigureAwait(false); | |||||
} | } | ||||
Task IUpdateable.Update() | Task IUpdateable.Update() | ||||
@@ -48,7 +48,7 @@ namespace Discord.WebSocket | |||||
public async Task<DMChannel> CreateDMChannel() | public async Task<DMChannel> CreateDMChannel() | ||||
{ | { | ||||
var args = new CreateDMChannelParams { RecipientId = Id }; | var args = new CreateDMChannelParams { RecipientId = Id }; | ||||
var model = await Discord.BaseClient.CreateDMChannel(args).ConfigureAwait(false); | |||||
var model = await Discord.APIClient.CreateDMChannel(args).ConfigureAwait(false); | |||||
return new DMChannel(Discord, model); | return new DMChannel(Discord, model); | ||||
} | } | ||||
@@ -99,7 +99,7 @@ namespace Discord.WebSocket | |||||
RelativeDirection = dir, | RelativeDirection = dir, | ||||
RelativeMessageId = dir == Direction.Before ? cachedMessages[0].Id : cachedMessages[cachedMessages.Count - 1].Id | RelativeMessageId = dir == Direction.Before ? cachedMessages[0].Id : cachedMessages[cachedMessages.Count - 1].Id | ||||
}; | }; | ||||
var downloadedMessages = await _discord.BaseClient.GetChannelMessages(_channel.Id, args).ConfigureAwait(false); | |||||
var downloadedMessages = await _discord.APIClient.GetChannelMessages(_channel.Id, args).ConfigureAwait(false); | |||||
return cachedMessages.AsEnumerable().Concat(downloadedMessages.Select(x => new Message(_channel, x))).ToImmutableArray(); | return cachedMessages.AsEnumerable().Concat(downloadedMessages.Select(x => new Message(_channel, x))).ToImmutableArray(); | ||||
} | } | ||||
} | } | ||||