KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > jonas > jtests > beans > relation > dass > BEC2


1 /*
2  * JOnAS: Java(TM) Open Application Server
3  * Copyright (C) 1999 Bull S.A.
4  * Contact: jonas-team@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: BEC2.java,v 1.2 2004/06/25 09:18:28 durieuxp Exp $
23  * --------------------------------------------------------------------------
24  */

25
26 package org.objectweb.jonas.jtests.beans.relation.dass;
27
28 import org.objectweb.util.monolog.api.Logger;
29 import org.objectweb.util.monolog.api.BasicLevel;
30 import org.objectweb.jonas.common.Log;
31
32 import javax.ejb.EntityContext JavaDoc;
33 import javax.ejb.CreateException JavaDoc;
34 import javax.ejb.DuplicateKeyException JavaDoc;
35 import javax.ejb.RemoveException JavaDoc;
36
37 /**
38  * @author Ph Durieux
39  */

40 public abstract class BEC2 implements javax.ejb.EntityBean JavaDoc {
41
42     // ------------------------------------------------------------------
43
// Get and Set accessor methods of the bean's abstract schema
44
// ------------------------------------------------------------------
45
public abstract String JavaDoc getId();
46
47     public abstract void setId(String JavaDoc id);
48
49     // ------------------------------------------------------------------
50
// EntityBean implementation
51
// ------------------------------------------------------------------
52

53     static protected Logger logger = null;
54     EntityContext JavaDoc ejbContext;
55
56     /**
57      * The Entity bean can define 0 or more ejbCreate methods.
58      *
59      * @throws CreateException Failure to create an entity EJB object.
60      * @throws DuplicateKeyException An object with the same key already exists.
61      */

62     public String JavaDoc ejbCreate(String JavaDoc id) throws CreateException JavaDoc, DuplicateKeyException JavaDoc {
63         logger.log(BasicLevel.DEBUG, "");
64
65         // Init here the bean fields
66
setId(id);
67
68         // In CMP, should return null.
69
return null;
70     }
71
72     /**
73      * There must be an ejbPostCreate par ejbCreate method
74      *
75      * @throws CreateException Failure to create an entity EJB object.
76      */

77     public void ejbPostCreate(String JavaDoc id) throws CreateException JavaDoc {
78         logger.log(BasicLevel.DEBUG, "id=" + id);
79     }
80
81     /**
82      * Set the associated entity context. The container invokes this method
83      * on an instance after the instance has been created.
84      * This method is called in an unspecified transaction context.
85      *
86      * @param ctx - An EntityContext interface for the instance. The instance
87      * should store the reference to the context in an instance variable.
88      * @throws EJBException Thrown by the method to indicate a failure caused by a
89      * system-level error.
90      */

91     public void setEntityContext(EntityContext JavaDoc ctx) {
92         if (logger == null)
93             logger = Log.getLogger(Log.JONAS_TESTS_PREFIX);
94         logger.log(BasicLevel.DEBUG, "");
95         ejbContext = ctx;
96     }
97
98     /**
99      * Unset the associated entity context. The container calls this method
100      * before removing the instance.
101      * This is the last method that the container invokes on the instance.
102      * The Java garbage collector will eventually invoke the finalize() method
103      * on the instance.
104      * This method is called in an unspecified transaction context.
105      *
106      * @throws EJBException Thrown by the method to indicate a failure caused by a
107      * system-level error.
108      */

109     public void unsetEntityContext() {
110         logger.log(BasicLevel.DEBUG, "");
111         ejbContext = null;
112     }
113
114
115     /**
116      * A container invokes this method before it removes the EJB object
117      * that is currently associated with the instance. This method is
118      * invoked when a client invokes a remove operation on the enterprise Bean's
119      * home interface or the EJB object's remote interface. This method
120      * transitions the instance from the ready state to the pool of available
121      * instances.
122      *
123      * This method is called in the transaction context of the remove operation.
124      * @throws RemoveException The enterprise Bean does not allow destruction of the object.
125      * @throws EJBException - Thrown by the method to indicate a failure caused by a system-level
126      * error.
127      */

128     public void ejbRemove() throws RemoveException JavaDoc {
129         logger.log(BasicLevel.DEBUG, "");
130     }
131
132     /**
133      * A container invokes this method to instruct the instance to synchronize
134      * its state by loading it state from the underlying database.
135      * This method always executes in the proper transaction context.
136      *
137      * @throws EJBException Thrown by the method to indicate a failure caused by
138      * a system-level error.
139      */

140     public void ejbLoad() {
141         logger.log(BasicLevel.DEBUG, "");
142     }
143
144     /**
145      * A container invokes this method to instruct the instance to synchronize
146      * its state by storing it to the underlying database.
147      * This method always executes in the proper transaction context.
148      *
149      * @throws EJBException Thrown by the method to indicate a failure caused by
150      * a system-level error.
151      */

152     public void ejbStore() {
153         logger.log(BasicLevel.DEBUG, "");
154     }
155
156
157     /**
158      * A container invokes this method on an instance before the instance
159      * becomes disassociated with a specific EJB object.
160      */

161     public void ejbPassivate() {
162         logger.log(BasicLevel.DEBUG, "");
163     }
164
165     /**
166      * A container invokes this method when the instance is taken out of
167      * the pool of available instances to become associated with a specific
168      * EJB object.
169      */

170     public void ejbActivate() {
171         logger.log(BasicLevel.DEBUG, "");
172     }
173
174 }
175
176
Popular Tags