#if wxUSE_PROTOCOL
#include "wx/protocol/protocol.h"
+#include "wx/protocol/log.h"
#ifndef WX_PRECOMP
#include "wx/module.h"
#endif
#include "wx/url.h"
+#include "wx/log.h"
#include <stdlib.h>
// wxProtoInfo
// ----------------------------------------------------------------------------
+IMPLEMENT_CLASS(wxProtoInfo, wxObject)
+
wxProtoInfo::wxProtoInfo(const wxChar *name, const wxChar *serv,
const bool need_host1, wxClassInfo *info)
: m_protoname(name),
#endif
{
m_lastError = wxPROTO_NOERR;
+ m_log = NULL;
SetDefaultTimeout(60); // default timeout is 60 seconds
}
+void wxProtocol::SetDefaultTimeout(wxUint32 Value)
+{
+ m_uiDefaultTimeout = Value;
+#if wxUSE_SOCKETS
+ wxSocketBase::SetTimeout(Value); // sets it for this socket
+#endif
+}
+
+wxProtocol::~wxProtocol()
+{
+ delete m_log;
+}
+
#if wxUSE_SOCKETS
bool wxProtocol::Reconnect()
{
return true;
}
-void wxProtocol::SetDefaultTimeout(wxUint32 Value)
-{
- m_uiDefaultTimeout = Value;
-#if wxUSE_SOCKETS
- wxSocketBase::SetTimeout(Value); // sets it for this socket
-#endif
-}
-
-
// ----------------------------------------------------------------------------
// Read a line from socket
// ----------------------------------------------------------------------------
if ( eol == pBuf )
{
// check for case of "\r\n" being split
- if ( result.empty() || result.Last() != _T('\r') )
+ if ( result.empty() || result.Last() != wxT('\r') )
{
// ignore the stray '\n'
eol = NULL;
#endif // wxUSE_SOCKETS
+// ----------------------------------------------------------------------------
+// logging
+// ----------------------------------------------------------------------------
+
+void wxProtocol::SetLog(wxProtocolLog *log)
+{
+ delete m_log;
+ m_log = log;
+}
+
+void wxProtocol::LogRequest(const wxString& str)
+{
+ if ( m_log )
+ m_log->LogRequest(str);
+}
+
+void wxProtocol::LogResponse(const wxString& str)
+{
+ if ( m_log )
+ m_log->LogResponse(str);
+}
+
+void wxProtocolLog::DoLogString(const wxString& str)
+{
+ wxUnusedVar(str); // unused if wxLogTrace() is disabled
+ wxLogTrace(m_traceMask, "%s", str);
+}
+
#endif // wxUSE_PROTOCOL