1 /** 2 * EasyBeans 3 * Copyright (C) 2006 Bull S.A.S. 4 * Contact: easybeans@objectweb.org 5 * 6 * This library is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Lesser General Public 8 * License as published by the Free Software Foundation; either 9 * version 2.1 of the License, or any later version. 10 * 11 * This library is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public 17 * License along with this library; if not, write to the Free Software 18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 19 * USA 20 * 21 * -------------------------------------------------------------------------- 22 * $Id: EJBLocalObject.java 1100 2006-08-16 13:05:31Z benoitf $ 23 * -------------------------------------------------------------------------- 24 */ 25 26 package javax.ejb; 27 28 /** 29 * Used by EJB 2.1 for their business local interface. 30 * @see <a HREF="http://www.jcp.org/en/jsr/detail?id=220">EJB 3.0 specification</a> 31 * @author Florent Benoit 32 */ 33 public interface EJBLocalObject { 34 35 /** 36 * Obtain the enterprise Bean's local home interface. The local home 37 * interface defines the enterprise Bean's create, finder, remove, and home 38 * business methods that are available to local clients. 39 * @return A reference to the enterprise Bean's local home interface. 40 * @throws EJBException Thrown when the method failed due to a system-level 41 * failure. 42 */ 43 EJBLocalHome getEJBLocalHome() throws EJBException; 44 45 /** 46 * Obtain the primary key of the EJB local object.<br> 47 * This method can be called on an entity bean. An attempt to invoke this 48 * method on a session Bean will result in an EJBException. 49 * @return The EJB local object's primary key. 50 * @throws EJBException Thrown when the method failed due to a system-level 51 * failure or when invoked on a session bean. 52 */ 53 Object getPrimaryKey() throws EJBException; 54 55 /** 56 * Remove the EJB local object. 57 * @throws RemoveException The enterprise Bean or the container does not 58 * allow destruction of the object. 59 * @throws EJBException Thrown when the method failed due to a system-level 60 * failure. 61 */ 62 void remove() throws RemoveException, EJBException; 63 64 /** 65 * Test if a given EJB local object is identical to the invoked EJB local 66 * object. 67 * @param obj An object to test for identity with the invoked object. 68 * @return True if the given EJB local object is identical to the invoked 69 * object, false otherwise. 70 * @throws EJBException Thrown when the method failed due to a system-level 71 * failure. 72 */ 73 boolean isIdentical(EJBLocalObject obj) throws EJBException; 74 75 } 76