Coverage Report

Created: 2026-09-21 07:05

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/logging-log4cxx/src/main/include/log4cxx/helpers/outputstream.h
Line
Count
Source
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_HELPERS_OUTPUTSTREAM_H
19
#define _LOG4CXX_HELPERS_OUTPUTSTREAM_H
20
21
#include <log4cxx/helpers/object.h>
22
23
namespace LOG4CXX_NS
24
{
25
26
namespace helpers
27
{
28
class ByteBuffer;
29
30
/**
31
*   Abstract class for writing to character streams.
32
*/
33
class LOG4CXX_EXPORT OutputStream : public Object
34
{
35
  public:
36
    DECLARE_ABSTRACT_LOG4CXX_OBJECT(OutputStream)
37
0
    BEGIN_LOG4CXX_CAST_MAP()
38
0
    LOG4CXX_CAST_ENTRY(OutputStream)
39
0
    END_LOG4CXX_CAST_MAP()
40
41
  protected:
42
    OutputStream();
43
    virtual ~OutputStream();
44
45
  public:
46
    virtual void close() = 0;
47
    virtual void flush() = 0;
48
    virtual void write(ByteBuffer& buf) = 0;
49
    /**
50
    @deprecated The \c pool parameter is not used and will be removed in a future version.
51
    */
52
    [[deprecated("Use close() without a Pool parameter instead")]]
53
    void close(Pool& p);
54
    /**
55
    @deprecated The \c pool parameter is not used and will be removed in a future version.
56
    */
57
    [[deprecated("Use flush() without a Pool parameter instead")]]
58
    void flush(Pool& p);
59
    /**
60
    @deprecated The \c pool parameter is not used and will be removed in a future version.
61
    */
62
    [[deprecated("Use write() without a Pool parameter instead")]]
63
    void write(ByteBuffer& buf, Pool& p);
64
65
  private:
66
    OutputStream(const OutputStream&);
67
    OutputStream& operator=(const OutputStream&);
68
};
69
70
LOG4CXX_PTR_DEF(OutputStream);
71
} // namespace helpers
72
73
}  //namespace log4cxx
74
75
#endif //_LOG4CXX_HELPERS_OUTPUTSTREAM_H