Compare commits

...

4 Commits

Author SHA1 Message Date
  Christopher F 907925c9ad Force CI to deploy 7 years ago
  Christopher F e5dcbb8135 Force CI to build 7 years ago
  Christopher F a4994365c4 Bumped version to 1.0.2 7 years ago
  Alex Gravely b38eb8b819 Create unspecified channel object for unknown channel types (#811) 7 years ago
6 changed files with 39 additions and 37 deletions
Split View
  1. +2
    -2
      Discord.Net.targets
  2. +3
    -3
      appveyor.yml
  3. +4
    -4
      src/Discord.Net.Rest/Entities/Channels/RestChannel.cs
  4. +3
    -2
      src/Discord.Net.Rest/Entities/Channels/RestGuildChannel.cs
  5. +7
    -6
      src/Discord.Net.WebSocket/Entities/Channels/SocketGuildChannel.cs
  6. +20
    -20
      src/Discord.Net/Discord.Net.nuspec

+ 2
- 2
Discord.Net.targets View File

@@ -1,6 +1,6 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<VersionPrefix>1.0.1</VersionPrefix>
<VersionPrefix>1.0.2</VersionPrefix>
<VersionSuffix></VersionSuffix>
<Authors>RogueException</Authors>
<PackageTags>discord;discordapp</PackageTags>
@@ -28,4 +28,4 @@
<WarningsAsErrors>true</WarningsAsErrors>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
</PropertyGroup>
</Project>
</Project>

+ 3
- 3
appveyor.yml View File

@@ -1,7 +1,7 @@
version: build-{build}
branches:
only:
- dev
- release/1.0.2
image: Visual Studio 2017

nuget:
@@ -51,11 +51,11 @@ deploy:
secure: Jl7BXeUjRnkVHDMBuUWSXcEOkrli1PBleW2IiLyUs5j63UNUNp1hcjaUJRujx9lz
symbol_server: https://www.myget.org/F/discord-net/symbols/api/v2/package
on:
branch: dev
branch: release/1.0.2
- provider: NuGet
server: https://www.myget.org/F/rogueexception/api/v2/package
api_key:
secure: D+vW2O2LBf/iJb4f+q8fkyIW2VdIYIGxSYLWNrOD4BHlDBZQlJipDbNarWjUr2Kn
symbol_server: https://www.myget.org/F/rogueexception/symbols/api/v2/package
on:
branch: dev
branch: dev

+ 4
- 4
src/Discord.Net.Rest/Entities/Channels/RestChannel.cs View File

@@ -6,7 +6,7 @@ using Model = Discord.API.Channel;

namespace Discord.Rest
{
public abstract class RestChannel : RestEntity<ulong>, IChannel, IUpdateable
public class RestChannel : RestEntity<ulong>, IChannel, IUpdateable
{
public DateTimeOffset CreatedAt => SnowflakeUtils.FromSnowflake(Id);

@@ -25,7 +25,7 @@ namespace Discord.Rest
case ChannelType.Group:
return CreatePrivate(discord, model) as RestChannel;
default:
throw new InvalidOperationException($"Unexpected channel type: {model.Type}");
return new RestChannel(discord, model.Id);
}
}
internal static IRestPrivateChannel CreatePrivate(BaseDiscordClient discord, Model model)
@@ -40,9 +40,9 @@ namespace Discord.Rest
throw new InvalidOperationException($"Unexpected channel type: {model.Type}");
}
}
internal abstract void Update(Model model);
internal virtual void Update(Model model) { }

public abstract Task UpdateAsync(RequestOptions options = null);
public virtual Task UpdateAsync(RequestOptions options = null) => Task.Delay(0);

//IChannel
string IChannel.Name => null;


+ 3
- 2
src/Discord.Net.Rest/Entities/Channels/RestGuildChannel.cs View File

@@ -7,7 +7,7 @@ using Model = Discord.API.Channel;

namespace Discord.Rest
{
public abstract class RestGuildChannel : RestChannel, IGuildChannel, IUpdateable
public class RestGuildChannel : RestChannel, IGuildChannel, IUpdateable
{
private ImmutableArray<Overwrite> _overwrites;

@@ -33,7 +33,8 @@ namespace Discord.Rest
case ChannelType.Voice:
return RestVoiceChannel.Create(discord, guild, model);
default:
throw new InvalidOperationException("Unknown guild channel type");
// TODO: Channel categories
return new RestGuildChannel(discord, guild, model.Id);
}
}
internal override void Update(Model model)


+ 7
- 6
src/Discord.Net.WebSocket/Entities/Channels/SocketGuildChannel.cs View File

@@ -10,7 +10,7 @@ using Model = Discord.API.Channel;
namespace Discord.WebSocket
{
[DebuggerDisplay(@"{DebuggerDisplay,nq}")]
public abstract class SocketGuildChannel : SocketChannel, IGuildChannel
public class SocketGuildChannel : SocketChannel, IGuildChannel
{
private ImmutableArray<Overwrite> _overwrites;

@@ -19,7 +19,7 @@ namespace Discord.WebSocket
public int Position { get; private set; }

public IReadOnlyCollection<Overwrite> PermissionOverwrites => _overwrites;
public new abstract IReadOnlyCollection<SocketGuildUser> Users { get; }
public new virtual IReadOnlyCollection<SocketGuildUser> Users => ImmutableArray.Create<SocketGuildUser>();

internal SocketGuildChannel(DiscordSocketClient discord, ulong id, SocketGuild guild)
: base(discord, id)
@@ -35,7 +35,8 @@ namespace Discord.WebSocket
case ChannelType.Voice:
return SocketVoiceChannel.Create(guild, state, model);
default:
throw new InvalidOperationException("Unknown guild channel type");
// TODO: Proper implementation for channel categories
return new SocketGuildChannel(guild.Discord, model.Id, guild);
}
}
internal override void Update(ClientState state, Model model)
@@ -49,7 +50,7 @@ namespace Discord.WebSocket
newOverwrites.Add(overwrites[i].ToEntity());
_overwrites = newOverwrites.ToImmutable();
}
public Task ModifyAsync(Action<GuildChannelProperties> func, RequestOptions options = null)
=> ChannelHelper.ModifyAsync(this, Discord, func, options);
public Task DeleteAsync(RequestOptions options = null)
@@ -115,7 +116,7 @@ namespace Discord.WebSocket
public async Task<RestInviteMetadata> CreateInviteAsync(int? maxAge = 3600, int? maxUses = null, bool isTemporary = false, bool isUnique = false, RequestOptions options = null)
=> await ChannelHelper.CreateInviteAsync(this, Discord, maxAge, maxUses, isTemporary, isUnique, options).ConfigureAwait(false);

public new abstract SocketGuildUser GetUser(ulong id);
public new virtual SocketGuildUser GetUser(ulong id) => null;

public override string ToString() => Name;
internal new SocketGuildChannel Clone() => MemberwiseClone() as SocketGuildChannel;
@@ -145,7 +146,7 @@ namespace Discord.WebSocket
=> await RemovePermissionOverwriteAsync(role, options).ConfigureAwait(false);
async Task IGuildChannel.RemovePermissionOverwriteAsync(IUser user, RequestOptions options)
=> await RemovePermissionOverwriteAsync(user, options).ConfigureAwait(false);
IAsyncEnumerable<IReadOnlyCollection<IGuildUser>> IGuildChannel.GetUsersAsync(CacheMode mode, RequestOptions options)
=> ImmutableArray.Create<IReadOnlyCollection<IGuildUser>>(Users).ToAsyncEnumerable();
Task<IGuildUser> IGuildChannel.GetUserAsync(ulong id, CacheMode mode, RequestOptions options)


+ 20
- 20
src/Discord.Net/Discord.Net.nuspec View File

@@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>Discord.Net</id>
<version>1.0.1$suffix$</version>
<version>1.0.2$suffix$</version>
<title>Discord.Net</title>
<authors>RogueException</authors>
<owners>RogueException</owners>
@@ -13,29 +13,29 @@
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<dependencies>
<group targetFramework="net45">
<dependency id="Discord.Net.Core" version="1.0.1$suffix$" />
<dependency id="Discord.Net.Rest" version="1.0.1$suffix$" />
<dependency id="Discord.Net.WebSocket" version="1.0.1$suffix$" />
<dependency id="Discord.Net.Rpc" version="1.0.1$suffix$" />
<dependency id="Discord.Net.Commands" version="1.0.1$suffix$" />
<dependency id="Discord.Net.Webhook" version="1.0.1$suffix$" />
<dependency id="Discord.Net.Core" version="1.0.2$suffix$" />
<dependency id="Discord.Net.Rest" version="1.0.2$suffix$" />
<dependency id="Discord.Net.WebSocket" version="1.0.2$suffix$" />
<dependency id="Discord.Net.Rpc" version="1.0.2$suffix$" />
<dependency id="Discord.Net.Commands" version="1.0.2$suffix$" />
<dependency id="Discord.Net.Webhook" version="1.0.2$suffix$" />
</group>
<group targetFramework="netstandard1.1">
<dependency id="Discord.Net.Core" version="1.0.1$suffix$" />
<dependency id="Discord.Net.Rest" version="1.0.1$suffix$" />
<dependency id="Discord.Net.WebSocket" version="1.0.1$suffix$" />
<dependency id="Discord.Net.Rpc" version="1.0.1$suffix$" />
<dependency id="Discord.Net.Commands" version="1.0.1$suffix$" />
<dependency id="Discord.Net.Webhook" version="1.0.1$suffix$" />
<dependency id="Discord.Net.Core" version="1.0.2$suffix$" />
<dependency id="Discord.Net.Rest" version="1.0.2$suffix$" />
<dependency id="Discord.Net.WebSocket" version="1.0.2$suffix$" />
<dependency id="Discord.Net.Rpc" version="1.0.2$suffix$" />
<dependency id="Discord.Net.Commands" version="1.0.2$suffix$" />
<dependency id="Discord.Net.Webhook" version="1.0.2$suffix$" />
</group>
<group targetFramework="netstandard1.3">
<dependency id="Discord.Net.Core" version="1.0.1$suffix$" />
<dependency id="Discord.Net.Rest" version="1.0.1$suffix$" />
<dependency id="Discord.Net.WebSocket" version="1.0.1$suffix$" />
<dependency id="Discord.Net.Rpc" version="1.0.1$suffix$" />
<dependency id="Discord.Net.Commands" version="1.0.1$suffix$" />
<dependency id="Discord.Net.Webhook" version="1.0.1$suffix$" />
<dependency id="Discord.Net.Core" version="1.0.2$suffix$" />
<dependency id="Discord.Net.Rest" version="1.0.2$suffix$" />
<dependency id="Discord.Net.WebSocket" version="1.0.2$suffix$" />
<dependency id="Discord.Net.Rpc" version="1.0.2$suffix$" />
<dependency id="Discord.Net.Commands" version="1.0.2$suffix$" />
<dependency id="Discord.Net.Webhook" version="1.0.2$suffix$" />
</group>
</dependencies>
</metadata>
</package>
</package>

Loading…
Cancel
Save