tabbing
[iotcloud.git] / version2 / src / java / iotcloud / Pair.java
1 package iotcloud;
2
3 class Pair<A, B> {
4         private A a;
5         private B b;
6         int hashCode = -1;
7
8         Pair(A a, B b) {
9                 this.a = a;
10                 this.b = b;
11
12                 hashCode = 23;
13                 hashCode = hashCode * 31 + a.hashCode();
14                 hashCode = hashCode * 31 + b.hashCode();
15         }
16
17         A getFirst() {
18                 return a;
19         }
20
21         B getSecond() {
22                 return b;
23         }
24
25
26         public int hashCode() {
27                 return hashCode;
28         }
29
30         public boolean equals(Object o) {
31                 if (o instanceof Pair) {
32                         Pair i = (Pair)o;
33                         if (a.equals(i.getFirst()) && b.equals(i.getSecond())) {
34                                 return true;
35                         }
36                 }
37                 return false;
38         }
39
40         public String toString() {
41                 return "<" + a + "," + b + ">";
42         }
43 }