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.FilterInputStream;
21 import java.io.IOException;
22 import java.io.InputStream;
23 import java.nio.charset.Charset;
24
25 import org.apache.logging.log4j.Level;
26 import org.apache.logging.log4j.Marker;
27 import org.apache.logging.log4j.io.internal.InternalInputStream;
28 import org.apache.logging.log4j.spi.ExtendedLogger;
29
30
31
32
33
34
35 public class LoggerInputStream extends FilterInputStream {
36 private static final String FQCN = LoggerInputStream.class.getName();
37
38 private final InternalInputStream logger;
39
40 protected LoggerInputStream(final InputStream in, final Charset charset, final ExtendedLogger logger,
41 final String fqcn, final Level level, final Marker marker) {
42 super(in);
43 this.logger = new InternalInputStream(in, charset, logger, fqcn == null ? FQCN : fqcn, level, marker);
44 }
45
46 @Override
47 public void close() throws IOException {
48 this.logger.close();
49 }
50
51 @Override
52 public int read() throws IOException {
53 return logger.read();
54 }
55
56 @Override
57 public int read(final byte[] b) throws IOException {
58 return logger.read(b);
59 }
60
61 @Override
62 public int read(final byte[] b, final int off, final int len) throws IOException {
63 return logger.read(b, off, len);
64 }
65
66 @Override
67 public String toString() {
68 return LoggerInputStream.class.getSimpleName() + logger.toString();
69 }
70 }