[Modify] Throw exceptions

This commit is contained in:
sta 2017-04-02 17:36:18 +09:00
parent bd1d1fd922
commit a5eccd5442

View File

@ -565,15 +565,18 @@ namespace WebSocketSharp.Server
/// </param>
public void Broadcast (string data)
{
var msg = _state.CheckIfAvailable (false, true, false) ??
WebSocket.CheckSendParameter (data);
if (msg != null) {
_logger.Error (msg);
return;
if (_state != ServerState.Start) {
var msg = "The current state of the manager is not Start.";
throw new InvalidOperationException (msg);
}
var bytes = data.UTF8Encode ();
if (data == null)
throw new ArgumentNullException ("data");
byte[] bytes;
if (!data.TryGetUTF8EncodedBytes (out bytes))
throw new ArgumentException ("It could not be UTF-8-encoded.", "data");
if (bytes.LongLength <= WebSocket.FragmentLength)
broadcast (Opcode.Text, bytes, null);
else