Coverage Report

Created: 2025-07-01 06:08

/src/logging-log4cxx/src/main/cpp/fulllocationpatternconverter.cpp
Line
Count
Source (jump to first uncovered line)
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
#include <log4cxx/logstring.h>
19
#include <log4cxx/pattern/fulllocationpatternconverter.h>
20
#include <log4cxx/spi/loggingevent.h>
21
#include <log4cxx/spi/location/locationinfo.h>
22
#include <log4cxx/helpers/stringhelper.h>
23
24
using namespace LOG4CXX_NS;
25
using namespace LOG4CXX_NS::pattern;
26
using namespace LOG4CXX_NS::spi;
27
using namespace LOG4CXX_NS::helpers;
28
29
IMPLEMENT_LOG4CXX_OBJECT(FullLocationPatternConverter)
30
31
FullLocationPatternConverter::FullLocationPatternConverter() :
32
0
  LoggingEventPatternConverter(LOG4CXX_STR("Full Location"),
33
0
    LOG4CXX_STR("fullLocation"))
34
0
{
35
0
}
Unexecuted instantiation: log4cxx::pattern::FullLocationPatternConverter::FullLocationPatternConverter()
Unexecuted instantiation: log4cxx::pattern::FullLocationPatternConverter::FullLocationPatternConverter()
36
37
PatternConverterPtr FullLocationPatternConverter::newInstance(
38
  const std::vector<LogString>& /* options */)
39
0
{
40
0
  static WideLife<PatternConverterPtr> instance = std::make_shared<FullLocationPatternConverter>();
41
0
  return instance;
42
0
}
43
44
void FullLocationPatternConverter::format(
45
  const LoggingEventPtr& event,
46
  LogString& toAppendTo,
47
  Pool& p) const
48
0
{
49
0
  append(toAppendTo, event->getLocationInformation().getFileName());
50
0
  toAppendTo.append(1, (logchar) 0x28 /* '(' */);
51
0
  StringHelper::toString(
52
0
    event->getLocationInformation().getLineNumber(),
53
0
    p, toAppendTo);
54
0
  toAppendTo.append(1, (logchar) 0x29 /* ')' */);
55
0
}