Fixed several part
This commit is contained in:
parent
a93dcc09aa
commit
cf6b26503e
@ -108,7 +108,7 @@ namespace Example
|
||||
|
||||
_ws.OnError += (sender, e) =>
|
||||
{
|
||||
enNfMessage("[AudioStreamer] error", "WS Error: " + e.Data, "notification-message-im");
|
||||
enNfMessage("[AudioStreamer] error", "WS: Error: " + e.Data, "notification-message-im");
|
||||
};
|
||||
|
||||
_ws.OnClose += (sender, e) =>
|
||||
@ -116,7 +116,7 @@ namespace Example
|
||||
enNfMessage
|
||||
(
|
||||
"[AudioStreamer] disconnect",
|
||||
String.Format("WS Close({0}:{1}): {2}", (ushort)e.Code, e.Code, e.Reason),
|
||||
String.Format("WS: Close({0}:{1}): {2}", (ushort)e.Code, e.Code, e.Reason),
|
||||
"notification-message-im"
|
||||
);
|
||||
};
|
||||
|
@ -2,7 +2,7 @@
|
||||
<MonoDevelop.Ide.Workspace ActiveConfiguration="Release_Ubuntu" />
|
||||
<MonoDevelop.Ide.Workbench ActiveDocument="websocket-sharp/WebSocket.cs">
|
||||
<Files>
|
||||
<File FileName="websocket-sharp/WebSocket.cs" Line="217" Column="41" />
|
||||
<File FileName="websocket-sharp/WebSocket.cs" Line="428" Column="39" />
|
||||
</Files>
|
||||
</MonoDevelop.Ide.Workbench>
|
||||
<MonoDevelop.Ide.DebuggingService.Breakpoints>
|
||||
|
@ -36,6 +36,25 @@ namespace WebSocketSharp
|
||||
{
|
||||
public static class Ext
|
||||
{
|
||||
public static void Emit(
|
||||
this EventHandler eventHandler, object sender, EventArgs e)
|
||||
{
|
||||
if (eventHandler != null)
|
||||
{
|
||||
eventHandler(sender, e);
|
||||
}
|
||||
}
|
||||
|
||||
public static void Emit<TEventArgs>(
|
||||
this EventHandler<TEventArgs> eventHandler, object sender, TEventArgs e)
|
||||
where TEventArgs : EventArgs
|
||||
{
|
||||
if (eventHandler != null)
|
||||
{
|
||||
eventHandler(sender, e);
|
||||
}
|
||||
}
|
||||
|
||||
public static bool EqualsAndSaveTo(this int value, char c, List<byte> dest)
|
||||
{
|
||||
byte b = (byte)value;
|
||||
|
@ -47,7 +47,8 @@ namespace WebSocketSharp.Frame
|
||||
|
||||
public byte[] ExtensionData { get; private set; }
|
||||
public byte[] ApplicationData { get; private set; }
|
||||
public bool IsMasked { get; private set; }
|
||||
|
||||
public bool IsMasked { get; private set; }
|
||||
|
||||
public ulong Length
|
||||
{
|
||||
@ -154,6 +155,7 @@ namespace WebSocketSharp.Frame
|
||||
{
|
||||
mask(ExtensionData, maskingKey);
|
||||
}
|
||||
|
||||
if (ApplicationData.LongLength > 0)
|
||||
{
|
||||
mask(ApplicationData, maskingKey);
|
||||
|
@ -126,10 +126,7 @@ namespace WebSocketSharp
|
||||
{
|
||||
case WsState.OPEN:
|
||||
messageThreadStart();
|
||||
if (OnOpen != null)
|
||||
{
|
||||
OnOpen(this, EventArgs.Empty);
|
||||
}
|
||||
OnOpen.Emit(this, EventArgs.Empty);
|
||||
break;
|
||||
case WsState.CLOSING:
|
||||
break;
|
||||
@ -229,14 +226,14 @@ namespace WebSocketSharp
|
||||
else if (_readyState == WsState.CONNECTING)
|
||||
{
|
||||
ReadyState = WsState.CLOSED;
|
||||
emitOnClose(data);
|
||||
OnClose.Emit(this, new CloseEventArgs(data));
|
||||
return;
|
||||
}
|
||||
|
||||
ReadyState = WsState.CLOSING;
|
||||
}
|
||||
|
||||
emitOnClose(data);
|
||||
OnClose.Emit(this, new CloseEventArgs(data));
|
||||
var frame = new WsFrame(Opcode.CLOSE, data);
|
||||
closeHandshake(frame);
|
||||
#if DEBUG
|
||||
@ -428,27 +425,14 @@ namespace WebSocketSharp
|
||||
ReadyState = WsState.OPEN;
|
||||
}
|
||||
|
||||
private void emitOnClose(PayloadData data)
|
||||
{
|
||||
if (OnClose != null)
|
||||
{
|
||||
OnClose(this, new CloseEventArgs(data));
|
||||
}
|
||||
}
|
||||
|
||||
private void error(string message)
|
||||
{
|
||||
#if DEBUG
|
||||
var callerFrame = new StackFrame(1);
|
||||
var caller = callerFrame.GetMethod();
|
||||
|
||||
if (OnError != null)
|
||||
{
|
||||
OnError(this, new MessageEventArgs(message));
|
||||
}
|
||||
else
|
||||
{
|
||||
Console.WriteLine("WS: Error@{0}: {1}", caller.Name, message);
|
||||
}
|
||||
Console.WriteLine("WS: Error@{0}: {1}", caller.Name, message);
|
||||
#endif
|
||||
OnError.Emit(this, new MessageEventArgs(message));
|
||||
}
|
||||
|
||||
private bool isValidResponse(string[] response, out string message)
|
||||
@ -548,9 +532,9 @@ namespace WebSocketSharp
|
||||
{
|
||||
eventArgs = receive();
|
||||
|
||||
if (OnMessage != null && eventArgs != null)
|
||||
if (eventArgs != null)
|
||||
{
|
||||
OnMessage(this, eventArgs);
|
||||
OnMessage.Emit(this, eventArgs);
|
||||
}
|
||||
}
|
||||
catch (WsReceivedTooBigMessageException ex)
|
||||
@ -630,17 +614,11 @@ namespace WebSocketSharp
|
||||
else if (frame.Opcode == Opcode.PING)
|
||||
{// FINAL & PING
|
||||
pong(frame.PayloadData);
|
||||
if (OnMessage != null)
|
||||
{
|
||||
OnMessage(this, new MessageEventArgs(frame.Opcode, frame.PayloadData));
|
||||
}
|
||||
OnMessage.Emit(this, new MessageEventArgs(frame.Opcode, frame.PayloadData));
|
||||
}
|
||||
else if (frame.Opcode == Opcode.PONG)
|
||||
{// FINAL & PONG
|
||||
if (OnMessage != null)
|
||||
{
|
||||
OnMessage(this, new MessageEventArgs(frame.Opcode, frame.PayloadData));
|
||||
}
|
||||
OnMessage.Emit(this, new MessageEventArgs(frame.Opcode, frame.PayloadData));
|
||||
}
|
||||
else
|
||||
{// FINAL & (TEXT | BINARY)
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue
Block a user