• EventLog 的 POJO

    EventLog 的 POJO

    在消息应用里面,数据一般以 POJO 形式呈现。这可能保存配置或处理信息除了实际的消息数据。在这个应用程序里,消息的单元是一个“事件”。由于数据来自一个日志文件,我们将称之为 LogEvent。

    清单13.1显示了这个简单的POJO的细节。

    Listing 13.1 LogEvent message

    1. public final class LogEvent {
    2. public static final byte SEPARATOR = (byte) ':';
    3. private final InetSocketAddress source;
    4. private final String logfile;
    5. private final String msg;
    6. private final long received;
    7. public LogEvent(String logfile, String msg) { //1
    8. this(null, -1, logfile, msg);
    9. }
    10. public LogEvent(InetSocketAddress source, long received, String logfile, String msg) { //2
    11. this.source = source;
    12. this.logfile = logfile;
    13. this.msg = msg;
    14. this.received = received;
    15. }
    16. public InetSocketAddress getSource() { //3
    17. return source;
    18. }
    19. public String getLogfile() { //4
    20. return logfile;
    21. }
    22. public String getMsg() { //5
    23. return msg;
    24. }
    25. public long getReceivedTimestamp() { //6
    26. return received;
    27. }
    28. }
    1. 构造器用于出站消息
    2. 构造器用于入站消息
    3. 返回发送 LogEvent 的 InetSocketAddress 的资源
    4. 返回用于发送 LogEvent 的日志文件的名称
    5. 返回消息的内容
    6. 返回 LogEvent 接收到的时间