View Javadoc
1   package au.gov.amsa.navigation;
2   
3   public class Mmsi implements Identifier {
4   
5       private final int mmsi;
6       private final int hashCode;
7   
8       public Mmsi(int mmsi) {
9           this.mmsi = mmsi;
10          this.hashCode = calculateHashCode();
11      }
12  
13      public int value() {
14          return mmsi;
15      }
16  
17      @Override
18      public long uniqueId() {
19          return mmsi;
20      }
21  
22      private int calculateHashCode() {
23          final int prime = 31;
24          int result = 1;
25          result = prime * result + (mmsi ^ (mmsi >>> 32));
26          return result;
27      }
28  
29      @Override
30      public int hashCode() {
31          return hashCode;
32      }
33  
34      @Override
35      public boolean equals(Object obj) {
36          if (this == obj)
37              return true;
38          if (obj == null)
39              return false;
40          if (getClass() != obj.getClass())
41              return false;
42          Mmsi other = (Mmsi) obj;
43          if (mmsi != other.mmsi)
44              return false;
45          return true;
46      }
47  
48      @Override
49      public String toString() {
50          return "Mmsi [mmsi=" + mmsi + "]";
51      }
52  
53  }