1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.logging.log4j.io;
19
20 import java.io.FilterReader;
21 import java.io.IOException;
22 import java.io.Reader;
23 import java.nio.CharBuffer;
24
25 import org.apache.logging.log4j.Level;
26 import org.apache.logging.log4j.Marker;
27 import org.apache.logging.log4j.io.internal.InternalReader;
28 import org.apache.logging.log4j.spi.ExtendedLogger;
29
30
31
32
33
34
35 public class LoggerReader extends FilterReader {
36 private static final String FQCN = LoggerReader.class.getName();
37
38 private final InternalReader reader;
39
40 protected LoggerReader(final Reader reader, final ExtendedLogger logger, final String fqcn, final Level level,
41 final Marker marker) {
42 super(reader);
43 this.reader = new InternalReader(reader, logger, fqcn == null ? FQCN : fqcn, level, marker);
44 }
45
46 @Override
47 public void close() throws IOException {
48 reader.close();
49 }
50
51 @Override
52 public int read() throws IOException {
53 return reader.read();
54 }
55
56 @Override
57 public int read(final char[] cbuf) throws IOException {
58 return reader.read(cbuf);
59 }
60
61 @Override
62 public int read(final char[] cbuf, final int off, final int len) throws IOException {
63 return reader.read(cbuf, off, len);
64 }
65
66 @Override
67 public int read(final CharBuffer target) throws IOException {
68 return reader.read(target);
69 }
70
71 @Override
72 public String toString() {
73 return LoggerReader.class.getSimpleName() + this.reader.toString();
74 }
75 }