[Modify] Add it

This commit is contained in:
sta 2018-07-08 21:37:27 +09:00
parent 8d197479f5
commit a8fe9496d9

View File

@ -539,6 +539,66 @@ namespace WebSocketSharp.Server
_websocket.Close (code, reason); _websocket.Close (code, reason);
} }
/// <summary>
/// Closes the WebSocket connection for a session with the specified
/// code and reason.
/// </summary>
/// <remarks>
/// This method does nothing if the current state of the connection is
/// Closing or Closed.
/// </remarks>
/// <param name="code">
/// <para>
/// One of the <see cref="CloseStatusCode"/> enum values.
/// </para>
/// <para>
/// It represents the status code indicating the reason for the close.
/// </para>
/// </param>
/// <param name="reason">
/// <para>
/// A <see cref="string"/> that represents the reason for the close.
/// </para>
/// <para>
/// The size must be 123 bytes or less in UTF-8.
/// </para>
/// </param>
/// <exception cref="InvalidOperationException">
/// The session has not started yet.
/// </exception>
/// <exception cref="ArgumentOutOfRangeException">
/// The size of <paramref name="reason"/> is greater than 123 bytes.
/// </exception>
/// <exception cref="ArgumentException">
/// <para>
/// <paramref name="code"/> is
/// <see cref="CloseStatusCode.MandatoryExtension"/>.
/// </para>
/// <para>
/// -or-
/// </para>
/// <para>
/// <paramref name="code"/> is
/// <see cref="CloseStatusCode.NoStatus"/> and there is
/// <paramref name="reason"/>.
/// </para>
/// <para>
/// -or-
/// </para>
/// <para>
/// <paramref name="reason"/> could not be UTF-8-encoded.
/// </para>
/// </exception>
protected void Close (CloseStatusCode code, string reason)
{
if (_websocket == null) {
var msg = "The session has not started yet.";
throw new InvalidOperationException (msg);
}
_websocket.Close (code, reason);
}
/// <summary> /// <summary>
/// Calls the <see cref="OnError"/> method with the specified message. /// Calls the <see cref="OnError"/> method with the specified message.
/// </summary> /// </summary>