Apache log4cxx Version 0.13.0
patternconverter.h
Go to the documentation of this file.
1/*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18#ifndef _LOG4CXX_PATTERN_PATTERN_CONVERTER_H
19#define _LOG4CXX_PATTERN_PATTERN_CONVERTER_H
20
21
23#include <log4cxx/logstring.h>
24#include <vector>
25
26#ifdef _MSC_VER
27 // disable identifier too wide for debugging warning
28 #pragma warning ( disable: 4231 4251 4275 4786 )
29#endif
30
31#define DECLARE_LOG4CXX_PATTERN(cls) DECLARE_ABSTRACT_LOG4CXX_OBJECT(cls)
32
33namespace log4cxx
34{
35namespace pattern
36{
37
38typedef std::vector<LogString> OptionsList;
39
50class LOG4CXX_EXPORT PatternConverter : public virtual log4cxx::helpers::Object
51{
52
56 const LogString name;
57
61 const LogString style;
62
63
64 protected:
71 const LogString& style);
72
74
75 public:
80
87 virtual void format(const log4cxx::helpers::ObjectPtr& obj,
88 LogString& toAppendTo,
89 log4cxx::helpers::Pool& p) const = 0;
90
99
110
111 protected:
117 static void append(LogString& toAppendTo, const std::string& src);
118};
119
120
122
123}
124}
125
126
127#endif
base class for java-like objects.
Definition: object.h:102
Definition: pool.h:33
Definition: patternconverter.h:51
LogString getName() const
This method returns the name of the conversion pattern.
static void append(LogString &toAppendTo, const std::string &src)
Appends content in the locale code page to a LogString.
virtual void format(const log4cxx::helpers::ObjectPtr &obj, LogString &toAppendTo, log4cxx::helpers::Pool &p) const =0
Formats an object into a string buffer.
DECLARE_LOG4CXX_PATTERN(PatternConverter)
LOG4CXX_CAST_ENTRY(PatternConverter)
PatternConverter(const LogString &name, const LogString &style)
Create a new pattern converter.
virtual LogString getStyleClass(const log4cxx::helpers::ObjectPtr &e) const
This method returns the CSS style class that should be applied to the LoggingEvent passed as paramete...
std::shared_ptr< Object > ObjectPtr
Definition: propertysetter.h:29
std::vector< LogString > OptionsList
Definition: patternconverter.h:38
LOG4CXX_PTR_DEF(DatePatternConverter)
Definition: messagehandler.h:23
std::basic_string< logchar > LogString
Definition: logstring.h:66