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/11/06 22:50:02 UTC
svn commit: r592567 - in /logging/log4cxx/trunk/src/main: cpp/
include/log4cxx/ include/log4cxx/pattern/ include/log4cxx/rolling/
include/log4cxx/spi/location/
Author: carnold
Date: Tue Nov 6 13:50:01 2007
New Revision: 592567
URL: http://svn.apache.org/viewvc?rev=592567&view=rev
Log:
LOGCXX-47: Effective C++ fixes, temporarily breaks logstream
Modified:
logging/log4cxx/trunk/src/main/cpp/fixedwindowrollingpolicy.cpp
logging/log4cxx/trunk/src/main/cpp/hierarchy.cpp
logging/log4cxx/trunk/src/main/cpp/logstream.cpp
logging/log4cxx/trunk/src/main/cpp/patternlayout.cpp
logging/log4cxx/trunk/src/main/cpp/timebasedrollingpolicy.cpp
logging/log4cxx/trunk/src/main/include/log4cxx/pattern/patternparser.h
logging/log4cxx/trunk/src/main/include/log4cxx/patternlayout.h
logging/log4cxx/trunk/src/main/include/log4cxx/provisionnode.h
logging/log4cxx/trunk/src/main/include/log4cxx/rolling/fixedwindowrollingpolicy.h
logging/log4cxx/trunk/src/main/include/log4cxx/rolling/rollingpolicybase.h
logging/log4cxx/trunk/src/main/include/log4cxx/rolling/timebasedrollingpolicy.h
logging/log4cxx/trunk/src/main/include/log4cxx/spi/location/locationinfo.h
logging/log4cxx/trunk/src/main/include/log4cxx/stream.h
Modified: logging/log4cxx/trunk/src/main/cpp/fixedwindowrollingpolicy.cpp
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/src/main/cpp/fixedwindowrollingpolicy.cpp?rev=592567&r1=592566&r2=592567&view=diff
==============================================================================
--- logging/log4cxx/trunk/src/main/cpp/fixedwindowrollingpolicy.cpp (original)
+++ logging/log4cxx/trunk/src/main/cpp/fixedwindowrollingpolicy.cpp Tue Nov 6 13:50:01 2007
@@ -277,20 +277,11 @@
}
-const log4cxx::pattern::PatternMap& FixedWindowRollingPolicy::getFormatSpecifiers() const {
- static FileNamePatternMap specs;
- return specs;
-}
-
-#define RULES_PUT(spec, cls) \
-insert(value_type(LOG4CXX_STR(spec), cls ::newInstance))
-
-
+using namespace log4cxx::pattern;
-FixedWindowRollingPolicy::FileNamePatternMap::FileNamePatternMap() {
- RULES_PUT("i", IntegerPatternConverter);
- RULES_PUT("index", IntegerPatternConverter);
+PatternMap FixedWindowRollingPolicy::getFormatSpecifiers() const {
+ PatternMap specs;
+ insertSpecifier<IntegerPatternConverter>(specs, LOG4CXX_STR("i"));
+ insertSpecifier<IntegerPatternConverter>(specs, LOG4CXX_STR("index"));
+ return specs;
}
-
-
-
Modified: logging/log4cxx/trunk/src/main/cpp/hierarchy.cpp
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/src/main/cpp/hierarchy.cpp?rev=592567&r1=592566&r2=592567&view=diff
==============================================================================
--- logging/log4cxx/trunk/src/main/cpp/hierarchy.cpp (original)
+++ logging/log4cxx/trunk/src/main/cpp/hierarchy.cpp Tue Nov 6 13:50:01 2007
@@ -340,7 +340,7 @@
else
{
//tcout << _T("Inserting ProvisionNode for ") << substr << std::endl;
- ProvisionNode node(logger);
+ ProvisionNode node(1, logger);
provisionNodes.insert(
ProvisionNodeMap::value_type(substr, node));
}
Modified: logging/log4cxx/trunk/src/main/cpp/logstream.cpp
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/src/main/cpp/logstream.cpp?rev=592567&r1=592566&r2=592567&view=diff
==============================================================================
--- logging/log4cxx/trunk/src/main/cpp/logstream.cpp (original)
+++ logging/log4cxx/trunk/src/main/cpp/logstream.cpp Tue Nov 6 13:50:01 2007
@@ -69,13 +69,6 @@
::log4cxx::logstream& operator<<(
::log4cxx::logstream& lhs,
- const ::log4cxx::spi::LocationFlush& rhs) {
- lhs.flush(rhs);
- return lhs;
-}
-
-::log4cxx::logstream& operator<<(
- ::log4cxx::logstream& lhs,
const ::log4cxx::LevelPtr& rhs) {
lhs.setLevel(rhs);
return lhs;
Modified: logging/log4cxx/trunk/src/main/cpp/patternlayout.cpp
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/src/main/cpp/patternlayout.cpp?rev=592567&r1=592566&r2=592567&view=diff
==============================================================================
--- logging/log4cxx/trunk/src/main/cpp/patternlayout.cpp (original)
+++ logging/log4cxx/trunk/src/main/cpp/patternlayout.cpp Tue Nov 6 13:50:01 2007
@@ -128,56 +128,53 @@
}
}
-#define RULES_PUT(spec, cls) \
-insert(value_type(LOG4CXX_STR(spec), cls ::newInstance))
-PatternLayout::PatternLayoutMap::PatternLayoutMap() {
- RULES_PUT("c", LoggerPatternConverter);
- RULES_PUT("logger", LoggerPatternConverter);
+using namespace log4cxx::pattern;
- RULES_PUT("C", ClassNamePatternConverter);
- RULES_PUT("class", ClassNamePatternConverter);
+PatternMap PatternLayout::getFormatSpecifiers() {
+ PatternMap specs;
+ insertSpecifier<LoggerPatternConverter>(specs, LOG4CXX_STR("c"));
+ insertSpecifier<LoggerPatternConverter>(specs, LOG4CXX_STR("logger"));
- RULES_PUT("d", DatePatternConverter);
- RULES_PUT("date", DatePatternConverter);
+ insertSpecifier<ClassNamePatternConverter>(specs, LOG4CXX_STR("C"));
+ insertSpecifier<ClassNamePatternConverter>(specs, LOG4CXX_STR("class"));
- RULES_PUT("F", FileLocationPatternConverter);
- RULES_PUT("file", FileLocationPatternConverter);
+ insertSpecifier<DatePatternConverter>(specs, LOG4CXX_STR("d"));
+ insertSpecifier<DatePatternConverter>(specs, LOG4CXX_STR("date"));
- RULES_PUT("l", FullLocationPatternConverter);
+ insertSpecifier<FileLocationPatternConverter>(specs, LOG4CXX_STR("F"));
+ insertSpecifier<FileLocationPatternConverter>(specs, LOG4CXX_STR("file"));
- RULES_PUT("L", LineLocationPatternConverter);
- RULES_PUT("line", LineLocationPatternConverter);
+ insertSpecifier<FullLocationPatternConverter>(specs, LOG4CXX_STR("l"));
- RULES_PUT("m", MessagePatternConverter);
- RULES_PUT("message", MessagePatternConverter);
+ insertSpecifier<LineLocationPatternConverter>(specs, LOG4CXX_STR("L"));
+ insertSpecifier<LineLocationPatternConverter>(specs, LOG4CXX_STR("line"));
- RULES_PUT("n", LineSeparatorPatternConverter);
+ insertSpecifier<MessagePatternConverter>(specs, LOG4CXX_STR("m"));
+ insertSpecifier<MessagePatternConverter>(specs, LOG4CXX_STR("message"));
- RULES_PUT("M", MethodLocationPatternConverter);
- RULES_PUT("method", MethodLocationPatternConverter);
+ insertSpecifier<LineSeparatorPatternConverter>(specs, LOG4CXX_STR("n"));
- RULES_PUT("p", LevelPatternConverter);
- RULES_PUT("level", LevelPatternConverter);
+ insertSpecifier<MethodLocationPatternConverter>(specs, LOG4CXX_STR("M"));
+ insertSpecifier<MethodLocationPatternConverter>(specs, LOG4CXX_STR("method"));
- RULES_PUT("r", RelativeTimePatternConverter);
- RULES_PUT("relative", RelativeTimePatternConverter);
+ insertSpecifier<LevelPatternConverter>(specs, LOG4CXX_STR("p"));
+ insertSpecifier<LevelPatternConverter>(specs, LOG4CXX_STR("level"));
- RULES_PUT("t", ThreadPatternConverter);
- RULES_PUT("thread", ThreadPatternConverter);
+ insertSpecifier<RelativeTimePatternConverter>(specs, LOG4CXX_STR("r"));
+ insertSpecifier<RelativeTimePatternConverter>(specs, LOG4CXX_STR("relative"));
- RULES_PUT("x", NDCPatternConverter);
- RULES_PUT("ndc", NDCPatternConverter);
+ insertSpecifier<ThreadPatternConverter>(specs, LOG4CXX_STR("t"));
+ insertSpecifier<ThreadPatternConverter>(specs, LOG4CXX_STR("thread"));
- RULES_PUT("X", PropertiesPatternConverter);
- RULES_PUT("properties", PropertiesPatternConverter);
+ insertSpecifier<NDCPatternConverter>(specs, LOG4CXX_STR("x"));
+ insertSpecifier<NDCPatternConverter>(specs, LOG4CXX_STR("ndc"));
- RULES_PUT("throwable", ThrowableInformationPatternConverter);
-}
+ insertSpecifier<PropertiesPatternConverter>(specs, LOG4CXX_STR("X"));
+ insertSpecifier<PropertiesPatternConverter>(specs, LOG4CXX_STR("properties"));
-const log4cxx::pattern::PatternMap& PatternLayout::getFormatSpecifiers() {
- static PatternLayoutMap map;
- return map;
+ insertSpecifier<ThrowableInformationPatternConverter>(specs, LOG4CXX_STR("throwable"));
+ return specs;
}
Modified: logging/log4cxx/trunk/src/main/cpp/timebasedrollingpolicy.cpp
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/src/main/cpp/timebasedrollingpolicy.cpp?rev=592567&r1=592566&r2=592567&view=diff
==============================================================================
--- logging/log4cxx/trunk/src/main/cpp/timebasedrollingpolicy.cpp (original)
+++ logging/log4cxx/trunk/src/main/cpp/timebasedrollingpolicy.cpp Tue Nov 6 13:50:01 2007
@@ -76,20 +76,15 @@
}
-const log4cxx::pattern::PatternMap& TimeBasedRollingPolicy::getFormatSpecifiers() const {
- static FileNamePatternMap specs;
+using namespace log4cxx::pattern;
+
+PatternMap TimeBasedRollingPolicy::getFormatSpecifiers() const {
+ PatternMap specs;
+ insertSpecifier<FileDatePatternConverter>(specs, LOG4CXX_STR("d"));
+ insertSpecifier<FileDatePatternConverter>(specs, LOG4CXX_STR("date"));
return specs;
}
-#define RULES_PUT(spec, cls) \
-insert(value_type(LOG4CXX_STR(spec), cls ::newInstance))
-
-
-
-TimeBasedRollingPolicy::FileNamePatternMap::FileNamePatternMap() {
- RULES_PUT("d", FileDatePatternConverter);
- RULES_PUT("date", FileDatePatternConverter);
-}
/**
* {@inheritDoc}
Modified: logging/log4cxx/trunk/src/main/include/log4cxx/pattern/patternparser.h
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/src/main/include/log4cxx/pattern/patternparser.h?rev=592567&r1=592566&r2=592567&view=diff
==============================================================================
--- logging/log4cxx/trunk/src/main/include/log4cxx/pattern/patternparser.h (original)
+++ logging/log4cxx/trunk/src/main/include/log4cxx/pattern/patternparser.h Tue Nov 6 13:50:01 2007
@@ -31,6 +31,11 @@
typedef PatternConverterPtr (*PatternConstructor)(const std::vector<LogString>& options);
typedef std::map<LogString, PatternConstructor> PatternMap;
+template<class Converter>
+void insertSpecifier(PatternMap& map, const LogString& specifier) {
+ map.insert(PatternMap::value_type(specifier, Converter::newInstance));
+}
+
// Contributors: Nelson Minar <(n...@monkey.org>
// Igor E. Poteryaev <ja...@mail.ru>
Modified: logging/log4cxx/trunk/src/main/include/log4cxx/patternlayout.h
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/src/main/include/log4cxx/patternlayout.h?rev=592567&r1=592566&r2=592567&view=diff
==============================================================================
--- logging/log4cxx/trunk/src/main/include/log4cxx/patternlayout.h (original)
+++ logging/log4cxx/trunk/src/main/include/log4cxx/patternlayout.h Tue Nov 6 13:50:01 2007
@@ -389,13 +389,7 @@
const spi::LoggingEventPtr& event, log4cxx::helpers::Pool& pool) const;
protected:
- virtual const log4cxx::pattern::PatternMap& getFormatSpecifiers();
-
- private:
- class PatternLayoutMap : public log4cxx::pattern::PatternMap {
- public:
- PatternLayoutMap();
- };
+ virtual log4cxx::pattern::PatternMap getFormatSpecifiers();
};
} // namespace log4cxx
Modified: logging/log4cxx/trunk/src/main/include/log4cxx/provisionnode.h
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/src/main/include/log4cxx/provisionnode.h?rev=592567&r1=592566&r2=592567&view=diff
==============================================================================
--- logging/log4cxx/trunk/src/main/include/log4cxx/provisionnode.h (original)
+++ logging/log4cxx/trunk/src/main/include/log4cxx/provisionnode.h Tue Nov 6 13:50:01 2007
@@ -27,14 +27,9 @@
class Logger;
typedef helpers::ObjectPtrT<Logger> LoggerPtr;
- class ProvisionNode : public std::vector<LoggerPtr>
- {
- public:
- ProvisionNode(const LoggerPtr& logger)
- {
- push_back(logger);
- }
- }; // class LogManager
+
+ typedef std::vector<LoggerPtr> ProvisionNode;
+
} // namespace log4cxx
#endif //_LOG4CXX_PROVISION_NODE_H
Modified: logging/log4cxx/trunk/src/main/include/log4cxx/rolling/fixedwindowrollingpolicy.h
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/src/main/include/log4cxx/rolling/fixedwindowrollingpolicy.h?rev=592567&r1=592566&r2=592567&view=diff
==============================================================================
--- logging/log4cxx/trunk/src/main/include/log4cxx/rolling/fixedwindowrollingpolicy.h (original)
+++ logging/log4cxx/trunk/src/main/include/log4cxx/rolling/fixedwindowrollingpolicy.h Tue Nov 6 13:50:01 2007
@@ -128,13 +128,7 @@
virtual RolloverDescriptionPtr rollover(const LogString& activeFile, log4cxx::helpers::Pool& p);
protected:
- const log4cxx::pattern::PatternMap& getFormatSpecifiers() const;
-
-private:
- class FileNamePatternMap : public log4cxx::pattern::PatternMap {
- public:
- FileNamePatternMap();
- };
+ log4cxx::pattern::PatternMap getFormatSpecifiers() const;
};
Modified: logging/log4cxx/trunk/src/main/include/log4cxx/rolling/rollingpolicybase.h
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/src/main/include/log4cxx/rolling/rollingpolicybase.h?rev=592567&r1=592566&r2=592567&view=diff
==============================================================================
--- logging/log4cxx/trunk/src/main/include/log4cxx/rolling/rollingpolicybase.h (original)
+++ logging/log4cxx/trunk/src/main/include/log4cxx/rolling/rollingpolicybase.h Tue Nov 6 13:50:01 2007
@@ -70,7 +70,7 @@
* {@inheritDoc}
*/
virtual void activateOptions(log4cxx::helpers::Pool& p) = 0;
- virtual const log4cxx::pattern::PatternMap& getFormatSpecifiers() const = 0;
+ virtual log4cxx::pattern::PatternMap getFormatSpecifiers() const = 0;
virtual void setOption(const LogString& option,
const LogString& value);
Modified: logging/log4cxx/trunk/src/main/include/log4cxx/rolling/timebasedrollingpolicy.h
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/src/main/include/log4cxx/rolling/timebasedrollingpolicy.h?rev=592567&r1=592566&r2=592567&view=diff
==============================================================================
--- logging/log4cxx/trunk/src/main/include/log4cxx/rolling/timebasedrollingpolicy.h (original)
+++ logging/log4cxx/trunk/src/main/include/log4cxx/rolling/timebasedrollingpolicy.h Tue Nov 6 13:50:01 2007
@@ -210,13 +210,7 @@
size_t fileLength);
protected:
- const log4cxx::pattern::PatternMap& getFormatSpecifiers() const;
-
- private:
- class FileNamePatternMap : public log4cxx::pattern::PatternMap {
- public:
- FileNamePatternMap();
- };
+ log4cxx::pattern::PatternMap getFormatSpecifiers() const;
};
Modified: logging/log4cxx/trunk/src/main/include/log4cxx/spi/location/locationinfo.h
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/src/main/include/log4cxx/spi/location/locationinfo.h?rev=592567&r1=592566&r2=592567&view=diff
==============================================================================
--- logging/log4cxx/trunk/src/main/include/log4cxx/spi/location/locationinfo.h (original)
+++ logging/log4cxx/trunk/src/main/include/log4cxx/spi/location/locationinfo.h Tue Nov 6 13:50:01 2007
@@ -108,23 +108,6 @@
};
-
-
- class LOG4CXX_EXPORT LocationFlush : public LocationInfo {
- public:
- /**
- * Constructor.
- * @remarks Used by LOG4CXX_LOCATION_FLUSH to generate
- * location info for current code site and
- * flush a logging stream
- */
- LocationFlush( const char * const fileName1,
- const char * const methodName1,
- int lineNumber1 )
- : LocationInfo( fileName1, methodName1, lineNumber1 ) {
- }
-
- };
}
}
@@ -142,9 +125,6 @@
#define __LOG4CXX_FUNC__ ""
#endif
#define LOG4CXX_LOCATION ::log4cxx::spi::LocationInfo(__FILE__, \
- __LOG4CXX_FUNC__, \
- __LINE__)
- #define LOG4CXX_LOCATION_FLUSH ::log4cxx::spi::LocationFlush(__FILE__, \
__LOG4CXX_FUNC__, \
__LINE__)
#endif
Modified: logging/log4cxx/trunk/src/main/include/log4cxx/stream.h
URL: http://svn.apache.org/viewvc/logging/log4cxx/trunk/src/main/include/log4cxx/stream.h?rev=592567&r1=592566&r2=592567&view=diff
==============================================================================
--- logging/log4cxx/trunk/src/main/include/log4cxx/stream.h (original)
+++ logging/log4cxx/trunk/src/main/include/log4cxx/stream.h Tue Nov 6 13:50:01 2007
@@ -164,11 +164,6 @@
LOG4CXX_EXPORT ::log4cxx::logstream& operator<<(
::log4cxx::logstream& lhs,
- const ::log4cxx::spi::LocationFlush& rhs);
-
-
-LOG4CXX_EXPORT ::log4cxx::logstream& operator<<(
- ::log4cxx::logstream& lhs,
const ::log4cxx::LevelPtr& rhs);