diff --git a/websocket-sharp/WebSocket.cs b/websocket-sharp/WebSocket.cs index 52818f81a..82a5e50b0 100644 --- a/websocket-sharp/WebSocket.cs +++ b/websocket-sharp/WebSocket.cs @@ -603,22 +603,54 @@ public TimeSpan WaitTime { /// /// Occurs when the WebSocket connection has been closed. /// - public event EventHandler OnClose; + event EventHandler onClose; + public event EventHandler OnClose { + add { + onClose = (EventHandler)Delegate.Combine(onClose, value); + } + remove { + onClose = (EventHandler)Delegate.Remove(onClose, value); + } + } /// /// Occurs when the gets an error. /// - public event EventHandler OnError; + event EventHandler onError; + public event EventHandler OnError { + add { + onError = (EventHandler)Delegate.Combine(onError, value); + } + remove { + onError = (EventHandler)Delegate.Remove(onError, value); + } + } /// /// Occurs when the receives a message. /// - public event EventHandler OnMessage; + event EventHandler onMessage; + public event EventHandler OnMessage { + add { + onMessage = (EventHandler)Delegate.Combine(onMessage, value); + } + remove { + onMessage = (EventHandler)Delegate.Remove(onMessage, value); + } + } /// /// Occurs when the WebSocket connection has been established. /// - public event EventHandler OnOpen; + event EventHandler onOpen; + public event EventHandler OnOpen { + add { + onOpen = (EventHandler)Delegate.Combine(onOpen, value); + } + remove { + onOpen = (EventHandler)Delegate.Remove(onOpen, value); + } + } #endregion @@ -767,7 +799,7 @@ private void close (CloseEventArgs e, bool send, bool receive, bool received) _readyState = WebSocketState.Closed; try { - OnClose.Emit (this, e); + onClose.Emit (this, e); } catch (Exception ex) { _logger.Fatal (ex.ToString ()); @@ -947,7 +979,7 @@ private void enqueueToMessageEventQueue (MessageEventArgs e) private void error (string message, Exception exception) { try { - OnError.Emit (this, new ErrorEventArgs (message, exception)); + onError.Emit (this, new ErrorEventArgs (message, exception)); } catch (Exception ex) { _logger.Fatal (ex.ToString ()); @@ -973,7 +1005,7 @@ private void open () lock (_forEvent) { try { - OnOpen.Emit (this, EventArgs.Empty); + onOpen.Emit (this, EventArgs.Empty); } catch (Exception ex) { processException (ex, "An exception has occurred during an OnOpen event."); @@ -1508,7 +1540,7 @@ private void startReceiving () try { var e = dequeueFromMessageEventQueue (); if (e != null && _readyState == WebSocketState.Open) - OnMessage.Emit (this, e); + onMessage.Emit (this, e); } catch (Exception ex) { processException (ex, "An exception has occurred during an OnMessage event."); @@ -1711,7 +1743,7 @@ internal void Close (CloseEventArgs e, byte[] frameAsBytes, bool receive) _readyState = WebSocketState.Closed; try { - OnClose.Emit (this, e); + onClose.Emit (this, e); } catch (Exception ex) { _logger.Fatal (ex.ToString ());