KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > openejb > core > EnvProps


1 /**
2  * Redistribution and use of this software and associated documentation
3  * ("Software"), with or without modification, are permitted provided
4  * that the following conditions are met:
5  *
6  * 1. Redistributions of source code must retain copyright
7  * statements and notices. Redistributions must also contain a
8  * copy of this document.
9  *
10  * 2. Redistributions in binary form must reproduce the
11  * above copyright notice, this list of conditions and the
12  * following disclaimer in the documentation and/or other
13  * materials provided with the distribution.
14  *
15  * 3. The name "Exolab" must not be used to endorse or promote
16  * products derived from this Software without prior written
17  * permission of Exoffice Technologies. For written permission,
18  * please contact info@exolab.org.
19  *
20  * 4. Products derived from this Software may not be called "Exolab"
21  * nor may "Exolab" appear in their names without prior written
22  * permission of Exoffice Technologies. Exolab is a registered
23  * trademark of Exoffice Technologies.
24  *
25  * 5. Due credit should be given to the Exolab Project
26  * (http://www.exolab.org/).
27  *
28  * THIS SOFTWARE IS PROVIDED BY EXOFFICE TECHNOLOGIES AND CONTRIBUTORS
29  * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
30  * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
31  * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
32  * EXOFFICE TECHNOLOGIES OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
33  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
34  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
35  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
36  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
37  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
38  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
39  * OF THE POSSIBILITY OF SUCH DAMAGE.
40  *
41  * Copyright 1999 (C) Exoffice Technologies Inc. All Rights Reserved.
42  *
43  * $Id: EnvProps.java 1921 2005-06-19 22:40:34Z jlaskowski $
44  */

45 package org.openejb.core;
46
47
48 /**
49  * Class to encapsulate the configuration options available in the core implementation
50  * of the container system
51  *
52  * @author <a HREF="mailto:Richard@Monson-Haefel.com">Richard Monson-Haefel</a>
53  * @author <a HREF="mailto:dan@danmassey.com">Dan Massey</a>
54  * @author <a HREF="mailto:david.blevins@visi.com">David Blevins</a>
55  */

56 public class EnvProps {
57     
58     /**
59      * Property name that specifies the class name of the InstanceManager a Container should use.
60      *
61      * <p>
62      * NAME:<br>&nbsp;&nbsp;
63      * <code>org/openejb/core/InstanceManager/CLASS_NAME</code>
64      * </p>
65      *
66      * <p>
67      * EXAMPLE VALUE:<br>&nbsp;&nbsp;
68      * <code>org.openejb.core.entity.EntityInstanceManager</code>
69      * </p>
70      *
71      * <p>
72      * USED BY:
73      * <UL>
74      * <LI>{@link org.openejb.core.entity.EntityContainer}
75      * <LI>{@link org.openejb.core.stateful.StatefulContainer}
76      * <LI>{@link org.openejb.core.stateless.StatelessContainer}
77      * </UL>
78      * </p>
79      */

80     public final static String JavaDoc IM_CLASS_NAME = "InstanceManager";
81
82     /**
83      * Property name that specifies the time to wait between invocations.
84      *
85      * <p>
86      * For the StatefulInstanceManager, this value is measured in minutes.
87      * A value of 5 would result in a time-out of 5 minutes between invocations.</p>
88      *
89      * <p>
90      * For the StatelessInstanceManager, this value is measured in milliseconds.
91      * A value of 5 would result in a time-out of 5 milliseconds between invocations.</p>
92      *
93      * <p>
94      * NAME:<br>&nbsp;&nbsp;
95      * <code>TimeOut</code>
96      * </p>
97      *
98      * <p>
99      * EXAMPLE VALUE:<br>&nbsp;&nbsp;
100      * <code>5</code>
101      * </p>
102      *
103      * <p>
104      * USED BY:
105      * <UL>
106      * <LI>{@link org.openejb.core.stateful.StatefulInstanceManager}
107      * <LI>{@link org.openejb.core.stateless.StatelessInstanceManager}
108      * </UL>
109      * </p>
110      */

111     public final static String JavaDoc IM_TIME_OUT = "TimeOut";
112
113     /**
114      * Property name that specifies the path prefix for directories created by bean passivation
115      *
116      * <p>
117      * NAME:<br>&nbsp;&nbsp;
118      * <code>org/openejb/core/InstanceManager/PASSIVATOR_PATH_PREFIX</code>
119      * </p>
120      *
121      * <p>
122      * EXAMPLE VALUE:<br>&nbsp;&nbsp;
123      * <code>/tmp/openejb</code>
124      * </p>
125      *
126      * <p>
127      * USED BY:
128      * <UL>
129      * <LI>{@link org.openejb.core.stateful.StatefulInstanceManager}
130      * </UL>
131      * </p>
132      */

133     public final static String JavaDoc IM_PASSIVATOR_PATH_PREFIX = "org/openejb/core/InstanceManager/PASSIVATOR_PATH_PREFIX";
134
135     /**
136      * Property name that specifies the size of the bean pools
137      *
138      * <p>
139      * NAME:<br>&nbsp;&nbsp;
140      * <code>PoolSize</code>
141      * </p>
142      *
143      * <p>
144      * EXAMPLE VALUE:<br>&nbsp;&nbsp;
145      * <code>100</code>
146      * </p>
147      *
148      * <p>
149      * USED BY:
150      * <UL>
151      * <LI>{@link org.openejb.core.entity.EntityInstanceManager}
152      * <LI>{@link org.openejb.core.stateful.StatefulInstanceManager}
153      * <LI>{@link org.openejb.core.stateless.StatelessInstanceManager}
154      * </UL>
155      * </p>
156      */

157     public final static String JavaDoc IM_POOL_SIZE = "PoolSize";
158
159     /**
160      * Property name that specifies the number of instances to passivate at one time when doing bulk passivation.
161      *
162      * <p>
163      * NAME:<br>&nbsp;&nbsp;
164      * <code>BulkPassivate</code>
165      * </p>
166      *
167      * <p>
168      * EXAMPLE VALUE:<br>&nbsp;&nbsp;
169      * <code>25</code>
170      * </p>
171      *
172      * <p>
173      * USED BY:
174      * <UL>
175      * <LI>{@link org.openejb.core.stateful.StatefulContainer}
176      * </UL>
177      * </p>
178      */

179     public final static String JavaDoc IM_PASSIVATE_SIZE = "BulkPassivate";
180
181     /**
182      * Property name that specifies the class name of the PassivationStrategy an InstanceManager
183      * should use to passivate bean instances.
184      *
185      * <p>
186      * NAME:<br>&nbsp;&nbsp;
187      * <code>org/openejb/core/InstanceManager/PASSIVATOR</code>
188      * </p>
189      *
190      * <p>
191      * EXAMPLE VALUE:<br>&nbsp;&nbsp;
192      * <code>org.openejb.core.stateful.RAFPassivater</code>
193      * </p>
194      *
195      * <p>
196      * USED BY:
197      * <UL>
198      * <LI>{@link org.openejb.core.stateful.StatefulContainer}
199      * </UL>
200      * </p>
201      *
202      * @see org.openejb.core.stateful.PassivationStrategy
203      * @see org.openejb.core.stateful.RAFPassivater
204      * @see org.openejb.core.stateful.SimplePassivater
205      */

206     public final static String JavaDoc IM_PASSIVATOR = "Passivator";
207
208
209     /**
210      * Not yet used
211      *
212      * <p>
213      * NAME:<br>&nbsp;&nbsp;
214      * <code>org/openejb/core/InstanceManager/CONCURRENT_ATTEMPTS</code>
215      * </p>
216      *
217      * <p>
218      * EXAMPLE VALUE:<br>&nbsp;&nbsp;
219      * <code></code>
220      * </p>
221      *
222      * <p>
223      * USED BY:<br>
224      * Not yet used
225      * </p>
226      */

227     public final static String JavaDoc IM_CONCURRENT_ATTEMPTS = "org/openejb/core/InstanceManager/CONCURRENT_ATTEMPTS";
228
229     /**
230      * Property name that specifies the whether or not to use a strict pooling algorithm.
231      *
232      * <p>
233      * NAME:<br>&nbsp;&nbsp;
234      * <code>StrictPooling</code>
235      * </p>
236      *
237      * <p>
238      * EXAMPLE VALUE:<br>&nbsp;&nbsp;
239      * <code>true</code>
240      * </p>
241      *
242      * <p>
243      * USED BY:
244      * <UL>
245      * <LI>{@link org.openejb.core.stateless.StatelessContainer}
246      * </UL>
247      * </p>
248      */

249     public final static String JavaDoc IM_STRICT_POOLING = "StrictPooling";
250
251     /**
252     * By default the ThreadContext class uses its own class definition for instances but this can
253     * overriden by binding this variable to fully qualified class name of a type that subclasses ThreadContext.
254     * The binding should be added to the System Properties.
255     */

256     public final static String JavaDoc THREAD_CONTEXT_IMPL = "org/openejb/core/ThreadContext/IMPL_CLASS";
257
258     /*
259     * The EJB 1.1 specification requires that arguments and return values between beans adhere to the
260     * Java RMI copy semantics which requires that the all arguments be passed by value (copied) and
261     * never passed as references. However, it is possible for the system administrator to turn off the
262     * copy operation so that arguments and return values are passed by reference as a performance optimization.
263     * Simply setting the org.openejb.core.EnvProps.INTRA_VM_COPY property to FALSE will cause
264     * IntraVM to bypass the copy operations; arguments and return values will be passed by reference not value.
265     * This property is, by default, alwasy TRUE but it can be changed to FALSE by setting it as a System property
266     * or a property of the Property argument when invoking OpenEJB.init(props).
267     */

268     public final static String JavaDoc INTRA_VM_COPY = "org/openejb/core/ivm/BaseEjbProxyHandler/INTRA_VM_COPY";
269
270     /** The JdbcDriver string for a connector */
271     public static final String JavaDoc JDBC_DRIVER = "JdbcDriver";
272
273     /** The JdbcUrl string for a connector */
274     public static final String JavaDoc JDBC_URL = "JdbcUrl";
275
276     /** The UserName string for a connector */
277     public static final String JavaDoc USER_NAME = "UserName";
278
279     /** The Password string for a connector */
280     public static final String JavaDoc PASSWORD = "Password";
281
282     /** The Global_TX_Database for CMP beans */
283     public static final String JavaDoc GLOBAL_TX_DATABASE = "Global_TX_Database";
284
285     /** The Local_TX_Database for CMP beans */
286     public static final String JavaDoc LOCAL_TX_DATABASE = "Local_TX_Database";
287 }
Popular Tags