Browse Source

Move TaskHelper to Shared folder

pull/6/head
RogueException 9 years ago
parent
commit
16418f61b9
5 changed files with 30 additions and 20 deletions
  1. +1
    -5
      src/Discord.Net.Commands/CommandBuilder.cs
  2. +1
    -0
      src/Discord.Net.Commands/project.json
  3. +8
    -2
      src/Discord.Net.Net45/Discord.Net.csproj
  4. +3
    -13
      src/Discord.Net/Helpers/TaskExtensions.cs
  5. +17
    -0
      src/Discord.Net/Shared/TaskHelper.cs

+ 1
- 5
src/Discord.Net.Commands/CommandBuilder.cs View File

@@ -61,11 +61,7 @@ namespace Discord.Commands
}
public CommandBuilder Do(Action<CommandEventArgs> func)
{
#if DNXCORE50
_command.Handler = e => { func(e); return Task.CompletedTask; };
#else
_command.Handler = e => { func(e); return Task.Delay(0); };
#endif
_command.Handler = e => { func(e); return TaskHelper.CompletedTask; };
return this;
}
}


+ 1
- 0
src/Discord.Net.Commands/project.json View File

@@ -5,6 +5,7 @@
"tags": [ "discord", "discordapp" ],
"projectUrl": "https://github.com/RogueException/Discord.Net",
"licenseUrl": "http://opensource.org/licenses/MIT",
"compile": ["**/*.cs", "../Discord.Net/Shared/*.cs"],
"repository": {
"type": "git",
"url": "git://github.com/RogueException/Discord.Net"


+ 8
- 2
src/Discord.Net.Net45/Discord.Net.csproj View File

@@ -184,8 +184,8 @@
<Compile Include="..\Discord.Net\Helpers\MessageCleaner.cs">
<Link>Helpers\MessageCleaner.cs</Link>
</Compile>
<Compile Include="..\Discord.Net\Helpers\TaskHelper.cs">
<Link>Helpers\TaskHelper.cs</Link>
<Compile Include="..\Discord.Net\Helpers\TaskExtensions.cs">
<Link>Helpers\TaskExtensions.cs</Link>
</Compile>
<Compile Include="..\Discord.Net\Mention.cs">
<Link>Mention.cs</Link>
@@ -217,6 +217,9 @@
<Compile Include="..\Discord.Net\Models\User.cs">
<Link>Models\User.cs</Link>
</Compile>
<Compile Include="..\Discord.Net\Shared\TaskHelper.cs">
<Link>Shared\TaskHelper.cs</Link>
</Compile>
<Compile Include="..\Discord.Net\TimeoutException.cs">
<Link>TimeoutException.cs</Link>
</Compile>
@@ -238,6 +241,9 @@
<Compile Include="..\Discord.Net\WebSockets\Voice\Events.cs">
<Link>WebSockets\Voice\Events.cs</Link>
</Compile>
<Compile Include="..\Discord.Net\WebSockets\Voice\VoiceBuffer.cs">
<Link>WebSockets\Voice\VoiceBuffer.cs</Link>
</Compile>
<Compile Include="..\Discord.Net\WebSockets\Voice\VoiceWebSocket.cs">
<Link>WebSockets\Voice\VoiceWebSocket.cs</Link>
</Compile>


src/Discord.Net/Helpers/TaskHelper.cs → src/Discord.Net/Helpers/TaskExtensions.cs View File

@@ -2,26 +2,16 @@
using System.Threading;
using System.Threading.Tasks;

namespace Discord.Helpers
namespace Discord
{
internal static class TaskHelper
public static class TaskExtensions
{
public static Task CompletedTask { get; }
static TaskHelper()
{
#if DNXCORE50
CompletedTask = Task.CompletedTask;
#else
CompletedTask = Task.Delay(0);
#endif
}

public static async Task Timeout(this Task self, int milliseconds)
{
Task timeoutTask = Task.Delay(milliseconds);
Task finishedTask = await Task.WhenAny(self, timeoutTask);
if (finishedTask == timeoutTask)
throw new TimeoutException();
throw new TimeoutException();
else
await self;
}

+ 17
- 0
src/Discord.Net/Shared/TaskHelper.cs View File

@@ -0,0 +1,17 @@
using System.Threading.Tasks;

namespace Discord
{
internal static class TaskHelper
{
public static Task CompletedTask { get; }
static TaskHelper()
{
#if DNXCORE50
CompletedTask = Task.CompletedTask;
#else
CompletedTask = Task.Delay(0);
#endif
}
}
}

Loading…
Cancel
Save