[Modify] Polish it
This commit is contained in:
parent
e38c614906
commit
974f6dc1d7
@ -27,21 +27,20 @@
|
||||
#endregion
|
||||
|
||||
using System;
|
||||
using System.Text;
|
||||
|
||||
namespace WebSocketSharp
|
||||
{
|
||||
/// <summary>
|
||||
/// Contains the event data associated with a <see cref="WebSocket.OnClose"/> event.
|
||||
/// Represents the event data for the <see cref="WebSocket.OnClose"/> event.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// <para>
|
||||
/// A <see cref="WebSocket.OnClose"/> event occurs when the WebSocket connection has been
|
||||
/// closed.
|
||||
/// A <see cref="WebSocket.OnClose"/> event occurs when the WebSocket connection
|
||||
/// has been closed.
|
||||
/// </para>
|
||||
/// <para>
|
||||
/// If you would like to get the reason for the close, you should access
|
||||
/// the <see cref="CloseEventArgs.Code"/> or <see cref="CloseEventArgs.Reason"/> property.
|
||||
/// the <see cref="Code"/> or <see cref="Reason"/> property.
|
||||
/// </para>
|
||||
/// </remarks>
|
||||
public class CloseEventArgs : EventArgs
|
||||
@ -51,7 +50,6 @@ namespace WebSocketSharp
|
||||
private bool _clean;
|
||||
private ushort _code;
|
||||
private PayloadData _payloadData;
|
||||
private byte[] _rawData;
|
||||
private string _reason;
|
||||
|
||||
#endregion
|
||||
@ -61,14 +59,12 @@ namespace WebSocketSharp
|
||||
internal CloseEventArgs ()
|
||||
{
|
||||
_code = (ushort) CloseStatusCode.NoStatus;
|
||||
_payloadData = new PayloadData ();
|
||||
_rawData = _payloadData.ApplicationData;
|
||||
_payloadData = PayloadData.Empty;
|
||||
}
|
||||
|
||||
internal CloseEventArgs (ushort code)
|
||||
{
|
||||
_code = code;
|
||||
_rawData = code.InternalToByteArray (ByteOrder.Big);
|
||||
}
|
||||
|
||||
internal CloseEventArgs (CloseStatusCode code)
|
||||
@ -79,15 +75,15 @@ namespace WebSocketSharp
|
||||
internal CloseEventArgs (PayloadData payloadData)
|
||||
{
|
||||
_payloadData = payloadData;
|
||||
_rawData = payloadData.ApplicationData;
|
||||
|
||||
var len = _rawData.Length;
|
||||
var data = payloadData.ApplicationData;
|
||||
var len = data.Length;
|
||||
_code = len > 1
|
||||
? _rawData.SubArray (0, 2).ToUInt16 (ByteOrder.Big)
|
||||
? data.SubArray (0, 2).ToUInt16 (ByteOrder.Big)
|
||||
: (ushort) CloseStatusCode.NoStatus;
|
||||
|
||||
_reason = len > 2
|
||||
? _rawData.SubArray (2, len - 2).UTF8Decode ()
|
||||
? data.SubArray (2, len - 2).UTF8Decode ()
|
||||
: String.Empty;
|
||||
}
|
||||
|
||||
@ -95,7 +91,6 @@ namespace WebSocketSharp
|
||||
{
|
||||
_code = code;
|
||||
_reason = reason;
|
||||
_rawData = code.Append (reason);
|
||||
}
|
||||
|
||||
internal CloseEventArgs (CloseStatusCode code, string reason)
|
||||
@ -109,13 +104,7 @@ namespace WebSocketSharp
|
||||
|
||||
internal PayloadData PayloadData {
|
||||
get {
|
||||
return _payloadData ?? (_payloadData = new PayloadData (_rawData));
|
||||
}
|
||||
}
|
||||
|
||||
internal byte[] RawData {
|
||||
get {
|
||||
return _rawData;
|
||||
return _payloadData ?? (_payloadData = new PayloadData (_code.Append (_reason)));
|
||||
}
|
||||
}
|
||||
|
||||
@ -148,10 +137,10 @@ namespace WebSocketSharp
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets a value indicating whether the WebSocket connection has been closed cleanly.
|
||||
/// Gets a value indicating whether the connection has been closed cleanly.
|
||||
/// </summary>
|
||||
/// <value>
|
||||
/// <c>true</c> if the WebSocket connection has been closed cleanly; otherwise, <c>false</c>.
|
||||
/// <c>true</c> if the connection has been closed cleanly; otherwise, <c>false</c>.
|
||||
/// </value>
|
||||
public bool WasClean {
|
||||
get {
|
||||
|
Loading…
Reference in New Issue
Block a user