01: /**
02: * Licensed to the Apache Software Foundation (ASF) under one or more
03: * contributor license agreements. See the NOTICE file distributed with
04: * this work for additional information regarding copyright ownership.
05: * The ASF licenses this file to You under the Apache License, Version 2.0
06: * (the "License"); you may not use this file except in compliance with
07: * the License. You may obtain a copy of the License at
08: *
09: * http://www.apache.org/licenses/LICENSE-2.0
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: * See the License for the specific language governing permissions and
15: * limitations under the License.
16: */package org.apache.geronimo.j2ee.deployment;
17:
18: import java.io.Serializable;
19:
20: /**
21: * @version $Revision: 476049 $ $Date: 2006-11-16 20:35:17 -0800 (Thu, 16 Nov 2006) $
22: */
23: public final class EJBRefInfo implements Serializable {
24: private final boolean isLocal;
25: private final boolean isSession;
26: private final String homeIntf;
27: private final String beanIntf;
28:
29: public EJBRefInfo(boolean local, boolean session, String homeIntf,
30: String beanIntf) {
31: assert homeIntf != null : "homeIntf is null";
32: assert beanIntf != null : "beanIntf is null";
33: isLocal = local;
34: isSession = session;
35: this .homeIntf = homeIntf;
36: this .beanIntf = beanIntf;
37: }
38:
39: public boolean isLocal() {
40: return isLocal;
41: }
42:
43: public boolean isSession() {
44: return isSession;
45: }
46:
47: public String getHomeIntf() {
48: return homeIntf;
49: }
50:
51: public String getBeanIntf() {
52: return beanIntf;
53: }
54:
55: public boolean equals(Object object) {
56: if (!(object instanceof EJBRefInfo)) {
57: return false;
58: }
59:
60: // match isSession
61: EJBRefInfo ejbRefInfo = (EJBRefInfo) object;
62: return ejbRefInfo.isLocal == isLocal
63: && ejbRefInfo.isSession == isSession
64: && ejbRefInfo.homeIntf.equals(homeIntf)
65: && ejbRefInfo.beanIntf.equals(beanIntf);
66: }
67:
68: public int hashCode() {
69: int result = 17;
70: result = 37 * result + (isLocal ? 1 : 0);
71: result = 37 * result + (isSession ? 1 : 0);
72: result = 37 * result + homeIntf.hashCode();
73: result = 37 * result + beanIntf.hashCode();
74: return result;
75: }
76: }
|