From c13dbeb05173fd4b98395c627b328ded22c1aaf3 Mon Sep 17 00:00:00 2001 From: sta Date: Fri, 18 Nov 2016 15:57:52 +0900 Subject: [PATCH] [Modify] Throw exceptions --- websocket-sharp/WebSocket.cs | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/websocket-sharp/WebSocket.cs b/websocket-sharp/WebSocket.cs index ac699ed8..346f8e97 100644 --- a/websocket-sharp/WebSocket.cs +++ b/websocket-sharp/WebSocket.cs @@ -2722,17 +2722,19 @@ namespace WebSocketSharp /// public void Send (string data) { - var msg = _readyState.CheckIfAvailable (false, true, false, false) ?? - CheckSendParameter (data); + if (_readyState != WebSocketState.Open) { + var msg = "The current state of the connection is not Open."; + throw new InvalidOperationException (msg); + } - if (msg != null) { - _logger.Error (msg); - error ("An error has occurred in sending data.", null); + if (data == null) + throw new ArgumentNullException ("data"); - return; - } + byte[] bytes; + if (!data.TryGetUTF8EncodedBytes (out bytes)) + throw new ArgumentException ("Cannot be UTF8 encoded.", "data"); - send (Opcode.Text, new MemoryStream (data.UTF8Encode ())); + send (Opcode.Text, new MemoryStream (bytes)); } ///