carnold     2005/02/21 14:57:29

  Modified:    include/log4cxx/helpers namedpatternconverter.h
                        patternconverter.h patternparser.h
               src      cacheddateformat.cpp namedpatternconverter.cpp
                        patternconverter.cpp patternparser.cpp
               tests/src/pattern num343patternconverter.cpp
                        num343patternconverter.h
  Log:
  LOGCXX-49: Pattern parser rework, Linux iter
  
  Revision  Changes    Path
  1.2       +60 -60    
logging-log4cxx/include/log4cxx/helpers/namedpatternconverter.h
  
  Index: namedpatternconverter.h
  ===================================================================
  RCS file: 
/home/cvs/logging-log4cxx/include/log4cxx/helpers/namedpatternconverter.h,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- namedpatternconverter.h   21 Feb 2005 22:46:48 -0000      1.1
  +++ namedpatternconverter.h   21 Feb 2005 22:57:29 -0000      1.2
  @@ -1,60 +1,60 @@
  -/*
  - * Copyright 1999,2004 The Apache Software Foundation.
  - * 
  - * Licensed under the Apache License, Version 2.0 (the "License");
  - * you may not use this file except in compliance with the License.
  - * You may obtain a copy of the License at
  - * 
  - *      http://www.apache.org/licenses/LICENSE-2.0
  - * 
  - * Unless required by applicable law or agreed to in writing, software
  - * distributed under the License is distributed on an "AS IS" BASIS,
  - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  - * See the License for the specific language governing permissions and
  - * limitations under the License.
  - */
  -
  -#ifndef _LOG4CXX_HELPER_NAMED_PATTERN_CONVERTER_H
  -#define _LOG4CXX_HELPER_NAMED_PATTERN_CONVERTER_H
  -
  -#include <log4cxx/helpers/patternconverter.h>
  -#include <vector>
  -
  -namespace log4cxx {
  -    namespace helpers {
  -        /**
  -         * 
  -         * Base class for other pattern converters which can return only 
parts of their name.
  -         *  
  -         * @author Ceki G&uuml;lc&uuml;
  -         * @author Curt Arnold
  -         */
  -        class NamedPatternConverter : public PatternConverter {
  -        private:
  -          int precision;
  -        public:
  -          DECLARE_ABSTRACT_LOG4CXX_OBJECT(NamedPatternConverter)
  -          BEGIN_LOG4CXX_CAST_MAP()
  -                LOG4CXX_CAST_ENTRY(NamedPatternConverter)
  -          END_LOG4CXX_CAST_MAP()
  -
  -          NamedPatternConverter();
  -          NamedPatternConverter(const FormattingInfo& fi, const 
std::vector<LogString>& options);
  -          virtual void setOptions(const std::vector<LogString>& options);
  -
  -        protected:
  -            /**
  -             *  PatternConverter's virtual method.
  -             *
  -             */
  -            virtual void convert(LogString& sbuf,
  -                const log4cxx::spi::LoggingEventPtr& event,
  -                    log4cxx::helpers::Pool& pool) const;
  -
  -            virtual LogString getFullyQualifiedName(const 
log4cxx::spi::LoggingEventPtr& event) const = 0;
  -
  -        };
  -    }
  -}
  -
  -#endif
  \ No newline at end of file
  +/*
  + * Copyright 1999,2004 The Apache Software Foundation.
  + * 
  + * Licensed under the Apache License, Version 2.0 (the "License");
  + * you may not use this file except in compliance with the License.
  + * You may obtain a copy of the License at
  + * 
  + *      http://www.apache.org/licenses/LICENSE-2.0
  + * 
  + * Unless required by applicable law or agreed to in writing, software
  + * distributed under the License is distributed on an "AS IS" BASIS,
  + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  + * See the License for the specific language governing permissions and
  + * limitations under the License.
  + */
  +
  +#ifndef _LOG4CXX_HELPER_NAMED_PATTERN_CONVERTER_H
  +#define _LOG4CXX_HELPER_NAMED_PATTERN_CONVERTER_H
  +
  +#include <log4cxx/helpers/patternconverter.h>
  +#include <vector>
  +
  +namespace log4cxx {
  +    namespace helpers {
  +        /**
  +         * 
  +         * Base class for other pattern converters which can return only 
parts of their name.
  +         *  
  +         * @author Ceki G&uuml;lc&uuml;
  +         * @author Curt Arnold
  +         */
  +        class NamedPatternConverter : public PatternConverter {
  +        private:
  +          int precision;
  +        public:
  +          DECLARE_ABSTRACT_LOG4CXX_OBJECT(NamedPatternConverter)
  +          BEGIN_LOG4CXX_CAST_MAP()
  +                LOG4CXX_CAST_ENTRY(NamedPatternConverter)
  +          END_LOG4CXX_CAST_MAP()
  +
  +          NamedPatternConverter();
  +          NamedPatternConverter(const FormattingInfo& fi, const 
std::vector<LogString>& options);
  +          virtual void setOptions(const std::vector<LogString>& options);
  +
  +        protected:
  +            /**
  +             *  PatternConverter's virtual method.
  +             *
  +             */
  +            virtual void convert(LogString& sbuf,
  +                const log4cxx::spi::LoggingEventPtr& event,
  +                    log4cxx::helpers::Pool& pool) const;
  +
  +            virtual LogString getFullyQualifiedName(const 
log4cxx::spi::LoggingEventPtr& event) const = 0;
  +
  +        };
  +    }
  +}
  +
  +#endif
  
  
  
  1.18      +5 -5      
logging-log4cxx/include/log4cxx/helpers/patternconverter.h
  
  Index: patternconverter.h
  ===================================================================
  RCS file: 
/home/cvs/logging-log4cxx/include/log4cxx/helpers/patternconverter.h,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- patternconverter.h        21 Feb 2005 22:46:48 -0000      1.17
  +++ patternconverter.h        21 Feb 2005 22:57:29 -0000      1.18
  @@ -19,7 +19,7 @@
   
   #include <log4cxx/logstring.h>
   #include <log4cxx/helpers/objectptr.h>
  -#include <log4cxx/helpers/objectimpl.h>
  +#include <log4cxx/helpers/objectimpl.h>
   #include <vector>
   
   namespace log4cxx
  @@ -76,10 +76,10 @@
                           A template method for formatting in a converter 
specific way.
                           */
                           virtual void format(LogString& sbuf,
  -                            const spi::LoggingEventPtr& e, 
log4cxx::helpers::Pool& pool) const;
  -
  -                        void setFormattingInfo(const FormattingInfo&);
  -                        virtual void setOptions(const 
std::vector<LogString>& options);
  +                            const spi::LoggingEventPtr& e, 
log4cxx::helpers::Pool& pool) const;
  +
  +                        void setFormattingInfo(const FormattingInfo&);
  +                        virtual void setOptions(const 
std::vector<LogString>& options);
   
                   }; // class PatternConverter
           }  // namespace helpers
  
  
  
  1.22      +23 -23    logging-log4cxx/include/log4cxx/helpers/patternparser.h
  
  Index: patternparser.h
  ===================================================================
  RCS file: /home/cvs/logging-log4cxx/include/log4cxx/helpers/patternparser.h,v
  retrieving revision 1.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- patternparser.h   21 Feb 2005 22:46:48 -0000      1.21
  +++ patternparser.h   21 Feb 2005 22:57:29 -0000      1.22
  @@ -45,24 +45,24 @@
   
   #define END_DEFINE_PATTERN_CONVERTER(classname)          };
   
  -
  -#define DEFINE_NAMED_PATTERN_CONVERTER(classname)                   \
  -class LOG4CXX_EXPORT classname : public NamedPatternConverter {    \
  -public:                                                       \
  -classname(const FormattingInfo& formattingInfo,               \
  -          const std::vector<LogString>& options);             \
  -virtual LogString getFullyQualifiedName(                      \
  -    const spi::LoggingEventPtr& event) const;                 \
  -static PatternConverter* newInstance(                         \
  -          const FormattingInfo& formattingInfo,               \
  -          const std::vector<LogString>& options) {            \
  -          return new classname(formattingInfo, options);  }   \
  -private:                                                      \
  -classname(const classname&);                                  \
  -classname& operator=(const classname&);
  -
  -#define END_DEFINE_NAMED_PATTERN_CONVERTER(classname)          };
  -
  +
  +#define DEFINE_NAMED_PATTERN_CONVERTER(classname)                   \
  +class LOG4CXX_EXPORT classname : public NamedPatternConverter {    \
  +public:                                                       \
  +classname(const FormattingInfo& formattingInfo,               \
  +          const std::vector<LogString>& options);             \
  +virtual LogString getFullyQualifiedName(                      \
  +    const spi::LoggingEventPtr& event) const;                 \
  +static PatternConverter* newInstance(                         \
  +          const FormattingInfo& formattingInfo,               \
  +          const std::vector<LogString>& options) {            \
  +          return new classname(formattingInfo, options);  }   \
  +private:                                                      \
  +classname(const classname&);                                  \
  +classname& operator=(const classname&);
  +
  +#define END_DEFINE_NAMED_PATTERN_CONVERTER(classname)          };
  +
   
   namespace log4cxx
   {
  @@ -91,7 +91,7 @@
                        const FormattingInfo& info,
                        const std::vector<LogString>& options);
                   typedef std::map<LogString, PatternConverterFactory> 
InternalPatternConverterMap;
  -                typedef std::map<LogString, LogString> PatternConverterMap;
  +                typedef std::map<LogString, LogString> PatternConverterMap;
   
                   private:
                     enum {
  @@ -138,8 +138,8 @@
   
   
                   private:
  -                        PatternConverterPtr createConverter(const LogString& 
converterId,
  -                           const FormattingInfo& formattingInfo, 
  +                        PatternConverterPtr createConverter(const LogString& 
converterId,
  +                           const FormattingInfo& formattingInfo, 
                              const std::vector<LogString>& options) const;
   
                           void finalizeConverter(logchar c);
  @@ -228,7 +228,7 @@
   
   #undef DEFINE_PATTERN_CONVERTER
   #undef END_DEFINE_PATTERN_CONVERTER
  -#undef DEFINE_NAMED_PATTERN_CONVERTER
  -#undef END_DEFINE_NAMED_PATTERN_CONVERTER
  +#undef DEFINE_NAMED_PATTERN_CONVERTER
  +#undef END_DEFINE_NAMED_PATTERN_CONVERTER
   
   #endif //_LOG4CXX_HELPER_PATTERN_PARSER_H
  
  
  
  1.13      +1 -1      logging-log4cxx/src/cacheddateformat.cpp
  
  Index: cacheddateformat.cpp
  ===================================================================
  RCS file: /home/cvs/logging-log4cxx/src/cacheddateformat.cpp,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- cacheddateformat.cpp      21 Feb 2005 22:46:48 -0000      1.12
  +++ cacheddateformat.cpp      21 Feb 2005 22:57:29 -0000      1.13
  @@ -51,7 +51,7 @@
    *  Expected representation of 0 milliseconds.
    */
   const logchar* const CachedDateFormat::zeroString = LOG4CXX_STR("000");
  -
  +
   #undef min
   
   /**
  
  
  
  1.2       +72 -72    logging-log4cxx/src/namedpatternconverter.cpp
  
  Index: namedpatternconverter.cpp
  ===================================================================
  RCS file: /home/cvs/logging-log4cxx/src/namedpatternconverter.cpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- namedpatternconverter.cpp 21 Feb 2005 22:46:48 -0000      1.1
  +++ namedpatternconverter.cpp 21 Feb 2005 22:57:29 -0000      1.2
  @@ -1,72 +1,72 @@
  -/*
  - * Copyright 2003-2005 The Apache Software Foundation.
  - *
  - * Licensed under the Apache License, Version 2.0 (the "License");
  - * you may not use this file except in compliance with the License.
  - * You may obtain a copy of the License at
  - *
  - *      http://www.apache.org/licenses/LICENSE-2.0
  - *
  - * Unless required by applicable law or agreed to in writing, software
  - * distributed under the License is distributed on an "AS IS" BASIS,
  - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  - * See the License for the specific language governing permissions and
  - * limitations under the License.
  - */
  -
  -#include <log4cxx/helpers/namedpatternconverter.h>
  -#include <log4cxx/helpers/loglog.h>
  -#include <log4cxx/helpers/stringhelper.h>
  -
  -using namespace log4cxx;
  -using namespace log4cxx::helpers;
  -using namespace log4cxx::spi;
  -
  -IMPLEMENT_LOG4CXX_OBJECT(NamedPatternConverter)
  -
  -NamedPatternConverter::NamedPatternConverter(const FormattingInfo& fi, 
  -                                             const std::vector<LogString>& 
options) :
  -PatternConverter(fi), precision(0) {
  -    setOptions(options);
  -}
  -
  -void NamedPatternConverter::setOptions(const std::vector<LogString>& 
options) {
  -    if (options.size() > 0) {
  -        precision = StringHelper::toInt(options[0]);
  -        if (precision < 0) {
  -            LogString msg(LOG4CXX_STR("Precision options ("));
  -            msg += options[0];
  -            msg += LOG4CXX_STR(") isn't a positive integer.");
  -            LogLog::error(msg);
  -            precision = 0;
  -        }
  -    }
  -}
  -
  -
  -void NamedPatternConverter::convert(LogString& sbuf,
  -                const log4cxx::spi::LoggingEventPtr& event,
  -                log4cxx::helpers::Pool& pool) const {
  -    LogString n(getFullyQualifiedName(event));
  -    if (precision <= 0) {
  -        sbuf.append(n);
  -    } else {
  -        LogString::size_type len = n.length();
  -
  -        // We substract 1 from 'len' when assigning to 'end' to avoid out of
  -        // bounds exception in return r.substring(end+1, len). This can 
happen if
  -        // precision is 1 and the category name ends with a dot.
  -        LogString::size_type end = len -1 ;
  -        for(int i = precision; i > 0; i--)
  -        {
  -                end = n.rfind(LOG4CXX_STR('.'), end-1);
  -                if(end == LogString::npos)
  -                {
  -                        sbuf.append(n);
  -                        return;
  -                }
  -        }
  -        sbuf.append(n, end+1, len - (end+1));
  -    }
  -}
  -
  +/*
  + * Copyright 2003-2005 The Apache Software Foundation.
  + *
  + * Licensed under the Apache License, Version 2.0 (the "License");
  + * you may not use this file except in compliance with the License.
  + * You may obtain a copy of the License at
  + *
  + *      http://www.apache.org/licenses/LICENSE-2.0
  + *
  + * Unless required by applicable law or agreed to in writing, software
  + * distributed under the License is distributed on an "AS IS" BASIS,
  + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  + * See the License for the specific language governing permissions and
  + * limitations under the License.
  + */
  +
  +#include <log4cxx/helpers/namedpatternconverter.h>
  +#include <log4cxx/helpers/loglog.h>
  +#include <log4cxx/helpers/stringhelper.h>
  +
  +using namespace log4cxx;
  +using namespace log4cxx::helpers;
  +using namespace log4cxx::spi;
  +
  +IMPLEMENT_LOG4CXX_OBJECT(NamedPatternConverter)
  +
  +NamedPatternConverter::NamedPatternConverter(const FormattingInfo& fi, 
  +                                             const std::vector<LogString>& 
options) :
  +PatternConverter(fi), precision(0) {
  +    setOptions(options);
  +}
  +
  +void NamedPatternConverter::setOptions(const std::vector<LogString>& 
options) {
  +    if (options.size() > 0) {
  +        precision = StringHelper::toInt(options[0]);
  +        if (precision < 0) {
  +            LogString msg(LOG4CXX_STR("Precision options ("));
  +            msg += options[0];
  +            msg += LOG4CXX_STR(") isn't a positive integer.");
  +            LogLog::error(msg);
  +            precision = 0;
  +        }
  +    }
  +}
  +
  +
  +void NamedPatternConverter::convert(LogString& sbuf,
  +                const log4cxx::spi::LoggingEventPtr& event,
  +                log4cxx::helpers::Pool& pool) const {
  +    LogString n(getFullyQualifiedName(event));
  +    if (precision <= 0) {
  +        sbuf.append(n);
  +    } else {
  +        LogString::size_type len = n.length();
  +
  +        // We substract 1 from 'len' when assigning to 'end' to avoid out of
  +        // bounds exception in return r.substring(end+1, len). This can 
happen if
  +        // precision is 1 and the category name ends with a dot.
  +        LogString::size_type end = len -1 ;
  +        for(int i = precision; i > 0; i--)
  +        {
  +                end = n.rfind(LOG4CXX_STR('.'), end-1);
  +                if(end == LogString::npos)
  +                {
  +                        sbuf.append(n);
  +                        return;
  +                }
  +        }
  +        sbuf.append(n, end+1, len - (end+1));
  +    }
  +}
  +
  
  
  
  1.15      +8 -8      logging-log4cxx/src/patternconverter.cpp
  
  Index: patternconverter.cpp
  ===================================================================
  RCS file: /home/cvs/logging-log4cxx/src/patternconverter.cpp,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  --- patternconverter.cpp      21 Feb 2005 22:46:48 -0000      1.14
  +++ patternconverter.cpp      21 Feb 2005 22:57:29 -0000      1.15
  @@ -33,14 +33,14 @@
   {
   }
   
  -void PatternConverter::setFormattingInfo(const FormattingInfo& fi) {
  -    minChar = fi.minChar;
  -    maxChar = fi.maxChar;
  -    leftAlign = fi.leftAlign;
  -}
  -
  -void PatternConverter::setOptions(const std::vector<LogString>& options) {
  -}
  +void PatternConverter::setFormattingInfo(const FormattingInfo& fi) {
  +    minChar = fi.minChar;
  +    maxChar = fi.maxChar;
  +    leftAlign = fi.leftAlign;
  +}
  +
  +void PatternConverter::setOptions(const std::vector<LogString>& options) {
  +}
   
   /**
   A template method for formatting in a converter specific way.
  
  
  
  1.32      +70 -70    logging-log4cxx/src/patternparser.cpp
  
  Index: patternparser.cpp
  ===================================================================
  RCS file: /home/cvs/logging-log4cxx/src/patternparser.cpp,v
  retrieving revision 1.31
  retrieving revision 1.32
  diff -u -r1.31 -r1.32
  --- patternparser.cpp 21 Feb 2005 22:46:48 -0000      1.31
  +++ patternparser.cpp 21 Feb 2005 22:57:29 -0000      1.32
  @@ -36,9 +36,9 @@
   using namespace log4cxx::spi;
   using namespace log4cxx::pattern;
   
  -#define ESCAPE_CHAR LOG4CXX_STR('%')
  -
  -#define ADD_PATTERN(specifier, classname) \
  +#define ESCAPE_CHAR LOG4CXX_STR('%')
  +
  +#define ADD_PATTERN(specifier, classname) \
   
globalRulesRegistry.insert(InternalPatternConverterMap::value_type(LOG4CXX_STR(specifier),
 classname::newInstance))
   
   const PatternParser::InternalPatternConverterMap& 
PatternParser::getGlobalRulesRegistry() {
  @@ -323,22 +323,22 @@
     }
   
   PatternConverterPtr PatternParser::createConverter(
  -                                                  const LogString& 
converterId,
  -                                                  const FormattingInfo& 
formattingInfo, 
  +                                                  const LogString& 
converterId,
  +                                                  const FormattingInfo& 
formattingInfo, 
                                                     const 
std::vector<LogString>& options) const {
   
       PatternConverterMap::const_iterator r = 
converterRegistry.find(converterId);
  -    if(r != converterRegistry.end()) {
  -       const Class& converterClass = Class::forName(r->second);
  -       PatternConverterPtr converter = converterClass.newInstance();
  -       converter->setFormattingInfo(formattingInfo);
  -       converter->setOptions(options);
  -       return converter;
  +    if(r != converterRegistry.end()) {
  +       const Class& converterClass = Class::forName(r->second);
  +       PatternConverterPtr converter = converterClass.newInstance();
  +       converter->setFormattingInfo(formattingInfo);
  +       converter->setOptions(options);
  +       return converter;
       }
   
       InternalPatternConverterMap::const_iterator r2 = 
getGlobalRulesRegistry().find(converterId);
       if(r2 != getGlobalRulesRegistry().end()) {
  -       return (*r2->second)(formattingInfo, options);
  +       return (*r2->second)(formattingInfo, options);
       }
   
       return NULL;
  @@ -352,30 +352,30 @@
   void PatternParser::finalizeConverter(logchar c) {
     LogString converterId(extractConverter(c));
   
  -  std::vector<LogString> options(extractOptions());
  -  PatternConverterPtr pc;
  -  try {
  +  std::vector<LogString> options(extractOptions());
  +  PatternConverterPtr pc;
  +  try {
         pc = createConverter(converterId, formattingInfo, options);
  -      if (pc == NULL) {
  -        std::basic_ostringstream<logchar> os;
  -        if (converterId.empty()) {
  -            os << LOG4CXX_STR("Empty conversion specifier starting at 
position ");
  -        } else {
  -            os << LOG4CXX_STR("Unrecognized conversion specifier [")
  -               << converterId
  -               << LOG4CXX_STR("] starting at position ");
  -        }
  -        os << i << LOG4CXX_STR(" in conversion pattern.");
  -        logError(os.str());
  -        pc = new LiteralPatternConverter(currentLiteral);
  -      }
  -  } catch(ClassNotFoundException& ex) {
  -      LogString msg;
  -      Transcoder::decode(ex.what(), msg);
  -      logError(msg);
  -      pc = new LiteralPatternConverter(currentLiteral);
  -  }
  -  currentLiteral.erase(currentLiteral.begin(), currentLiteral.end());
  +      if (pc == NULL) {
  +        std::basic_ostringstream<logchar> os;
  +        if (converterId.empty()) {
  +            os << LOG4CXX_STR("Empty conversion specifier starting at 
position ");
  +        } else {
  +            os << LOG4CXX_STR("Unrecognized conversion specifier [")
  +               << converterId
  +               << LOG4CXX_STR("] starting at position ");
  +        }
  +        os << i << LOG4CXX_STR(" in conversion pattern.");
  +        logError(os.str());
  +        pc = new LiteralPatternConverter(currentLiteral);
  +      }
  +  } catch(ClassNotFoundException& ex) {
  +      LogString msg;
  +      Transcoder::decode(ex.what(), msg);
  +      logError(msg);
  +      pc = new LiteralPatternConverter(currentLiteral);
  +  }
  +  currentLiteral.erase(currentLiteral.begin(), currentLiteral.end());
     addConverter(pc);
   }
   
  @@ -573,38 +573,38 @@
   {
           const LocationInfo& locInfo = event->getLocationInformation();
           Transcoder::decode(locInfo.getFileName(), sbuf);
  -}
  -
  
-PatternParser::MethodLocationPatternConverter::MethodLocationPatternConverter(
  -    const FormattingInfo& formattingInfo,
  -    const std::vector<LogString>& opions)
  -: PatternConverter(formattingInfo)
  -{
  -}
  -
  -void PatternParser::MethodLocationPatternConverter::convert(LogString& sbuf,
  -        const spi::LoggingEventPtr& event, Pool& pool) const
  -{
  -        const LocationInfo& locInfo = event->getLocationInformation();
  -        Transcoder::decode(locInfo.getMethodName(), sbuf);
  -}
  -
  -
  -
  -PatternParser::ClassNamePatternConverter::ClassNamePatternConverter(const 
FormattingInfo&
  -        formattingInfo, const std::vector<LogString>& options)
  -: NamedPatternConverter(formattingInfo, options)
  -{
  -}
  -
  -LogString PatternParser::ClassNamePatternConverter::getFullyQualifiedName(
  -     const spi::LoggingEventPtr& event) const
  -{
  -    LogString sbuf;
  -    const LocationInfo& locInfo = event->getLocationInformation();
  -    Transcoder::decode(locInfo.getClassName(), sbuf);
  -    return sbuf;
  -}
  +}
  +
  
+PatternParser::MethodLocationPatternConverter::MethodLocationPatternConverter(
  +    const FormattingInfo& formattingInfo,
  +    const std::vector<LogString>& opions)
  +: PatternConverter(formattingInfo)
  +{
  +}
  +
  +void PatternParser::MethodLocationPatternConverter::convert(LogString& sbuf,
  +        const spi::LoggingEventPtr& event, Pool& pool) const
  +{
  +        const LocationInfo& locInfo = event->getLocationInformation();
  +        Transcoder::decode(locInfo.getMethodName(), sbuf);
  +}
  +
  +
  +
  +PatternParser::ClassNamePatternConverter::ClassNamePatternConverter(const 
FormattingInfo&
  +        formattingInfo, const std::vector<LogString>& options)
  +: NamedPatternConverter(formattingInfo, options)
  +{
  +}
  +
  +LogString PatternParser::ClassNamePatternConverter::getFullyQualifiedName(
  +     const spi::LoggingEventPtr& event) const
  +{
  +    LogString sbuf;
  +    const LocationInfo& locInfo = event->getLocationInformation();
  +    Transcoder::decode(locInfo.getClassName(), sbuf);
  +    return sbuf;
  +}
   
   
   
  @@ -615,10 +615,10 @@
   {
   }
   
  -LogString PatternParser::LoggerPatternConverter::getFullyQualifiedName(
  +LogString PatternParser::LoggerPatternConverter::getFullyQualifiedName(
        const spi::LoggingEventPtr& event) const
  -{
  -    return event->getLoggerName();
  +{
  +    return event->getLoggerName();
   }
   
   
  
  
  
  1.6       +3 -3      
logging-log4cxx/tests/src/pattern/num343patternconverter.cpp
  
  Index: num343patternconverter.cpp
  ===================================================================
  RCS file: 
/home/cvs/logging-log4cxx/tests/src/pattern/num343patternconverter.cpp,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- num343patternconverter.cpp        21 Feb 2005 22:46:48 -0000      1.5
  +++ num343patternconverter.cpp        21 Feb 2005 22:57:29 -0000      1.6
  @@ -18,9 +18,9 @@
   
   using namespace log4cxx;
   using namespace log4cxx::helpers;
  -using namespace log4cxx::pattern;
  -
  -IMPLEMENT_LOG4CXX_OBJECT(Num343PatternConverter)
  +using namespace log4cxx::pattern;
  +
  +IMPLEMENT_LOG4CXX_OBJECT(Num343PatternConverter)
   
   
   Num343PatternConverter::Num343PatternConverter() {
  
  
  
  1.8       +2 -2      
logging-log4cxx/tests/src/pattern/num343patternconverter.h
  
  Index: num343patternconverter.h
  ===================================================================
  RCS file: 
/home/cvs/logging-log4cxx/tests/src/pattern/num343patternconverter.h,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- num343patternconverter.h  21 Feb 2005 22:46:48 -0000      1.7
  +++ num343patternconverter.h  21 Feb 2005 22:57:29 -0000      1.8
  @@ -22,8 +22,8 @@
      namespace pattern {
        class Num343PatternConverter : public log4cxx::helpers::PatternConverter
        {
  -     public:
  -        DECLARE_LOG4CXX_OBJECT(Num343PatternConverter)
  +     public:
  +        DECLARE_LOG4CXX_OBJECT(Num343PatternConverter)
   
          Num343PatternConverter();
          static log4cxx::helpers::PatternConverter* newInstance(
  
  
  

Reply via email to