X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/730b772b41ad9df76e5226290bb9eb917ea161f0..ae901b234c4a0aa7c1777b3bd181dd7f8517ad21:/interface/wx/protocol/protocol.h

diff --git a/interface/wx/protocol/protocol.h b/interface/wx/protocol/protocol.h
index ea076402de..dc1586ac52 100644
--- a/interface/wx/protocol/protocol.h
+++ b/interface/wx/protocol/protocol.h
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        protocol/protocol.h
+// Name:        wx/protocol/protocol.h
 // Purpose:     interface of wxProtocol
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
@@ -107,5 +107,50 @@ public:
         @see wxSocketBase::SetTimeout
     */
     void SetDefaultTimeout(wxUint32 Value);
+
+    /**
+        @name Logging support.
+
+        Each wxProtocol object may have the associated logger (by default there
+        is none) which is used to log network requests and responses.
+
+        @see wxProtocolLog
+    */
+    //@{
+
+    /**
+        Set the logger, deleting the old one and taking ownership of this one.
+
+        @param log
+            New logger allocated on the heap or @NULL.
+     */
+    void SetLog(wxProtocolLog *log);
+
+    /**
+        Return the current logger, may be @NULL.
+     */
+    wxProtocolLog *GetLog() const { return m_log; }
+
+    /**
+        Detach the existing logger without deleting it.
+        
+        The caller is responsible for deleting the returned pointer if it's
+        non-@c NULL.
+     */
+    wxProtocolLog *DetachLog();
+
+    /**
+        Call wxProtocolLog::LogRequest() if we have a valid logger or do
+        nothing otherwise.
+     */
+    void LogRequest(const wxString& str);
+
+    /**
+        Call wxProtocolLog::LogResponse() if we have a valid logger or do
+        nothing otherwise.
+     */
+    void LogResponse(const wxString& str);
+
+    //@}
 };