1
2
3
4
5
6
7
8
9
10
11
12
13
14 package ch.qos.logback.core.encoder;
15
16 import java.nio.charset.Charset;
17
18 import ch.qos.logback.core.CoreConstants;
19
20 public class DummyEncoder<E> extends EncoderBase<E> {
21
22 public static final String DUMMY = "dummy" + CoreConstants.LINE_SEPARATOR;
23 String val = DUMMY;
24 String fileHeader;
25 String fileFooter;
26 Charset charset;
27
28 public Charset getCharset() {
29 return charset;
30 }
31
32 public void setCharset(Charset charset) {
33 this.charset = charset;
34 }
35
36 public DummyEncoder() {
37 }
38
39 public DummyEncoder(String val) {
40 this.val = val;
41 }
42
43 public byte[] encode(E event) {
44 return encodeString(val);
45 }
46
47 byte[] encodeString(String s) {
48 if (charset == null) {
49 return s.getBytes();
50 } else {
51 return s.getBytes(charset);
52 }
53 }
54
55 private void appendIfNotNull(StringBuilder sb, String s) {
56 if (s != null) {
57 sb.append(s);
58 }
59 }
60
61 byte[] header() {
62 StringBuilder sb = new StringBuilder();
63 appendIfNotNull(sb, fileHeader);
64 if (sb.length() > 0) {
65
66
67
68 sb.append(CoreConstants.LINE_SEPARATOR);
69 }
70 return encodeString(sb.toString());
71 }
72
73 public byte[] headerBytes() {
74 return header();
75 }
76
77 public byte[] footerBytes() {
78 if (fileFooter == null) {
79 return null;
80 }
81 return encodeString(fileFooter);
82 }
83
84 public String getFileHeader() {
85 return fileHeader;
86 }
87
88 public void setFileHeader(String fileHeader) {
89 this.fileHeader = fileHeader;
90 }
91
92 public String getFileFooter() {
93 return fileFooter;
94 }
95
96 public void setFileFooter(String fileFooter) {
97 this.fileFooter = fileFooter;
98 }
99
100 }