From 672bd953202c47e53e91e1c25502f92efe0a5e30 Mon Sep 17 00:00:00 2001 From: KevM Date: Mon, 26 Oct 2015 11:56:37 -0500 Subject: [PATCH] Add intergration seam to Logger --- websocket-sharp/Logger.cs | 12 +++++++++++- websocket-sharp/Server/WebSocketBehavior.cs | 2 +- websocket-sharp/WebSocket.cs | 6 +++--- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/websocket-sharp/Logger.cs b/websocket-sharp/Logger.cs index c53257854..ed1f114ff 100644 --- a/websocket-sharp/Logger.cs +++ b/websocket-sharp/Logger.cs @@ -32,6 +32,16 @@ namespace WebSocketSharp { + public interface IWebSocketLogger + { + void Debug (string message); + void Error (string message); + void Fatal (string message); + void Info (string message); + void Trace (string message); + void Warn (string message); + } + /// /// Provides a set of methods and properties for logging. /// @@ -49,7 +59,7 @@ namespace WebSocketSharp /// to any Action<LogData, string> delegate. /// /// - public class Logger + public class Logger : IWebSocketLogger { #region Private Fields diff --git a/websocket-sharp/Server/WebSocketBehavior.cs b/websocket-sharp/Server/WebSocketBehavior.cs index 5ae6c8f6e..b62101fec 100644 --- a/websocket-sharp/Server/WebSocketBehavior.cs +++ b/websocket-sharp/Server/WebSocketBehavior.cs @@ -78,7 +78,7 @@ protected WebSocketBehavior () /// A that provides the logging functions, /// or if the WebSocket connection isn't established. /// - protected Logger Log { + protected IWebSocketLogger Log { get { return _websocket != null ? _websocket.Log : null; } diff --git a/websocket-sharp/WebSocket.cs b/websocket-sharp/WebSocket.cs index 52818f81a..6049d8921 100644 --- a/websocket-sharp/WebSocket.cs +++ b/websocket-sharp/WebSocket.cs @@ -91,7 +91,7 @@ private Func _handshakeRequestChecker; private bool _ignoreExtensions; private bool _inContinuation; - private volatile Logger _logger; + private volatile IWebSocketLogger _logger; private Queue _messageEventQueue; private uint _nonceCount; private string _origin; @@ -435,12 +435,12 @@ public bool IsSecure { /// /// A that provides the logging functions. /// - public Logger Log { + public IWebSocketLogger Log { get { return _logger; } - internal set { + set { _logger = value; } }