You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4cxx-dev@logging.apache.org by ca...@apache.org on 2007/10/02 03:32:29 UTC
svn commit: r581123 - in /logging/log4cxx/trunk: build.xml
src/main/cpp/messagebuffer.cpp
src/main/include/log4cxx/helpers/messagebuffer.h
Author: carnold
Date: Mon Oct 1 18:32:27 2007
New Revision: 581123
URL: http://svn.apache.org/viewvc?rev=581123&view=rev
Log:
LOGCXX-18: header-check fixes
Modified:
logging/log4cxx/trunk/build.xml
logging/log4cxx/trunk/src/main/cpp/messagebuffer.cpp
logging/log4cxx/trunk/src/main/include/log4cxx/helpers/messagebuffer.h
Modified: logging/log4cxx/trunk/build.xml
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/build.xml?rev=581123&r1=581122&r2=581123&view=diff
==============================================================================
--- logging/log4cxx/trunk/build.xml (original)
+++ logging/log4cxx/trunk/build.xml Mon Oct 1 18:32:27 2007
@@ -564,9 +564,9 @@
<mkdir dir="${build.dir}/header-check"/>
<copy todir="${build.dir}/header-check" overwrite="true">
<fileset dir="${include.dir}" includes="**/*.h">
- <exclude name="**/gnomexml.h"/>
+ <!-- obsolete header with #error directive to eliminate its use -->
<exclude name="**/tchar.h"/>
- <exclude name="**/config_msvc.h"/>
+ <!-- excluded due to conflict between log4cxx/rfa.h and log4cxx/rolling/rfa.h -->
<exclude name="log4cxx/rollingfileappender.h"/>
</fileset>
</copy>
@@ -588,7 +588,6 @@
<fileset dir="${build.dir}/header-check"
includes="**/*.cpp"
excludes="log4cxx/private/*.cpp **/aprinitializer.h.cpp"/>
- <includepath path="src/mock/include"/>
<includepath path="${include.dir}"/>
<project outfile="${project.dir}/header-check"
type="${project.type}" if="project.if"/>
Modified: logging/log4cxx/trunk/src/main/cpp/messagebuffer.cpp
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/src/main/cpp/messagebuffer.cpp?rev=581123&r1=581122&r2=581123&view=diff
==============================================================================
--- logging/log4cxx/trunk/src/main/cpp/messagebuffer.cpp (original)
+++ logging/log4cxx/trunk/src/main/cpp/messagebuffer.cpp Mon Oct 1 18:32:27 2007
@@ -69,23 +69,23 @@
CharMessageBuffer& MessageBuffer::operator<<(const std::string& msg) {
- return CharMessageBuffer::operator<<(msg);
+ return cbuf.operator<<(msg);
}
CharMessageBuffer& MessageBuffer::operator<<(const char* msg) {
- return CharMessageBuffer::operator<<(msg);
+ return cbuf.operator<<(msg);
}
CharMessageBuffer& MessageBuffer::operator<<(const char msg) {
- return CharMessageBuffer::operator<<(msg);
+ return cbuf.operator<<(msg);
}
const std::string& MessageBuffer::str(const CharMessageBuffer& msg) const {
- return CharMessageBuffer::str(msg);
+ return cbuf.str(msg);
}
std::string MessageBuffer::str(const std::ostream& msg) const {
- return CharMessageBuffer::str(msg);
+ return cbuf.str(msg);
}
Modified: logging/log4cxx/trunk/src/main/include/log4cxx/helpers/messagebuffer.h
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/src/main/include/log4cxx/helpers/messagebuffer.h?rev=581123&r1=581122&r2=581123&view=diff
==============================================================================
--- logging/log4cxx/trunk/src/main/include/log4cxx/helpers/messagebuffer.h (original)
+++ logging/log4cxx/trunk/src/main/include/log4cxx/helpers/messagebuffer.h Mon Oct 1 18:32:27 2007
@@ -20,7 +20,6 @@
#include <string>
#include <log4cxx/log4cxx.h>
-#include <ostream>
#include <sstream>
namespace log4cxx {
@@ -93,6 +92,14 @@
private:
/**
+ * Prevent use of default copy constructor.
+ */
+ CharMessageBuffer(const CharMessageBuffer&);
+ /**
+ * Prevent use of default assignment operator.
+ */
+ CharMessageBuffer& operator=(const CharMessageBuffer&);
+ /**
* Encapsulated std::string.
*/
std::string buf;
@@ -183,6 +190,14 @@
private:
/**
+ * Prevent use of default copy constructor.
+ */
+ WideMessageBuffer(const WideMessageBuffer&);
+ /**
+ * Prevent use of default assignment operator.
+ */
+ WideMessageBuffer& operator=(const WideMessageBuffer&);
+ /**
* Encapsulated std::wstring.
*/
std::wstring buf;
@@ -198,7 +213,20 @@
* macros to support insertion operators in the message parameter.
* The class is not intended for use outside of that context.
*/
- class LOG4CXX_EXPORT MessageBuffer : public CharMessageBuffer {
+ class LOG4CXX_EXPORT MessageBuffer {
+ private:
+ /**
+ * Prevent use of default copy constructor.
+ */
+ MessageBuffer(const MessageBuffer&);
+ /**
+ * Prevent use of default assignment operator.
+ */
+ MessageBuffer& operator=(const MessageBuffer&);
+ /**
+ * Character message buffer.
+ */
+ CharMessageBuffer cbuf;
public:
/**
* Creates a new instance.
@@ -257,7 +285,7 @@
*/
template<class T>
std::ostream& operator<<(T arg) {
- return CharMessageBuffer::operator<<(arg);
+ return cbuf.operator<<(arg);
}
@@ -300,8 +328,7 @@
* @return content of encapsulated std::wostringstream.
*/
std::wstring str(const std::wostream&) const;
-
- private:
+private:
/**
* Encapsulated wide message buffer, created on demand.
*/