LibreOffice Module comphelper (master)  1
logging.hxx
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  *
9  * This file incorporates work covered by the following license notice:
10  *
11  * Licensed to the Apache Software Foundation (ASF) under one or more
12  * contributor license agreements. See the NOTICE file distributed
13  * with this work for additional information regarding copyright
14  * ownership. The ASF licenses this file to you under the Apache
15  * License, Version 2.0 (the "License"); you may not use this file
16  * except in compliance with the License. You may obtain a copy of
17  * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18  */
19 
20 #ifndef INCLUDED_COMPHELPER_LOGGING_HXX
21 #define INCLUDED_COMPHELPER_LOGGING_HXX
22 
24 #include <rtl/ustring.hxx>
25 
26 #include <boost/optional.hpp>
27 #include <memory>
28 
29 namespace com::sun::star::uno { template <class interface_type> class Reference; }
30 namespace com::sun::star::uno { class XComponentContext; }
31 namespace com::sun::star::logging { class XLogger; }
32 
33 namespace comphelper
34 {
35 
36 
37  //= string conversions, employed by the templatized log* members of
38  //= EventLogger
39 
40 
41  namespace log { namespace convert
42  {
43  inline const OUString& convertLogArgToString( const OUString& _rValue )
44  {
45  return _rValue;
46  }
47 
48  inline OUString convertLogArgToString( const sal_Char* _pAsciiValue )
49  {
50  return OUString::createFromAscii( _pAsciiValue );
51  }
52 
53  inline OUString convertLogArgToString( double _nValue ) { return OUString::number( _nValue ); }
54  inline OUString convertLogArgToString( float _nValue ) { return OUString::number( _nValue ); }
55  inline OUString convertLogArgToString( sal_Int64 _nValue ) { return OUString::number( _nValue ); }
56  inline OUString convertLogArgToString( sal_Int32 _nValue ) { return OUString::number( _nValue ); }
57  inline OUString convertLogArgToString( sal_Int16 _nValue ) { return OUString::number( _nValue ); }
58  inline OUString convertLogArgToString( sal_Unicode _nValue ) { return OUString( _nValue ); }
59  inline OUString convertLogArgToString( bool _bValue ) { return OUString::boolean( _bValue ); }
60  void convertLogArgToString(sal_Bool) = delete;
61 
62  } } // namespace log::convert
63 
64 
65  //= EventLogger
66 
68  typedef ::boost::optional< OUString > OptionalString;
69 
93  {
94  protected:
95  std::shared_ptr< EventLogger_Impl > m_pImpl;
96 
97  public:
107  EventLogger(
108  const css::uno::Reference< css::uno::XComponentContext >& _rxContext,
109  const sal_Char* _pAsciiLoggerName
110  );
111 
112  public:
114  bool isLoggable( const sal_Int32 _nLogLevel ) const;
115 
116 
117  //- XLogger::log equivalents/wrappers
118  //- string messages
119 
121  void log( const sal_Int32 _nLogLevel, const OUString& rMessage ) const
122  {
123  if ( isLoggable( _nLogLevel ) )
124  impl_log(_nLogLevel, nullptr, nullptr, rMessage);
125  }
126 
127  const css::uno::Reference<css::logging::XLogger> & getLogger() const;
128 
136  template< typename ARGTYPE1 >
137  void log( const sal_Int32 _nLogLevel, const OUString& _rMessage, ARGTYPE1 _argument1 ) const
138  {
139  if ( isLoggable( _nLogLevel ) )
140  impl_log( _nLogLevel, nullptr, nullptr, _rMessage,
142  }
143 
145  template< typename ARGTYPE1, typename ARGTYPE2 >
146  void log( const sal_Int32 _nLogLevel, const OUString& _rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2 ) const
147  {
148  if ( isLoggable( _nLogLevel ) )
149  impl_log( _nLogLevel, nullptr, nullptr, _rMessage,
152  }
153 
155  template< typename ARGTYPE1, typename ARGTYPE2, typename ARGTYPE3 >
156  void log( const sal_Int32 _nLogLevel, const OUString& _rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3 ) const
157  {
158  if ( isLoggable( _nLogLevel ) )
159  impl_log( _nLogLevel, nullptr, nullptr, _rMessage,
163  }
164 
166  template< typename ARGTYPE1, typename ARGTYPE2, typename ARGTYPE3, typename ARGTYPE4 >
167  void log( const sal_Int32 _nLogLevel, const OUString& _rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4 ) const
168  {
169  if ( isLoggable( _nLogLevel ) )
170  impl_log( _nLogLevel, nullptr, nullptr, _rMessage,
175  }
176 
178  template< typename ARGTYPE1, typename ARGTYPE2, typename ARGTYPE3, typename ARGTYPE4, typename ARGTYPE5 >
179  void log( const sal_Int32 _nLogLevel, const OUString& _rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4, ARGTYPE5 _argument5 ) const
180  {
181  if ( isLoggable( _nLogLevel ) )
182  impl_log( _nLogLevel, nullptr, nullptr, _rMessage,
188  }
189 
191  template< typename ARGTYPE1, typename ARGTYPE2, typename ARGTYPE3, typename ARGTYPE4, typename ARGTYPE5, typename ARGTYPE6 >
192  void log( const sal_Int32 _nLogLevel, const OUString& _rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4, ARGTYPE5 _argument5, ARGTYPE6 _argument6 ) const
193  {
194  if ( isLoggable( _nLogLevel ) )
195  impl_log( _nLogLevel, nullptr, nullptr, _rMessage,
202  }
203 
204 
205  //- XLogger::log equivalents/wrappers
206  //- ASCII messages
207 
215  template< typename ARGTYPE1 >
216  void log( const sal_Int32 _nLogLevel, const sal_Char* _pMessage, ARGTYPE1 _argument1 ) const
217  {
218  if ( isLoggable( _nLogLevel ) )
219  impl_log( _nLogLevel, nullptr, nullptr, OUString::createFromAscii( _pMessage ),
221  }
222 
224  template< typename ARGTYPE1, typename ARGTYPE2 >
225  void log( const sal_Int32 _nLogLevel, const sal_Char* _pMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2 ) const
226  {
227  if ( isLoggable( _nLogLevel ) )
228  impl_log( _nLogLevel, nullptr, nullptr, OUString::createFromAscii( _pMessage ),
231  }
232 
234  template< typename ARGTYPE1, typename ARGTYPE2, typename ARGTYPE3 >
235  void log( const sal_Int32 _nLogLevel, const sal_Char* _pMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3 ) const
236  {
237  if ( isLoggable( _nLogLevel ) )
238  impl_log( _nLogLevel, nullptr, nullptr, OUString::createFromAscii( _pMessage ),
242  }
243 
245  template< typename ARGTYPE1, typename ARGTYPE2, typename ARGTYPE3, typename ARGTYPE4 >
246  void log( const sal_Int32 _nLogLevel, const sal_Char* _pMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4 ) const
247  {
248  if ( isLoggable( _nLogLevel ) )
249  impl_log( _nLogLevel, nullptr, nullptr, OUString::createFromAscii( _pMessage ),
254  }
255 
257  template< typename ARGTYPE1, typename ARGTYPE2, typename ARGTYPE3, typename ARGTYPE4, typename ARGTYPE5 >
258  void log( const sal_Int32 _nLogLevel, const sal_Char* _pMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4, ARGTYPE5 _argument5 ) const
259  {
260  if ( isLoggable( _nLogLevel ) )
261  impl_log( _nLogLevel, nullptr, nullptr, OUString::createFromAscii( _pMessage ),
267  }
268 
270  template< typename ARGTYPE1, typename ARGTYPE2, typename ARGTYPE3, typename ARGTYPE4, typename ARGTYPE5, typename ARGTYPE6 >
271  void log( const sal_Int32 _nLogLevel, const sal_Char* _pMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4, ARGTYPE5 _argument5, ARGTYPE6 _argument6 ) const
272  {
273  if ( isLoggable( _nLogLevel ) )
274  impl_log( _nLogLevel, nullptr, nullptr, OUString::createFromAscii( _pMessage ),
281  }
282 
283 
284  //- XLogger::logp equivalents/wrappers
285  //- string messages
286 
294  template< typename ARGTYPE1 >
295  void logp( const sal_Int32 _nLogLevel, const sal_Char* _pSourceClass, const sal_Char* _pSourceMethod, const OUString& _rMessage, ARGTYPE1 _argument1 ) const
296  {
297  if ( isLoggable( _nLogLevel ) )
298  impl_log( _nLogLevel, _pSourceClass, _pSourceMethod, _rMessage,
300  }
301 
303  template< typename ARGTYPE1, typename ARGTYPE2 >
304  void logp( const sal_Int32 _nLogLevel, const sal_Char* _pSourceClass, const sal_Char* _pSourceMethod, const OUString& _rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2 ) const
305  {
306  if ( isLoggable( _nLogLevel ) )
307  impl_log( _nLogLevel, _pSourceClass, _pSourceMethod, _rMessage,
310  }
311 
313  template< typename ARGTYPE1, typename ARGTYPE2, typename ARGTYPE3 >
314  void logp( const sal_Int32 _nLogLevel, const sal_Char* _pSourceClass, const sal_Char* _pSourceMethod, const OUString& _rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3 ) const
315  {
316  if ( isLoggable( _nLogLevel ) )
317  impl_log( _nLogLevel, _pSourceClass, _pSourceMethod, _rMessage,
321  }
322 
324  template< typename ARGTYPE1, typename ARGTYPE2, typename ARGTYPE3, typename ARGTYPE4 >
325  void logp( const sal_Int32 _nLogLevel, const sal_Char* _pSourceClass, const sal_Char* _pSourceMethod, const OUString& _rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4 ) const
326  {
327  if ( isLoggable( _nLogLevel ) )
328  impl_log( _nLogLevel, _pSourceClass, _pSourceMethod, _rMessage,
333  }
334 
336  template< typename ARGTYPE1, typename ARGTYPE2, typename ARGTYPE3, typename ARGTYPE4, typename ARGTYPE5 >
337  void logp( const sal_Int32 _nLogLevel, const sal_Char* _pSourceClass, const sal_Char* _pSourceMethod, const OUString& _rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4, ARGTYPE5 _argument5 ) const
338  {
339  if ( isLoggable( _nLogLevel ) )
340  impl_log( _nLogLevel, _pSourceClass, _pSourceMethod, _rMessage,
346  }
347 
349  template< typename ARGTYPE1, typename ARGTYPE2, typename ARGTYPE3, typename ARGTYPE4, typename ARGTYPE5, typename ARGTYPE6 >
350  void logp( const sal_Int32 _nLogLevel, const sal_Char* _pSourceClass, const sal_Char* _pSourceMethod, const OUString& _rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4, ARGTYPE5 _argument5, ARGTYPE6 _argument6 ) const
351  {
352  if ( isLoggable( _nLogLevel ) )
353  impl_log( _nLogLevel, _pSourceClass, _pSourceMethod, _rMessage,
360  }
361 
362 
363  //- XLogger::logp equivalents/wrappers
364  //- ASCII messages
365 
373  template< typename ARGTYPE1 >
374  void logp( const sal_Int32 _nLogLevel, const sal_Char* _pSourceClass, const sal_Char* _pSourceMethod, const sal_Char* _pAsciiMessage, ARGTYPE1 _argument1 ) const
375  {
376  if ( isLoggable( _nLogLevel ) )
377  impl_log( _nLogLevel, _pSourceClass, _pSourceMethod, OUString::createFromAscii( _pAsciiMessage ),
379  }
380 
382  template< typename ARGTYPE1, typename ARGTYPE2 >
383  void logp( const sal_Int32 _nLogLevel, const sal_Char* _pSourceClass, const sal_Char* _pSourceMethod, const sal_Char* _pAsciiMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2 ) const
384  {
385  if ( isLoggable( _nLogLevel ) )
386  impl_log( _nLogLevel, _pSourceClass, _pSourceMethod, OUString::createFromAscii( _pAsciiMessage ),
389  }
390 
392  template< typename ARGTYPE1, typename ARGTYPE2, typename ARGTYPE3 >
393  void logp( const sal_Int32 _nLogLevel, const sal_Char* _pSourceClass, const sal_Char* _pSourceMethod, const sal_Char* _pAsciiMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3 ) const
394  {
395  if ( isLoggable( _nLogLevel ) )
396  impl_log( _nLogLevel, _pSourceClass, _pSourceMethod, OUString::createFromAscii( _pAsciiMessage ),
400  }
401 
403  template< typename ARGTYPE1, typename ARGTYPE2, typename ARGTYPE3, typename ARGTYPE4 >
404  void logp( const sal_Int32 _nLogLevel, const sal_Char* _pSourceClass, const sal_Char* _pSourceMethod, const sal_Char* _pAsciiMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4 ) const
405  {
406  if ( isLoggable( _nLogLevel ) )
407  impl_log( _nLogLevel, _pSourceClass, _pSourceMethod, OUString::createFromAscii( _pAsciiMessage ),
412  }
413 
415  template< typename ARGTYPE1, typename ARGTYPE2, typename ARGTYPE3, typename ARGTYPE4, typename ARGTYPE5 >
416  void logp( const sal_Int32 _nLogLevel, const sal_Char* _pSourceClass, const sal_Char* _pSourceMethod, const sal_Char* _pAsciiMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4, ARGTYPE5 _argument5 ) const
417  {
418  if ( isLoggable( _nLogLevel ) )
419  impl_log( _nLogLevel, _pSourceClass, _pSourceMethod, OUString::createFromAscii( _pAsciiMessage ),
425  }
426 
428  template< typename ARGTYPE1, typename ARGTYPE2, typename ARGTYPE3, typename ARGTYPE4, typename ARGTYPE5, typename ARGTYPE6 >
429  void logp( const sal_Int32 _nLogLevel, const sal_Char* _pSourceClass, const sal_Char* _pSourceMethod, const sal_Char* _pAsciiMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4, ARGTYPE5 _argument5, ARGTYPE6 _argument6 ) const
430  {
431  if ( isLoggable( _nLogLevel ) )
432  impl_log( _nLogLevel, _pSourceClass, _pSourceMethod, OUString::createFromAscii( _pAsciiMessage ),
439  }
440 
441  protected:
442  void impl_log(
443  const sal_Int32 _nLogLevel,
444  const sal_Char* _pSourceClass,
445  const sal_Char* _pSourceMethod,
446  const OUString& _rMessage,
447  const OptionalString& _rArgument1 = OptionalString(),
448  const OptionalString& _rArgument2 = OptionalString(),
449  const OptionalString& _rArgument3 = OptionalString(),
450  const OptionalString& _rArgument4 = OptionalString(),
451  const OptionalString& _rArgument5 = OptionalString(),
452  const OptionalString& _rArgument6 = OptionalString()
453  ) const;
454  };
455 } // namespace comphelper
456 
457 
458 #endif // INCLUDED_COMPHELPER_LOGGING_HXX
459 
460 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
void logp(const sal_Int32 _nLogLevel, const sal_Char *_pSourceClass, const sal_Char *_pSourceMethod, const OUString &_rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4, ARGTYPE5 _argument5, ARGTYPE6 _argument6) const
logs a given message, replacing 6 placeholders in the message with respective values ...
Definition: logging.hxx:350
void logp(const sal_Int32 _nLogLevel, const sal_Char *_pSourceClass, const sal_Char *_pSourceMethod, const OUString &_rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4) const
logs a given message, replacing 4 placeholders in the message with respective values ...
Definition: logging.hxx:325
void log(const sal_Int32 _nLogLevel, const OUString &_rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2) const
logs a given message, replacing 2 placeholders in the message with respective values ...
Definition: logging.hxx:146
void logp(const sal_Int32 _nLogLevel, const sal_Char *_pSourceClass, const sal_Char *_pSourceMethod, const sal_Char *_pAsciiMessage, ARGTYPE1 _argument1) const
logs a given ASCII message, replacing a placeholder in the message with an argument ...
Definition: logging.hxx:374
encapsulates a css::logging::XLogger
Definition: logging.hxx:92
void log(const sal_Int32 _nLogLevel, const sal_Char *_pMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4) const
logs a given message, replacing 4 placeholders in the message with respective values ...
Definition: logging.hxx:246
void log(const sal_Int32 _nLogLevel, const OUString &rMessage) const
logs a given message, without any arguments, or source class/method names
Definition: logging.hxx:121
void log(const sal_Int32 _nLogLevel, const OUString &_rMessage, ARGTYPE1 _argument1) const
logs a given message, replacing a placeholder in the message with an argument
Definition: logging.hxx:137
Reference
void log(const sal_Int32 _nLogLevel, const sal_Char *_pMessage, ARGTYPE1 _argument1) const
logs a given message, replacing a placeholder in the message with an argument
Definition: logging.hxx:216
void log(const sal_Int32 _nLogLevel, const sal_Char *_pMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4, ARGTYPE5 _argument5, ARGTYPE6 _argument6) const
logs a given message, replacing 6 placeholders in the message with respective values ...
Definition: logging.hxx:271
void log(const sal_Int32 _nLogLevel, const OUString &_rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4, ARGTYPE5 _argument5) const
logs a given message, replacing 5 placeholders in the message with respective values ...
Definition: logging.hxx:179
std::shared_ptr< EventLogger_Impl > m_pImpl
Definition: logging.hxx:95
void log(const sal_Int32 _nLogLevel, const sal_Char *_pMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4, ARGTYPE5 _argument5) const
logs a given message, replacing 5 placeholders in the message with respective values ...
Definition: logging.hxx:258
void logp(const sal_Int32 _nLogLevel, const sal_Char *_pSourceClass, const sal_Char *_pSourceMethod, const sal_Char *_pAsciiMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4, ARGTYPE5 _argument5) const
logs a given ASCII message, replacing 5 placeholders in the message with respective values ...
Definition: logging.hxx:416
tuple log
sal_uInt16 sal_Unicode
char sal_Char
void log(const sal_Int32 _nLogLevel, const sal_Char *_pMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3) const
logs a given message, replacing 3 placeholders in the message with respective values ...
Definition: logging.hxx:235
void logp(const sal_Int32 _nLogLevel, const sal_Char *_pSourceClass, const sal_Char *_pSourceMethod, const sal_Char *_pAsciiMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3) const
logs a given ASCII message, replacing 3 placeholders in the message with respective values ...
Definition: logging.hxx:393
void log(const sal_Int32 _nLogLevel, const OUString &_rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3) const
logs a given message, replacing 3 placeholders in the message with respective values ...
Definition: logging.hxx:156
void logp(const sal_Int32 _nLogLevel, const sal_Char *_pSourceClass, const sal_Char *_pSourceMethod, const sal_Char *_pAsciiMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4, ARGTYPE5 _argument5, ARGTYPE6 _argument6) const
logs a given ASCII message, replacing 6 placeholders in the message with respective values ...
Definition: logging.hxx:429
void logp(const sal_Int32 _nLogLevel, const sal_Char *_pSourceClass, const sal_Char *_pSourceMethod, const sal_Char *_pAsciiMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4) const
logs a given ASCII message, replacing 4 placeholders in the message with respective values ...
Definition: logging.hxx:404
void log(const sal_Int32 _nLogLevel, const sal_Char *_pMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2) const
logs a given message, replacing 2 placeholders in the message with respective values ...
Definition: logging.hxx:225
void log(const sal_Int32 _nLogLevel, const OUString &_rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4, ARGTYPE5 _argument5, ARGTYPE6 _argument6) const
logs a given message, replacing 6 placeholders in the message with respective values ...
Definition: logging.hxx:192
void log(const sal_Int32 _nLogLevel, const OUString &_rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4) const
logs a given message, replacing 4 placeholders in the message with respective values ...
Definition: logging.hxx:167
void logp(const sal_Int32 _nLogLevel, const sal_Char *_pSourceClass, const sal_Char *_pSourceMethod, const OUString &_rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2) const
logs a given message, replacing 2 placeholders in the message with respective values ...
Definition: logging.hxx:304
unsigned char sal_Bool
void logp(const sal_Int32 _nLogLevel, const sal_Char *_pSourceClass, const sal_Char *_pSourceMethod, const OUString &_rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3) const
logs a given message, replacing 3 placeholders in the message with respective values ...
Definition: logging.hxx:314
convert
::boost::optional< OUString > OptionalString
Definition: logging.hxx:67
void logp(const sal_Int32 _nLogLevel, const sal_Char *_pSourceClass, const sal_Char *_pSourceMethod, const OUString &_rMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2, ARGTYPE3 _argument3, ARGTYPE4 _argument4, ARGTYPE5 _argument5) const
logs a given message, replacing 5 placeholders in the message with respective values ...
Definition: logging.hxx:337
#define COMPHELPER_DLLPUBLIC
void logp(const sal_Int32 _nLogLevel, const sal_Char *_pSourceClass, const sal_Char *_pSourceMethod, const sal_Char *_pAsciiMessage, ARGTYPE1 _argument1, ARGTYPE2 _argument2) const
logs a given ASCII message, replacing 2 placeholders in the message with respective values ...
Definition: logging.hxx:383
void logp(const sal_Int32 _nLogLevel, const sal_Char *_pSourceClass, const sal_Char *_pSourceMethod, const OUString &_rMessage, ARGTYPE1 _argument1) const
logs a given message, replacing a placeholder in the message with an argument
Definition: logging.hxx:295
OUString convertLogArgToString(const Date &_rDate)