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