Browse Source

Added DNXCore placeholders (again)

tags/docs-0.9
RogueException 9 years ago
parent
commit
e7e2a85c3a
9 changed files with 91 additions and 31 deletions
  1. +4
    -1
      src/Discord.Net.Commands/project.json
  2. +4
    -1
      src/Discord.Net.Modules/project.json
  3. +5
    -1
      src/Discord.Net/Net/Rest/RestClient.cs
  4. +4
    -2
      src/Discord.Net/Net/Rest/SharpRestEngine.cs
  5. +17
    -1
      src/Discord.Net/Net/WebSockets/VoiceWebSocket.cs
  6. +4
    -2
      src/Discord.Net/Net/WebSockets/WebSocket.BuiltIn.cs
  7. +5
    -1
      src/Discord.Net/Net/WebSockets/WebSocket.cs
  8. +4
    -3
      src/Discord.Net/Net/WebSockets/WebSocketSharpEngine.cs
  9. +44
    -19
      src/Discord.Net/project.json

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

@@ -12,11 +12,14 @@
"compilationOptions": {
"warningsAsErrors": true
},

"dependencies": {
"Discord.Net": "0.8.1-beta1"
},

"frameworks": {
"net45": { },
"dnx451": { }
"dnx451": { },
"dnxcore50": { }
}
}

+ 4
- 1
src/Discord.Net.Modules/project.json View File

@@ -12,12 +12,15 @@
"compilationOptions": {
"warningsAsErrors": true
},

"dependencies": {
"Discord.Net": "0.8.1-beta1",
"Discord.Net.Commands": "0.8.1-beta1"
},

"frameworks": {
"net45": { },
"dnx451": { }
"dnx451": { },
"dnxcore50": { }
}
}

+ 5
- 1
src/Discord.Net/Net/Rest/RestClient.cs View File

@@ -17,8 +17,12 @@ namespace Discord.Net.Rest
public RestClient(DiscordAPIClientConfig config)
{
_config = config;
#if !DNXCORE50
_engine = new SharpRestEngine(config);
}
#else
//_engine = new BuiltInRestEngine(config);
#endif
}

public void SetToken(string token) => _engine.SetToken(token);



+ 4
- 2
src/Discord.Net/Net/Rest/SharpRestEngine.cs View File

@@ -1,4 +1,5 @@
using Discord.API;
#if !DNXCORE50
using Discord.API;
using RestSharp;
using System;
using System.Net;
@@ -82,4 +83,5 @@ namespace Discord.Net.Rest
}
}
}
}
}
#endif

+ 17
- 1
src/Discord.Net/Net/WebSockets/VoiceWebSocket.cs View File

@@ -131,8 +131,10 @@ namespace Discord.Net.WebSockets
}
else //Dont make an OS thread if we only want to capture one packet...
tasks.Add(Task.Run(() => ReceiveVoiceAsync(_cancelToken)));

#if !DNXCORE50
tasks.Add(WatcherAsync());
#endif
if (tasks.Count > 0)
{
// We need to combine tasks into one because receiveThread is
@@ -176,6 +178,7 @@ namespace Discord.Net.WebSockets
private void ReceiveVoiceAsync(CancellationToken cancelToken)
{
var closeTask = cancelToken.Wait();
try
{
byte[] packet, decodingBuffer = null, nonce = null, result;
@@ -193,7 +196,18 @@ namespace Discord.Net.WebSockets
Thread.Sleep(1);
if (_udp.Available > 0)
{
#if !DNXCORE50
packet = _udp.Receive(ref endpoint);
#else
//TODO: Is this really the only way to end a Receive call in DNXCore?
var receiveTask = _udp.ReceiveAsync();
var task = Task.WhenAny(closeTask, receiveTask).Result;
if (task == closeTask)
break;
var udpPacket = receiveTask.Result;
packet = udpPacket.Buffer;
endpoint = udpPacket.RemoteEndPoint;
#endif
packetLength = packet.Length;

if (packetLength > 0 && endpoint.Equals(_endpoint))
@@ -367,6 +381,7 @@ namespace Discord.Net.WebSockets
catch (OperationCanceledException) { }
catch (InvalidOperationException) { } //Includes ObjectDisposedException
}
#if !DNXCORE50
//Closes the UDP socket when _disconnectToken is triggered, since UDPClient doesn't allow passing a canceltoken
private Task WatcherAsync()
{
@@ -374,6 +389,7 @@ namespace Discord.Net.WebSockets
return cancelToken.Wait()
.ContinueWith(_ => _udp.Close());
}
#endif

protected override async Task ProcessMessage(string json)
{


src/Discord.Net/Net/WebSockets/WebSocket.BuiltIn.cs.old → src/Discord.Net/Net/WebSockets/WebSocket.BuiltIn.cs View File

@@ -1,4 +1,5 @@
using Discord.Helpers;
#if DNXCORE50zzz
using Discord.Helpers;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
@@ -148,4 +149,5 @@ namespace Discord.Net.WebSockets
_sendQueue.Enqueue(message);
}
}
}
}
#endif

+ 5
- 1
src/Discord.Net/Net/WebSockets/WebSocket.cs View File

@@ -51,8 +51,12 @@ namespace Discord.Net.WebSockets
_loginTimeout = client.Config.ConnectionTimeout;
_cancelToken = new CancellationToken(true);
_connectedEvent = new ManualResetEventSlim(false);

#if !DNXCORE50
_engine = new WebSocketSharpEngine(this, client.Config);
#else
//_engine = new BuiltInWebSocketEngine(this, client.Config);
#endif
_engine.BinaryMessage += (s, e) =>
{
using (var compressed = new MemoryStream(e.Data, 2, e.Data.Length - 2))


+ 4
- 3
src/Discord.Net/Net/WebSockets/WebSocketSharpEngine.cs View File

@@ -1,7 +1,7 @@
using System;
#if !DNXCORE50
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Net;
using System.Threading;
using System.Threading.Tasks;
using WSSharpNWebSocket = WebSocketSharp.WebSocket;
@@ -111,4 +111,5 @@ namespace Discord.Net.WebSockets
_sendQueue.Enqueue(message);
}
}
}
}
#endif

+ 44
- 19
src/Discord.Net/project.json View File

@@ -17,32 +17,57 @@
"compilationOptions": {
"allowUnsafe": true
},
"configurations": {
"FullDebug": {
"compilationOptions": {
"define": [
"DEBUG",
"TRACE",
"TEST_RESPONSES"
]
}
}
},
"dependencies": {
"Newtonsoft.Json": "7.0.1",
"RestSharp": "105.2.3",
"WebSocketSharp": "1.0.3-rc9"
},
"configurations": {
"FullDebug": {
"compilationOptions": {
"define": [
"DEBUG",
"TRACE",
"TEST_RESPONSES"
]
}
}
},
"dependencies": {
"Newtonsoft.Json": "7.0.1"
},
"frameworks": {
"net45": {
"frameworkAssemblies": {
"System.Net.Http": "4.0.0.0"
}
},
"dependencies": {
"RestSharp": "105.2.3",
"WebSocketSharp": "1.0.3-rc9"
}
},
"dnx451": {
"frameworkAssemblies": {
"System.Net.Http": "4.0.0.0"
}
}
},
"dependencies": {
"RestSharp": "105.2.3",
"WebSocketSharp": "1.0.3-rc9"
}
},
"dnxcore50": {
"dependencies": {
"System.Collections": "4.0.11-beta-23409",
"System.Collections.Concurrent": "4.0.11-beta-23409",
"System.IO.Compression": "4.0.1-beta-23409",
"System.Linq": "4.0.1-beta-23409",
"System.Net.Http": "4.0.1-beta-23409",
"System.Net.NameResolution": "4.0.0-beta-23409",
"System.Net.Sockets": "4.1.0-beta-23409",
"System.Net.Requests": "4.0.11-beta-23409",
"System.Net.WebSockets.Client": "4.0.0-beta-23409",
"System.Runtime.InteropServices": "4.0.21-beta-23409",
"System.Text.RegularExpressions": "4.0.11-beta-23409",
"System.Threading": "4.0.11-beta-23409",
"System.Threading.Thread": "4.0.0-beta-23409"
}
}
}
}

Loading…
Cancel
Save