1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.logging.log4j.core.appender;
18
19
20
21
22 public class TLSSyslogFrame {
23 public static final char SPACE = ' ';
24
25 private String message;
26 private int messageLengthInBytes;
27
28 public TLSSyslogFrame(String message) {
29 setMessage(message);
30 }
31
32 public String getMessage() {
33 return this.message;
34 }
35
36 public void setMessage(String message) {
37 this.message = message;
38 setLengthInBytes();
39 }
40
41 private void setLengthInBytes() {
42 messageLengthInBytes = message.length();
43 }
44
45 public byte[] getBytes() {
46 String frame = toString();
47 return frame.getBytes();
48 }
49
50 @Override
51 public String toString() {
52 String length = Integer.toString(messageLengthInBytes);
53 return length + SPACE + message;
54 }
55
56 @Override
57 public boolean equals(Object frame) {
58 return super.equals(frame);
59 }
60
61 public boolean equals(TLSSyslogFrame frame) {
62 return isLengthEquals(frame) && isMessageEquals(frame);
63 }
64
65 private boolean isLengthEquals(TLSSyslogFrame frame) {
66 return this.messageLengthInBytes == frame.messageLengthInBytes;
67 }
68
69 private boolean isMessageEquals(TLSSyslogFrame frame) {
70 return this.message.equals(frame.message);
71 }
72 }