1 package au.gov.amsa.ais;
2
3 public class Timestamped<T extends AisMessage> {
4
5 private final T message;
6 private final long time;
7
8 public Timestamped(T message, long time) {
9 this.message = message;
10 this.time = time;
11 }
12
13 public static <T extends AisMessage> Timestamped<T> create(T message , long time) {
14 return new Timestamped<T>(message, time);
15 }
16
17 public T message() {
18 return message;
19 }
20
21 public long time() {
22 return time;
23 }
24
25 @Override
26 public String toString() {
27 StringBuilder builder = new StringBuilder();
28 builder.append("Timestamped [time=");
29 builder.append(time);
30 builder.append(", message=");
31 builder.append(message);
32 builder.append("]");
33 return builder.toString();
34 }
35
36 }