]> review.fuel-infra Code Review - packages/trusty/mysql-wsrep-5.6.git/blob
250fac0c23b10f27737843694356aa93400a5ea4
[packages/trusty/mysql-wsrep-5.6.git] /
1 /*
2    Copyright 2010 Sun Microsystems, Inc.
3    All rights reserved. Use is subject to license terms.
4
5    This program is free software; you can redistribute it and/or modify
6    it under the terms of the GNU General Public License as published by
7    the Free Software Foundation; version 2 of the License.
8
9    This program is distributed in the hope that it will be useful,
10    but WITHOUT ANY WARRANTY; without even the implied warranty of
11    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12    GNU General Public License for more details.
13
14    You should have received a copy of the GNU General Public License
15    along with this program; if not, write to the Free Software
16    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
17 */
18
19 package com.mysql.clusterj.jpatest.model;
20
21 import java.io.Serializable;
22
23 /** This class implements the object id for classes that have
24  * three primary keys: long, long, String. The key fields in the persistent
25  * class must be named the same as the oid class:
26  * longpk1, longpk2, and stringpk.
27  */
28 public class LongLongStringOid extends LongLongStringConstants implements Serializable {
29
30     public long longpk1;
31
32     public long longpk2;
33
34     public String stringpk;
35
36     /** Needed for persistence oid contract. */
37     public LongLongStringOid() {
38
39     }
40
41     /** The normal constructor. */
42     public LongLongStringOid(int i) {
43         longpk1 = getPK1(i);
44         longpk2 = getPK2(i);
45         stringpk = getPK3(i);
46     }
47
48     @Override
49     public boolean equals(Object obj) {
50         if (obj == null || !this.getClass().equals(obj.getClass()))
51             return false;
52         LongLongStringOid o = (LongLongStringOid)obj;
53         return (this.longpk1 == o.longpk1
54                 && this.longpk2 == o.longpk2
55                 && this.stringpk.equals(o.stringpk));
56     }
57
58     @Override
59     public int hashCode() {
60         return stringpk.hashCode() + (int)longpk1 + (int)longpk2;
61     }
62
63     @Override
64     public String toString() {
65     StringBuffer result = new StringBuffer();
66     result.append("LongLongStringOid[");
67     result.append(longpk1);
68     result.append(",");
69     result.append(longpk2);
70     result.append(",\"");
71     result.append(stringpk);
72     result.append("\"]");
73     return result.toString();
74     }
75
76 }
77