Author: afester Date: Tue May 2 11:58:16 2006 New Revision: 399014 URL: http://svn.apache.org/viewcvs?rev=399014&view=rev Log: LOGCXX-66: re-added syslogappender
Modified: logging/log4cxx/trunk/build.xml logging/log4cxx/trunk/configure.in logging/log4cxx/trunk/include/log4cxx/private/log4cxx_private.h.in logging/log4cxx/trunk/src/syslogappender.cpp logging/log4cxx/trunk/src/syslogwriter.cpp Modified: logging/log4cxx/trunk/build.xml URL: http://svn.apache.org/viewcvs/logging/log4cxx/trunk/build.xml?rev=399014&r1=399013&r2=399014&view=diff ============================================================================== --- logging/log4cxx/trunk/build.xml (original) +++ logging/log4cxx/trunk/build.xml Tue May 2 11:58:16 2006 @@ -420,8 +420,15 @@ replace="${logchar_is_wchar}"/> <replaceregexp file="${include.dir}/log4cxx/log4cxx.h" - match="#define LOG4CXX_HAS_WCHAR_T.*" - replace="#define LOG4CXX_HAS_WCHAR_T ${has.wchar_t}"/> + match="@HAS_WCHAR_T@" + replace="${has.wchar_t}"/> + + <!-- The MS Windows template for log4cxx_private.h contains a hard coded + "0" for LOG4CXX_HAVE_SYSLOG. Therefore the following replacement + only applies to the UNIX template. --> + <replaceregexp file="${include.dir}/log4cxx/private/log4cxx_private.h" + match="@HAS_SYSLOG@" + replace="1"/> </target> <target name="get-apr-module"> Modified: logging/log4cxx/trunk/configure.in URL: http://svn.apache.org/viewcvs/logging/log4cxx/trunk/configure.in?rev=399014&r1=399013&r2=399014&view=diff ============================================================================== --- logging/log4cxx/trunk/configure.in (original) +++ logging/log4cxx/trunk/configure.in Tue May 2 11:58:16 2006 @@ -154,9 +154,15 @@ AC_CHECK_FUNCS(swprintf) -# for SysLogAppender - -AC_CHECK_FUNCS(syslog) +# for local syslog() function for SyslogAppender +AC_CHECK_FUNCS(syslog, [have_syslog=yes], [have_syslog=no]) +if test "$have_syslog" = "yes" +then + AC_SUBST(HAS_SYSLOG, 1) +else + AC_SUBST(HAS_SYSLOG, 0) +fi + # Checks for libraries # ---------------------------------------------------------------------------- Modified: logging/log4cxx/trunk/include/log4cxx/private/log4cxx_private.h.in URL: http://svn.apache.org/viewcvs/logging/log4cxx/trunk/include/log4cxx/private/log4cxx_private.h.in?rev=399014&r1=399013&r2=399014&view=diff ============================================================================== --- logging/log4cxx/trunk/include/log4cxx/private/log4cxx_private.h.in (original) +++ logging/log4cxx/trunk/include/log4cxx/private/log4cxx_private.h.in Tue May 2 11:58:16 2006 @@ -54,6 +54,6 @@ // attempting creation of the corresponding appender. // #define LOG4CXX_HAVE_SMTP 0 -#define LOG4CXX_HAVE_SYSLOG 1 +#define LOG4CXX_HAVE_SYSLOG @HAS_SYSLOG@ #endif Modified: logging/log4cxx/trunk/src/syslogappender.cpp URL: http://svn.apache.org/viewcvs/logging/log4cxx/trunk/src/syslogappender.cpp?rev=399014&r1=399013&r2=399014&view=diff ============================================================================== --- logging/log4cxx/trunk/src/syslogappender.cpp (original) +++ logging/log4cxx/trunk/src/syslogappender.cpp Tue May 2 11:58:16 2006 @@ -21,6 +21,7 @@ #include <log4cxx/spi/loggingevent.h> #include <log4cxx/level.h> #include <log4cxx/helpers/transcoder.h> +#include <log4cxx/private/log4cxx_private.h> #ifdef LOG4CXX_HAVE_SYSLOG #include <syslog.h> Modified: logging/log4cxx/trunk/src/syslogwriter.cpp URL: http://svn.apache.org/viewcvs/logging/log4cxx/trunk/src/syslogwriter.cpp?rev=399014&r1=399013&r2=399014&view=diff ============================================================================== --- logging/log4cxx/trunk/src/syslogwriter.cpp (original) +++ logging/log4cxx/trunk/src/syslogwriter.cpp Tue May 2 11:58:16 2006 @@ -20,6 +20,7 @@ #include <log4cxx/helpers/datagramsocket.h> #include <log4cxx/helpers/datagrampacket.h> #include <log4cxx/helpers/socketimpl.h> +#include <log4cxx/helpers/transcoder.h> #define SYSLOG_PORT 514 @@ -50,18 +51,14 @@ } } -void SyslogWriter::write(const LogString&) -{ -#if 0 -// TODO - USES_CONVERSION; - const char * bytes = T2A(string.c_str()); - DatagramPacketPtr packet = new DatagramPacket((void *)bytes, string.length() + 1, - address, SYSLOG_PORT); +void SyslogWriter::write(const LogString& source) { + LOG4CXX_ENCODE_CHAR(data, source); - if(this->ds != 0) - { + DatagramPacketPtr packet = + new DatagramPacket((void*) data.c_str(), data.length() + 1, + address, SYSLOG_PORT); + + if(this->ds != 0) { ds->send(packet); } -#endif }