01: /*
02: * JBoss, Home of Professional Open Source.
03: * Copyright 2006, Red Hat Middleware LLC, and individual contributors
04: * as indicated by the @author tags. See the copyright.txt file in the
05: * distribution for a full listing of individual contributors.
06: *
07: * This is free software; you can redistribute it and/or modify it
08: * under the terms of the GNU Lesser General Public License as
09: * published by the Free Software Foundation; either version 2.1 of
10: * the License, or (at your option) any later version.
11: *
12: * This software is distributed in the hope that it will be useful,
13: * but WITHOUT ANY WARRANTY; without even the implied warranty of
14: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15: * Lesser General Public License for more details.
16: *
17: * You should have received a copy of the GNU Lesser General Public
18: * License along with this software; if not, write to the Free
19: * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
20: * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
21: */
22: package org.jboss.test.web.interfaces;
23:
24: // EntityPK.java
25:
26: import java.net.URL;
27: import java.security.ProtectionDomain;
28:
29: public class EntityPK implements java.io.Serializable {
30: static final long serialVersionUID = 8480913527821430081L;
31: static org.apache.log4j.Category log = org.apache.log4j.Category
32: .getInstance(EntityPK.class);
33:
34: public int the_key;
35:
36: public EntityPK() {
37: }
38:
39: public EntityPK(int the_key) {
40: this .the_key = the_key;
41: }
42:
43: public boolean equals(Object obj) {
44: boolean equals = false;
45: try {
46: EntityPK key = (EntityPK) obj;
47: equals = the_key == key.the_key;
48: } catch (ClassCastException e) {
49: log.debug("failed", e);
50: // Find the codebase of obj
51: ProtectionDomain pd0 = getClass().getProtectionDomain();
52: URL loc0 = pd0.getCodeSource().getLocation();
53: ProtectionDomain pd1 = obj.getClass().getProtectionDomain();
54: URL loc1 = pd1.getCodeSource().getLocation();
55: log.debug("PK0 location=" + loc0);
56: log.debug("PK0 loader=" + getClass().getClassLoader());
57: log.debug("PK1 location=" + loc1);
58: log.debug("PK1 loader=" + obj.getClass().getClassLoader());
59: }
60: return equals;
61: }
62:
63: public int hashCode() {
64: return the_key;
65: }
66:
67: public String toString() {
68: return "EntityPK[" + the_key + "]";
69: }
70:
71: }
|